@wordpress/edit-site 3.0.2 → 3.0.3

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 (252) hide show
  1. package/README.md +1 -1
  2. package/build/components/block-editor/back-button.js +60 -0
  3. package/build/components/block-editor/back-button.js.map +1 -0
  4. package/build/components/block-editor/index.js +18 -4
  5. package/build/components/block-editor/index.js.map +1 -1
  6. package/build/components/edit-template-part-menu-button/index.js +63 -0
  7. package/build/components/edit-template-part-menu-button/index.js.map +1 -0
  8. package/build/components/editor/global-styles-provider.js +1 -1
  9. package/build/components/editor/global-styles-provider.js.map +1 -1
  10. package/build/components/editor/index.js +7 -7
  11. package/build/components/editor/index.js.map +1 -1
  12. package/build/components/editor/utils.js +1 -1
  13. package/build/components/editor/utils.js.map +1 -1
  14. package/build/components/{sidebar → global-styles}/border-panel.js +0 -0
  15. package/build/components/global-styles/border-panel.js.map +1 -0
  16. package/build/components/{sidebar → global-styles}/color-palette-panel.js +4 -2
  17. package/build/components/global-styles/color-palette-panel.js.map +1 -0
  18. package/build/components/{sidebar → global-styles}/color-panel.js +7 -11
  19. package/build/components/global-styles/color-panel.js.map +1 -0
  20. package/build/components/global-styles/context-menu.js +58 -0
  21. package/build/components/global-styles/context-menu.js.map +1 -0
  22. package/build/components/{sidebar → global-styles}/dimensions-panel.js +6 -7
  23. package/build/components/global-styles/dimensions-panel.js.map +1 -0
  24. package/build/components/global-styles/header.js +54 -0
  25. package/build/components/global-styles/header.js.map +1 -0
  26. package/build/components/global-styles/index.js +89 -0
  27. package/build/components/global-styles/index.js.map +1 -0
  28. package/build/components/global-styles/navigation-button.js +43 -0
  29. package/build/components/global-styles/navigation-button.js.map +1 -0
  30. package/build/components/global-styles/palette.js +57 -0
  31. package/build/components/global-styles/palette.js.map +1 -0
  32. package/build/components/global-styles/preview.js +59 -0
  33. package/build/components/global-styles/preview.js.map +1 -0
  34. package/build/components/global-styles/screen-block-list.js +76 -0
  35. package/build/components/global-styles/screen-block-list.js.map +1 -0
  36. package/build/components/global-styles/screen-block.js +45 -0
  37. package/build/components/global-styles/screen-block.js.map +1 -0
  38. package/build/components/global-styles/screen-color-palette.js +48 -0
  39. package/build/components/global-styles/screen-color-palette.js.map +1 -0
  40. package/build/components/global-styles/screen-colors.js +51 -0
  41. package/build/components/global-styles/screen-colors.js.map +1 -0
  42. package/build/components/global-styles/screen-layout.js +60 -0
  43. package/build/components/global-styles/screen-layout.js.map +1 -0
  44. package/build/components/global-styles/screen-root.js +44 -0
  45. package/build/components/global-styles/screen-root.js.map +1 -0
  46. package/build/components/global-styles/screen-typography.js +50 -0
  47. package/build/components/global-styles/screen-typography.js.map +1 -0
  48. package/build/components/global-styles/subtitle.js +25 -0
  49. package/build/components/global-styles/subtitle.js.map +1 -0
  50. package/build/components/{sidebar → global-styles}/typography-panel.js +1 -3
  51. package/build/components/global-styles/typography-panel.js.map +1 -0
  52. package/build/components/header/plugin-more-menu-item/index.js +82 -0
  53. package/build/components/header/plugin-more-menu-item/index.js.map +1 -0
  54. package/build/components/header/plugin-sidebar-more-menu-item/index.js +75 -0
  55. package/build/components/header/plugin-sidebar-more-menu-item/index.js.map +1 -0
  56. package/build/components/header/undo-redo/redo.js +1 -1
  57. package/build/components/header/undo-redo/redo.js.map +1 -1
  58. package/build/components/header/undo-redo/undo.js +1 -1
  59. package/build/components/header/undo-redo/undo.js.map +1 -1
  60. package/build/components/keyboard-shortcuts/index.js +2 -10
  61. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  62. package/build/components/navigation-sidebar/index.js +1 -1
  63. package/build/components/navigation-sidebar/index.js.map +1 -1
  64. package/build/components/navigation-sidebar/navigation-panel/constants.js +10 -10
  65. package/build/components/navigation-sidebar/navigation-panel/constants.js.map +1 -1
  66. package/build/components/save-button/index.js +1 -1
  67. package/build/components/save-button/index.js.map +1 -1
  68. package/build/components/secondary-sidebar/inserter-sidebar.js +2 -1
  69. package/build/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  70. package/build/components/sidebar/global-styles-sidebar.js +11 -161
  71. package/build/components/sidebar/global-styles-sidebar.js.map +1 -1
  72. package/build/components/sidebar/index.js +1 -6
  73. package/build/components/sidebar/index.js.map +1 -1
  74. package/build/components/sidebar/plugin-sidebar/index.js +95 -0
  75. package/build/components/sidebar/plugin-sidebar/index.js.map +1 -0
  76. package/build/components/template-details/index.js +12 -6
  77. package/build/components/template-details/index.js.map +1 -1
  78. package/build/components/template-details/template-areas.js +73 -0
  79. package/build/components/template-details/template-areas.js.map +1 -0
  80. package/build/components/template-part-converter/index.js +1 -1
  81. package/build/components/template-part-converter/index.js.map +1 -1
  82. package/build/components/url-query-controller/index.js +1 -1
  83. package/build/components/url-query-controller/index.js.map +1 -1
  84. package/build/index.js +24 -0
  85. package/build/index.js.map +1 -1
  86. package/build/store/actions.js +54 -1
  87. package/build/store/actions.js.map +1 -1
  88. package/build/store/constants.js +19 -1
  89. package/build/store/constants.js.map +1 -1
  90. package/build/store/reducer.js +16 -7
  91. package/build/store/reducer.js.map +1 -1
  92. package/build/store/selectors.js +91 -9
  93. package/build/store/selectors.js.map +1 -1
  94. package/build-module/components/block-editor/back-button.js +48 -0
  95. package/build-module/components/block-editor/back-button.js.map +1 -0
  96. package/build-module/components/block-editor/index.js +15 -4
  97. package/build-module/components/block-editor/index.js.map +1 -1
  98. package/build-module/components/edit-template-part-menu-button/index.js +49 -0
  99. package/build-module/components/edit-template-part-menu-button/index.js.map +1 -0
  100. package/build-module/components/editor/global-styles-provider.js +1 -1
  101. package/build-module/components/editor/global-styles-provider.js.map +1 -1
  102. package/build-module/components/editor/index.js +4 -5
  103. package/build-module/components/editor/index.js.map +1 -1
  104. package/build-module/components/editor/utils.js +1 -1
  105. package/build-module/components/editor/utils.js.map +1 -1
  106. package/build-module/components/{sidebar → global-styles}/border-panel.js +0 -0
  107. package/build-module/components/global-styles/border-panel.js.map +1 -0
  108. package/build-module/components/{sidebar → global-styles}/color-palette-panel.js +4 -2
  109. package/build-module/components/global-styles/color-palette-panel.js.map +1 -0
  110. package/build-module/components/{sidebar → global-styles}/color-panel.js +8 -12
  111. package/build-module/components/global-styles/color-panel.js.map +1 -0
  112. package/build-module/components/global-styles/context-menu.js +41 -0
  113. package/build-module/components/global-styles/context-menu.js.map +1 -0
  114. package/build-module/components/{sidebar → global-styles}/dimensions-panel.js +6 -7
  115. package/build-module/components/global-styles/dimensions-panel.js.map +1 -0
  116. package/build-module/components/global-styles/header.js +41 -0
  117. package/build-module/components/global-styles/header.js.map +1 -0
  118. package/build-module/components/global-styles/index.js +70 -0
  119. package/build-module/components/global-styles/index.js.map +1 -0
  120. package/build-module/components/global-styles/navigation-button.js +31 -0
  121. package/build-module/components/global-styles/navigation-button.js.map +1 -0
  122. package/build-module/components/global-styles/palette.js +43 -0
  123. package/build-module/components/global-styles/palette.js.map +1 -0
  124. package/build-module/components/global-styles/preview.js +50 -0
  125. package/build-module/components/global-styles/preview.js.map +1 -0
  126. package/build-module/components/global-styles/screen-block-list.js +58 -0
  127. package/build-module/components/global-styles/screen-block-list.js.map +1 -0
  128. package/build-module/components/global-styles/screen-block.js +32 -0
  129. package/build-module/components/global-styles/screen-block.js.map +1 -0
  130. package/build-module/components/global-styles/screen-color-palette.js +35 -0
  131. package/build-module/components/global-styles/screen-color-palette.js.map +1 -0
  132. package/build-module/components/global-styles/screen-colors.js +38 -0
  133. package/build-module/components/global-styles/screen-colors.js.map +1 -0
  134. package/build-module/components/global-styles/screen-layout.js +44 -0
  135. package/build-module/components/global-styles/screen-layout.js.map +1 -0
  136. package/build-module/components/global-styles/screen-root.js +29 -0
  137. package/build-module/components/global-styles/screen-root.js.map +1 -0
  138. package/build-module/components/global-styles/screen-typography.js +37 -0
  139. package/build-module/components/global-styles/screen-typography.js.map +1 -0
  140. package/build-module/components/global-styles/subtitle.js +17 -0
  141. package/build-module/components/global-styles/subtitle.js.map +1 -0
  142. package/build-module/components/{sidebar → global-styles}/typography-panel.js +1 -2
  143. package/build-module/components/global-styles/typography-panel.js.map +1 -0
  144. package/build-module/components/header/plugin-more-menu-item/index.js +70 -0
  145. package/build-module/components/header/plugin-more-menu-item/index.js.map +1 -0
  146. package/build-module/components/header/plugin-sidebar-more-menu-item/index.js +64 -0
  147. package/build-module/components/header/plugin-sidebar-more-menu-item/index.js.map +1 -0
  148. package/build-module/components/header/undo-redo/redo.js +1 -1
  149. package/build-module/components/header/undo-redo/redo.js.map +1 -1
  150. package/build-module/components/header/undo-redo/undo.js +1 -1
  151. package/build-module/components/header/undo-redo/undo.js.map +1 -1
  152. package/build-module/components/keyboard-shortcuts/index.js +3 -11
  153. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  154. package/build-module/components/navigation-sidebar/index.js +1 -1
  155. package/build-module/components/navigation-sidebar/index.js.map +1 -1
  156. package/build-module/components/navigation-sidebar/navigation-panel/constants.js +5 -3
  157. package/build-module/components/navigation-sidebar/navigation-panel/constants.js.map +1 -1
  158. package/build-module/components/save-button/index.js +1 -1
  159. package/build-module/components/save-button/index.js.map +1 -1
  160. package/build-module/components/secondary-sidebar/inserter-sidebar.js +2 -1
  161. package/build-module/components/secondary-sidebar/inserter-sidebar.js.map +1 -1
  162. package/build-module/components/sidebar/global-styles-sidebar.js +13 -159
  163. package/build-module/components/sidebar/global-styles-sidebar.js.map +1 -1
  164. package/build-module/components/sidebar/index.js +2 -7
  165. package/build-module/components/sidebar/index.js.map +1 -1
  166. package/build-module/components/sidebar/plugin-sidebar/index.js +84 -0
  167. package/build-module/components/sidebar/plugin-sidebar/index.js.map +1 -0
  168. package/build-module/components/template-details/index.js +13 -8
  169. package/build-module/components/template-details/index.js.map +1 -1
  170. package/build-module/components/template-details/template-areas.js +60 -0
  171. package/build-module/components/template-details/template-areas.js.map +1 -0
  172. package/build-module/components/template-part-converter/index.js +1 -1
  173. package/build-module/components/template-part-converter/index.js.map +1 -1
  174. package/build-module/components/url-query-controller/index.js +1 -1
  175. package/build-module/components/url-query-controller/index.js.map +1 -1
  176. package/build-module/index.js +3 -0
  177. package/build-module/index.js.map +1 -1
  178. package/build-module/store/actions.js +45 -1
  179. package/build-module/store/actions.js.map +1 -1
  180. package/build-module/store/constants.js +13 -0
  181. package/build-module/store/constants.js.map +1 -1
  182. package/build-module/store/reducer.js +16 -7
  183. package/build-module/store/reducer.js.map +1 -1
  184. package/build-module/store/selectors.js +85 -9
  185. package/build-module/store/selectors.js.map +1 -1
  186. package/build-style/style-rtl.css +122 -17
  187. package/build-style/style.css +122 -17
  188. package/package.json +26 -26
  189. package/src/components/block-editor/back-button.js +44 -0
  190. package/src/components/block-editor/index.js +16 -1
  191. package/src/components/block-editor/style.scss +26 -0
  192. package/src/components/edit-template-part-menu-button/index.js +57 -0
  193. package/src/components/editor/global-styles-provider.js +1 -1
  194. package/src/components/editor/index.js +5 -8
  195. package/src/components/editor/utils.js +1 -0
  196. package/src/components/{sidebar → global-styles}/border-panel.js +0 -0
  197. package/src/components/{sidebar → global-styles}/color-palette-panel.js +13 -11
  198. package/src/components/{sidebar → global-styles}/color-panel.js +12 -17
  199. package/src/components/global-styles/context-menu.js +54 -0
  200. package/src/components/{sidebar → global-styles}/dimensions-panel.js +6 -10
  201. package/src/components/global-styles/header.js +50 -0
  202. package/src/components/global-styles/index.js +81 -0
  203. package/src/components/global-styles/navigation-button.js +35 -0
  204. package/src/components/global-styles/palette.js +67 -0
  205. package/src/components/global-styles/preview.js +41 -0
  206. package/src/components/global-styles/screen-block-list.js +59 -0
  207. package/src/components/global-styles/screen-block.js +28 -0
  208. package/src/components/global-styles/screen-color-palette.js +33 -0
  209. package/src/components/global-styles/screen-colors.js +36 -0
  210. package/src/components/global-styles/screen-layout.js +45 -0
  211. package/src/components/global-styles/screen-root.js +43 -0
  212. package/src/components/global-styles/screen-typography.js +33 -0
  213. package/src/components/global-styles/style.scss +35 -0
  214. package/src/components/global-styles/subtitle.js +10 -0
  215. package/src/components/{sidebar → global-styles}/typography-panel.js +1 -2
  216. package/src/components/header/plugin-more-menu-item/index.js +71 -0
  217. package/src/components/header/plugin-sidebar-more-menu-item/index.js +64 -0
  218. package/src/components/header/undo-redo/redo.js +4 -1
  219. package/src/components/header/undo-redo/undo.js +4 -1
  220. package/src/components/keyboard-shortcuts/index.js +25 -40
  221. package/src/components/navigation-sidebar/index.js +1 -1
  222. package/src/components/navigation-sidebar/navigation-panel/constants.js +9 -4
  223. package/src/components/navigation-sidebar/navigation-panel/style.scss +1 -0
  224. package/src/components/save-button/index.js +1 -1
  225. package/src/components/secondary-sidebar/inserter-sidebar.js +1 -0
  226. package/src/components/sidebar/global-styles-sidebar.js +14 -187
  227. package/src/components/sidebar/index.js +2 -7
  228. package/src/components/sidebar/plugin-sidebar/index.js +80 -0
  229. package/src/components/sidebar/style.scss +40 -0
  230. package/src/components/template-details/index.js +17 -7
  231. package/src/components/template-details/style.scss +36 -27
  232. package/src/components/template-details/template-areas.js +66 -0
  233. package/src/components/template-part-converter/index.js +1 -1
  234. package/src/components/url-query-controller/index.js +1 -1
  235. package/src/index.js +3 -0
  236. package/src/store/actions.js +53 -1
  237. package/src/store/constants.js +15 -0
  238. package/src/store/reducer.js +26 -12
  239. package/src/store/selectors.js +96 -9
  240. package/src/store/test/reducer.js +40 -23
  241. package/src/store/test/selectors.js +34 -3
  242. package/src/style.scss +1 -0
  243. package/build/components/sidebar/border-panel.js.map +0 -1
  244. package/build/components/sidebar/color-palette-panel.js.map +0 -1
  245. package/build/components/sidebar/color-panel.js.map +0 -1
  246. package/build/components/sidebar/dimensions-panel.js.map +0 -1
  247. package/build/components/sidebar/typography-panel.js.map +0 -1
  248. package/build-module/components/sidebar/border-panel.js.map +0 -1
  249. package/build-module/components/sidebar/color-palette-panel.js.map +0 -1
  250. package/build-module/components/sidebar/color-panel.js.map +0 -1
  251. package/build-module/components/sidebar/dimensions-panel.js.map +0 -1
  252. package/build-module/components/sidebar/typography-panel.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"names":["Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","select","_sidebar","interfaceStore","getActiveComplementaryArea","STORE_NAME","_isEditorSidebarOpened","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","includes","blockEditorStore","getBlockSelectionStart","enableComplementaryArea","sidebarName","cog","typography"],"mappings":";;;;;;;;;;AAMA;;AAHA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAnBA;AACA;AACA;;AASA;AACA;AACA;AAQA,MAAM;AAAEA,EAAAA,IAAI,EAAEC,aAAR;AAAuBC,EAAAA,IAAI,EAAEC;AAA7B,IAA+C,gCACpD,0BADoD,CAArD;AAGO,MAAMC,oBAAoB,GAAGD,aAA7B;;;AAEA,SAASE,6BAAT,GAAyC;AAC/C,QAAM;AAAEC,IAAAA,OAAF;AAAWC,IAAAA,qBAAX;AAAkCC,IAAAA;AAAlC,MAAwD,qBAC3DC,MAAF,IAAc;AACb,UAAMC,QAAQ,GAAGD,MAAM,CACtBE,gBADsB,CAAN,CAEfC,0BAFe,CAEaC,qBAFb,CAAjB;;AAGA,UAAMC,sBAAsB,GAAG,CAC9BC,yBAD8B,EAE9BC,4BAF8B,EAG7BC,QAH6B,CAGnBP,QAHmB,CAA/B;;AAIA,WAAO;AACNJ,MAAAA,OAAO,EAAEI,QADH;AAENH,MAAAA,qBAAqB,EAAEO,sBAFjB;AAGNN,MAAAA,iBAAiB,EAAE,CAAC,CAAEC,MAAM,CAC3BS,kBAD2B,CAAN,CAEpBC,sBAFoB;AAHhB,KAAP;AAOA,GAhB4D,EAiB7D,EAjB6D,CAA9D;AAmBA,QAAM;AAAEC,IAAAA;AAAF,MAA8B,uBAAaT,gBAAb,CAApC;AACA,0BAAW,MAAM;AAChB,QAAK,CAAEJ,qBAAP,EAA+B;;AAC/B,QAAKC,iBAAL,EAAyB;AACxBY,MAAAA,uBAAuB,CAAEP,qBAAF,EAAcE,yBAAd,CAAvB;AACA,KAFD,MAEO;AACNK,MAAAA,uBAAuB,CAAEP,qBAAF,EAAcG,4BAAd,CAAvB;AACA;AACD,GAPD,EAOG,CAAER,iBAAF,EAAqBD,qBAArB,CAPH;AAQA,MAAIc,WAAW,GAAGf,OAAlB;;AACA,MAAK,CAAEC,qBAAP,EAA+B;AAC9Bc,IAAAA,WAAW,GAAGb,iBAAiB,GAAGO,yBAAH,GAAmBC,4BAAlD;AACA;;AACD,SACC,qDACC,4BAAC,uBAAD;AACC,IAAA,UAAU,EAAGK,WADd;AAEC,IAAA,KAAK,EAAG,cAAI,UAAJ,CAFT;AAGC,IAAA,IAAI,EAAGC,UAHR;AAIC,IAAA,UAAU,EAAG,cAAI,wBAAJ,CAJd;AAKC,IAAA,MAAM,EAAG,4BAAC,uBAAD;AAAgB,MAAA,WAAW,EAAGD;AAA9B,MALV;AAMC,IAAA,eAAe,EAAC;AANjB,KAQGA,WAAW,KAAKL,4BAAhB,IACD,4BAAC,qBAAD,QACC,4BAAC,qBAAD,OADD,CATF,EAaGK,WAAW,KAAKN,yBAAhB,IACD,4BAAC,aAAD;AAAe,IAAA,gBAAgB;AAA/B,IAdF,CADD,EAkBC,4BAAC,4BAAD;AACC,IAAA,UAAU,EAAC,yBADZ;AAEC,IAAA,KAAK,EAAG,cAAI,eAAJ,CAFT;AAGC,IAAA,UAAU,EAAG,cAAI,6BAAJ,CAHd;AAIC,IAAA,IAAI,EAAGQ;AAJR,IAlBD,CADD;AA2BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { cog, typography } from '@wordpress/icons';\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport TemplateCard from './template-card';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nexport function SidebarComplementaryAreaFills() {\n\tconst { sidebar, isEditorSidebarOpened, hasBlockSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst _sidebar = select(\n\t\t\t\tinterfaceStore\n\t\t\t).getActiveComplementaryArea( STORE_NAME );\n\t\t\tconst _isEditorSidebarOpened = [\n\t\t\t\tSIDEBAR_BLOCK,\n\t\t\t\tSIDEBAR_TEMPLATE,\n\t\t\t].includes( _sidebar );\n\t\t\treturn {\n\t\t\t\tsidebar: _sidebar,\n\t\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\t\thasBlockSelection: !! select(\n\t\t\t\t\tblockEditorStore\n\t\t\t\t).getBlockSelectionStart(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\tuseEffect( () => {\n\t\tif ( ! isEditorSidebarOpened ) return;\n\t\tif ( hasBlockSelection ) {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [ hasBlockSelection, isEditorSidebarOpened ] );\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ cog }\n\t\t\t\tcloseLabel={ __( 'Close settings sidebar' ) }\n\t\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\t\theaderClassName=\"edit-site-sidebar__panel-tabs\"\n\t\t\t>\n\t\t\t\t{ sidebarName === SIDEBAR_TEMPLATE && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TemplateCard />\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ sidebarName === SIDEBAR_BLOCK && (\n\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t) }\n\t\t\t</DefaultSidebar>\n\t\t\t<GlobalStylesSidebar\n\t\t\t\tidentifier=\"edit-site/global-styles\"\n\t\t\t\ttitle={ __( 'Global Styles' ) }\n\t\t\t\tcloseLabel={ __( 'Close global styles sidebar' ) }\n\t\t\t\ticon={ typography }\n\t\t\t/>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar/index.js"],"names":["Slot","InspectorSlot","Fill","InspectorFill","SidebarInspectorFill","SidebarComplementaryAreaFills","sidebar","isEditorSidebarOpened","hasBlockSelection","select","_sidebar","interfaceStore","getActiveComplementaryArea","STORE_NAME","_isEditorSidebarOpened","SIDEBAR_BLOCK","SIDEBAR_TEMPLATE","includes","blockEditorStore","getBlockSelectionStart","enableComplementaryArea","sidebarName","cog"],"mappings":";;;;;;;;;;AAMA;;AAHA;;AACA;;AACA;;AAEA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAnBA;AACA;AACA;;AASA;AACA;AACA;AAQA,MAAM;AAAEA,EAAAA,IAAI,EAAEC,aAAR;AAAuBC,EAAAA,IAAI,EAAEC;AAA7B,IAA+C,gCACpD,0BADoD,CAArD;AAGO,MAAMC,oBAAoB,GAAGD,aAA7B;;;AAEA,SAASE,6BAAT,GAAyC;AAC/C,QAAM;AAAEC,IAAAA,OAAF;AAAWC,IAAAA,qBAAX;AAAkCC,IAAAA;AAAlC,MAAwD,qBAC3DC,MAAF,IAAc;AACb,UAAMC,QAAQ,GAAGD,MAAM,CACtBE,gBADsB,CAAN,CAEfC,0BAFe,CAEaC,qBAFb,CAAjB;;AAGA,UAAMC,sBAAsB,GAAG,CAC9BC,yBAD8B,EAE9BC,4BAF8B,EAG7BC,QAH6B,CAGnBP,QAHmB,CAA/B;;AAIA,WAAO;AACNJ,MAAAA,OAAO,EAAEI,QADH;AAENH,MAAAA,qBAAqB,EAAEO,sBAFjB;AAGNN,MAAAA,iBAAiB,EAAE,CAAC,CAAEC,MAAM,CAC3BS,kBAD2B,CAAN,CAEpBC,sBAFoB;AAHhB,KAAP;AAOA,GAhB4D,EAiB7D,EAjB6D,CAA9D;AAmBA,QAAM;AAAEC,IAAAA;AAAF,MAA8B,uBAAaT,gBAAb,CAApC;AACA,0BAAW,MAAM;AAChB,QAAK,CAAEJ,qBAAP,EAA+B;;AAC/B,QAAKC,iBAAL,EAAyB;AACxBY,MAAAA,uBAAuB,CAAEP,qBAAF,EAAcE,yBAAd,CAAvB;AACA,KAFD,MAEO;AACNK,MAAAA,uBAAuB,CAAEP,qBAAF,EAAcG,4BAAd,CAAvB;AACA;AACD,GAPD,EAOG,CAAER,iBAAF,EAAqBD,qBAArB,CAPH;AAQA,MAAIc,WAAW,GAAGf,OAAlB;;AACA,MAAK,CAAEC,qBAAP,EAA+B;AAC9Bc,IAAAA,WAAW,GAAGb,iBAAiB,GAAGO,yBAAH,GAAmBC,4BAAlD;AACA;;AACD,SACC,qDACC,4BAAC,uBAAD;AACC,IAAA,UAAU,EAAGK,WADd;AAEC,IAAA,KAAK,EAAG,cAAI,UAAJ,CAFT;AAGC,IAAA,IAAI,EAAGC,UAHR;AAIC,IAAA,UAAU,EAAG,cAAI,wBAAJ,CAJd;AAKC,IAAA,MAAM,EAAG,4BAAC,uBAAD;AAAgB,MAAA,WAAW,EAAGD;AAA9B,MALV;AAMC,IAAA,eAAe,EAAC;AANjB,KAQGA,WAAW,KAAKL,4BAAhB,IACD,4BAAC,qBAAD,QACC,4BAAC,qBAAD,OADD,CATF,EAaGK,WAAW,KAAKN,yBAAhB,IACD,4BAAC,aAAD;AAAe,IAAA,gBAAgB;AAA/B,IAdF,CADD,EAkBC,4BAAC,4BAAD,OAlBD,CADD;AAsBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill, PanelBody } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { cog } from '@wordpress/icons';\nimport { useEffect } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { store as interfaceStore } from '@wordpress/interface';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport DefaultSidebar from './default-sidebar';\nimport GlobalStylesSidebar from './global-styles-sidebar';\nimport { STORE_NAME } from '../../store/constants';\nimport SettingsHeader from './settings-header';\nimport TemplateCard from './template-card';\nimport { SIDEBAR_BLOCK, SIDEBAR_TEMPLATE } from './constants';\n\nconst { Slot: InspectorSlot, Fill: InspectorFill } = createSlotFill(\n\t'EditSiteSidebarInspector'\n);\nexport const SidebarInspectorFill = InspectorFill;\n\nexport function SidebarComplementaryAreaFills() {\n\tconst { sidebar, isEditorSidebarOpened, hasBlockSelection } = useSelect(\n\t\t( select ) => {\n\t\t\tconst _sidebar = select(\n\t\t\t\tinterfaceStore\n\t\t\t).getActiveComplementaryArea( STORE_NAME );\n\t\t\tconst _isEditorSidebarOpened = [\n\t\t\t\tSIDEBAR_BLOCK,\n\t\t\t\tSIDEBAR_TEMPLATE,\n\t\t\t].includes( _sidebar );\n\t\t\treturn {\n\t\t\t\tsidebar: _sidebar,\n\t\t\t\tisEditorSidebarOpened: _isEditorSidebarOpened,\n\t\t\t\thasBlockSelection: !! select(\n\t\t\t\t\tblockEditorStore\n\t\t\t\t).getBlockSelectionStart(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\tconst { enableComplementaryArea } = useDispatch( interfaceStore );\n\tuseEffect( () => {\n\t\tif ( ! isEditorSidebarOpened ) return;\n\t\tif ( hasBlockSelection ) {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_BLOCK );\n\t\t} else {\n\t\t\tenableComplementaryArea( STORE_NAME, SIDEBAR_TEMPLATE );\n\t\t}\n\t}, [ hasBlockSelection, isEditorSidebarOpened ] );\n\tlet sidebarName = sidebar;\n\tif ( ! isEditorSidebarOpened ) {\n\t\tsidebarName = hasBlockSelection ? SIDEBAR_BLOCK : SIDEBAR_TEMPLATE;\n\t}\n\treturn (\n\t\t<>\n\t\t\t<DefaultSidebar\n\t\t\t\tidentifier={ sidebarName }\n\t\t\t\ttitle={ __( 'Settings' ) }\n\t\t\t\ticon={ cog }\n\t\t\t\tcloseLabel={ __( 'Close settings sidebar' ) }\n\t\t\t\theader={ <SettingsHeader sidebarName={ sidebarName } /> }\n\t\t\t\theaderClassName=\"edit-site-sidebar__panel-tabs\"\n\t\t\t>\n\t\t\t\t{ sidebarName === SIDEBAR_TEMPLATE && (\n\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t<TemplateCard />\n\t\t\t\t\t</PanelBody>\n\t\t\t\t) }\n\t\t\t\t{ sidebarName === SIDEBAR_BLOCK && (\n\t\t\t\t\t<InspectorSlot bubblesVirtually />\n\t\t\t\t) }\n\t\t\t</DefaultSidebar>\n\t\t\t<GlobalStylesSidebar />\n\t\t</>\n\t);\n}\n"]}
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = PluginSidebarEditSite;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
13
+
14
+ var _interface = require("@wordpress/interface");
15
+
16
+ /**
17
+ * WordPress dependencies
18
+ */
19
+
20
+ /**
21
+ * Renders a sidebar when activated. The contents within the `PluginSidebar` will appear as content within the sidebar.
22
+ * It also automatically renders a corresponding `PluginSidebarMenuItem` component when `isPinnable` flag is set to `true`.
23
+ * If you wish to display the sidebar, you can with use the `PluginSidebarMoreMenuItem` component or the `wp.data.dispatch` API:
24
+ *
25
+ * ```js
26
+ * wp.data.dispatch( 'core/edit-site' ).openGeneralSidebar( 'plugin-name/sidebar-name' );
27
+ * ```
28
+ *
29
+ * @see PluginSidebarMoreMenuItem
30
+ *
31
+ * @param {Object} props Element props.
32
+ * @param {string} props.name A string identifying the sidebar. Must be unique for every sidebar registered within the scope of your plugin.
33
+ * @param {string} [props.className] An optional class name added to the sidebar body.
34
+ * @param {string} props.title Title displayed at the top of the sidebar.
35
+ * @param {boolean} [props.isPinnable=true] Whether to allow to pin sidebar to the toolbar. When set to `true` it also automatically renders a corresponding menu item.
36
+ * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.
37
+ *
38
+ * @example
39
+ * ```js
40
+ * // Using ES5 syntax
41
+ * var __ = wp.i18n.__;
42
+ * var el = wp.element.createElement;
43
+ * var PanelBody = wp.components.PanelBody;
44
+ * var PluginSidebar = wp.editSite.PluginSidebar;
45
+ * var moreIcon = wp.element.createElement( 'svg' ); //... svg element.
46
+ *
47
+ * function MyPluginSidebar() {
48
+ * return el(
49
+ * PluginSidebar,
50
+ * {
51
+ * name: 'my-sidebar',
52
+ * title: 'My sidebar title',
53
+ * icon: moreIcon,
54
+ * },
55
+ * el(
56
+ * PanelBody,
57
+ * {},
58
+ * __( 'My sidebar content' )
59
+ * )
60
+ * );
61
+ * }
62
+ * ```
63
+ *
64
+ * @example
65
+ * ```jsx
66
+ * // Using ESNext syntax
67
+ * import { __ } from '@wordpress/i18n';
68
+ * import { PanelBody } from '@wordpress/components';
69
+ * import { PluginSidebar } from '@wordpress/edit-site';
70
+ * import { more } from '@wordpress/icons';
71
+ *
72
+ * const MyPluginSidebar = () => (
73
+ * <PluginSidebar
74
+ * name="my-sidebar"
75
+ * title="My sidebar title"
76
+ * icon={ more }
77
+ * >
78
+ * <PanelBody>
79
+ * { __( 'My sidebar content' ) }
80
+ * </PanelBody>
81
+ * </PluginSidebar>
82
+ * );
83
+ * ```
84
+ */
85
+ function PluginSidebarEditSite({
86
+ className,
87
+ ...props
88
+ }) {
89
+ return (0, _element.createElement)(_interface.ComplementaryArea, (0, _extends2.default)({
90
+ panelClassName: className,
91
+ className: "edit-site-sidebar",
92
+ scope: "core/edit-site"
93
+ }, props));
94
+ }
95
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/sidebar/plugin-sidebar/index.js"],"names":["PluginSidebarEditSite","className","props"],"mappings":";;;;;;;;;;;;;AAGA;;AAHA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACe,SAASA,qBAAT,CAAgC;AAAEC,EAAAA,SAAF;AAAa,KAAGC;AAAhB,CAAhC,EAA0D;AACxE,SACC,4BAAC,4BAAD;AACC,IAAA,cAAc,EAAGD,SADlB;AAEC,IAAA,SAAS,EAAC,mBAFX;AAGC,IAAA,KAAK,EAAC;AAHP,KAIMC,KAJN,EADD;AAQA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { ComplementaryArea } from '@wordpress/interface';\n\n/**\n * Renders a sidebar when activated. The contents within the `PluginSidebar` will appear as content within the sidebar.\n * It also automatically renders a corresponding `PluginSidebarMenuItem` component when `isPinnable` flag is set to `true`.\n * If you wish to display the sidebar, you can with use the `PluginSidebarMoreMenuItem` component or the `wp.data.dispatch` API:\n *\n * ```js\n * wp.data.dispatch( 'core/edit-site' ).openGeneralSidebar( 'plugin-name/sidebar-name' );\n * ```\n *\n * @see PluginSidebarMoreMenuItem\n *\n * @param {Object} props Element props.\n * @param {string} props.name A string identifying the sidebar. Must be unique for every sidebar registered within the scope of your plugin.\n * @param {string} [props.className] An optional class name added to the sidebar body.\n * @param {string} props.title Title displayed at the top of the sidebar.\n * @param {boolean} [props.isPinnable=true] Whether to allow to pin sidebar to the toolbar. When set to `true` it also automatically renders a corresponding menu item.\n * @param {WPBlockTypeIconRender} [props.icon=inherits from the plugin] The [Dashicon](https://developer.wordpress.org/resource/dashicons/) icon slug string, or an SVG WP element, to be rendered when the sidebar is pinned to toolbar.\n *\n * @example\n * ```js\n * // Using ES5 syntax\n * var __ = wp.i18n.__;\n * var el = wp.element.createElement;\n * var PanelBody = wp.components.PanelBody;\n * var PluginSidebar = wp.editSite.PluginSidebar;\n * var moreIcon = wp.element.createElement( 'svg' ); //... svg element.\n *\n * function MyPluginSidebar() {\n * \treturn el(\n * \t\t\tPluginSidebar,\n * \t\t\t{\n * \t\t\t\tname: 'my-sidebar',\n * \t\t\t\ttitle: 'My sidebar title',\n * \t\t\t\ticon: moreIcon,\n * \t\t\t},\n * \t\t\tel(\n * \t\t\t\tPanelBody,\n * \t\t\t\t{},\n * \t\t\t\t__( 'My sidebar content' )\n * \t\t\t)\n * \t);\n * }\n * ```\n *\n * @example\n * ```jsx\n * // Using ESNext syntax\n * import { __ } from '@wordpress/i18n';\n * import { PanelBody } from '@wordpress/components';\n * import { PluginSidebar } from '@wordpress/edit-site';\n * import { more } from '@wordpress/icons';\n *\n * const MyPluginSidebar = () => (\n * \t<PluginSidebar\n * \t\tname=\"my-sidebar\"\n * \t\ttitle=\"My sidebar title\"\n * \t\ticon={ more }\n * \t>\n * \t\t<PanelBody>\n * \t\t\t{ __( 'My sidebar content' ) }\n * \t\t</PanelBody>\n * \t</PluginSidebar>\n * );\n * ```\n */\nexport default function PluginSidebarEditSite( { className, ...props } ) {\n\treturn (\n\t\t<ComplementaryArea\n\t\t\tpanelClassName={ className }\n\t\t\tclassName=\"edit-site-sidebar\"\n\t\t\tscope=\"core/edit-site\"\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
@@ -23,6 +23,8 @@ var _constants = require("../navigation-sidebar/navigation-panel/constants");
23
23
 
24
24
  var _store = require("../../store");
25
25
 
26
+ var _templateAreas = _interopRequireDefault(require("./template-areas"));
27
+
26
28
  /**
27
29
  * WordPress dependencies
28
30
  */
@@ -57,17 +59,21 @@ function TemplateDetails({
57
59
  onClose();
58
60
  };
59
61
 
60
- return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)("div", {
62
+ return (0, _element.createElement)("div", {
61
63
  className: "edit-site-template-details"
62
- }, (0, _element.createElement)(_components.__experimentalText, {
63
- size: "body",
64
- weight: 600
64
+ }, (0, _element.createElement)("div", {
65
+ className: "edit-site-template-details__group"
66
+ }, (0, _element.createElement)(_components.__experimentalHeading, {
67
+ level: 4,
68
+ weight: 600,
69
+ className: "edit-site-template-details__title"
65
70
  }, title), description && (0, _element.createElement)(_components.__experimentalText, {
66
71
  size: "body",
67
72
  className: "edit-site-template-details__description"
68
- }, description)), (0, _isTemplateRevertable.default)(template) && (0, _element.createElement)("div", {
69
- className: "edit-site-template-details__revert"
73
+ }, description)), (0, _element.createElement)(_templateAreas.default, null), (0, _isTemplateRevertable.default)(template) && (0, _element.createElement)(_components.MenuGroup, {
74
+ className: "edit-site-template-details__group"
70
75
  }, (0, _element.createElement)(_components.MenuItem, {
76
+ className: "edit-site-template-details__revert-button",
71
77
  info: (0, _i18n.__)('Restore template to theme default'),
72
78
  onClick: revert
73
79
  }, (0, _i18n.__)('Clear customizations'))), (0, _element.createElement)(_components.Button, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/index.js"],"names":["TemplateDetails","template","onClose","title","description","select","editorStore","__experimentalGetTemplateInfo","openNavigationPanelToMenu","revertTemplate","editSiteStore","showTemplateInSidebar","MENU_TEMPLATES","revert"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAKA;;AACA;;AACA;;AAjBA;AACA;AACA;;AAUA;AACA;AACA;AAKe,SAASA,eAAT,CAA0B;AAAEC,EAAAA,QAAF;AAAYC,EAAAA;AAAZ,CAA1B,EAAkD;AAChE,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAAyB,qBAC5BC,MAAF,IACCA,MAAM,CAAEC,aAAF,CAAN,CAAsBC,6BAAtB,CAAqDN,QAArD,CAF6B,EAG9B,EAH8B,CAA/B;AAKA,QAAM;AAAEO,IAAAA,yBAAF;AAA6BC,IAAAA;AAA7B,MAAgD,uBACrDC,YADqD,CAAtD;;AAIA,MAAK,CAAET,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,QAAMU,qBAAqB,GAAG,MAAM;AACnCT,IAAAA,OAAO;AACPM,IAAAA,yBAAyB,CAAEI,yBAAF,CAAzB;AACA,GAHD;;AAKA,QAAMC,MAAM,GAAG,MAAM;AACpBJ,IAAAA,cAAc,CAAER,QAAF,CAAd;AACAC,IAAAA,OAAO;AACP,GAHD;;AAKA,SACC,qDACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,8BAAD;AAAM,IAAA,IAAI,EAAC,MAAX;AAAkB,IAAA,MAAM,EAAG;AAA3B,KACGC,KADH,CADD,EAKGC,WAAW,IACZ,4BAAC,8BAAD;AACC,IAAA,IAAI,EAAC,MADN;AAEC,IAAA,SAAS,EAAC;AAFX,KAIGA,WAJH,CANF,CADD,EAgBG,mCAAsBH,QAAtB,KACD;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,oBAAD;AACC,IAAA,IAAI,EAAG,cAAI,mCAAJ,CADR;AAEC,IAAA,OAAO,EAAGY;AAFX,KAIG,cAAI,sBAAJ,CAJH,CADD,CAjBF,EA2BC,4BAAC,kBAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,OAAO,EAAGF,qBAFX;AAGC,kBAAa,cACZ,sFADY;AAHd,KAOG,cAAI,sBAAJ,CAPH,CA3BD,CADD;AAuCA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tMenuItem,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { MENU_TEMPLATES } from '../navigation-sidebar/navigation-panel/constants';\nimport { store as editSiteStore } from '../../store';\n\nexport default function TemplateDetails( { template, onClose } ) {\n\tconst { title, description } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetTemplateInfo( template ),\n\t\t[]\n\t);\n\tconst { openNavigationPanelToMenu, revertTemplate } = useDispatch(\n\t\teditSiteStore\n\t);\n\n\tif ( ! template ) {\n\t\treturn null;\n\t}\n\n\tconst showTemplateInSidebar = () => {\n\t\tonClose();\n\t\topenNavigationPanelToMenu( MENU_TEMPLATES );\n\t};\n\n\tconst revert = () => {\n\t\trevertTemplate( template );\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<>\n\t\t\t<div className=\"edit-site-template-details\">\n\t\t\t\t<Text size=\"body\" weight={ 600 }>\n\t\t\t\t\t{ title }\n\t\t\t\t</Text>\n\n\t\t\t\t{ description && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\tclassName=\"edit-site-template-details__description\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</Text>\n\t\t\t\t) }\n\t\t\t</div>\n\n\t\t\t{ isTemplateRevertable( template ) && (\n\t\t\t\t<div className=\"edit-site-template-details__revert\">\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tinfo={ __( 'Restore template to theme default' ) }\n\t\t\t\t\t\tonClick={ revert }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear customizations' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</div>\n\t\t\t) }\n\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-template-details__show-all-button\"\n\t\t\t\tonClick={ showTemplateInSidebar }\n\t\t\t\taria-label={ __(\n\t\t\t\t\t'Browse all templates. This will open the template menu in the navigation side panel.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ __( 'Browse all templates' ) }\n\t\t\t</Button>\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/index.js"],"names":["TemplateDetails","template","onClose","title","description","select","editorStore","__experimentalGetTemplateInfo","openNavigationPanelToMenu","revertTemplate","editSiteStore","showTemplateInSidebar","MENU_TEMPLATES","revert"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAOA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AApBA;AACA;AACA;;AAYA;AACA;AACA;AAMe,SAASA,eAAT,CAA0B;AAAEC,EAAAA,QAAF;AAAYC,EAAAA;AAAZ,CAA1B,EAAkD;AAChE,QAAM;AAAEC,IAAAA,KAAF;AAASC,IAAAA;AAAT,MAAyB,qBAC5BC,MAAF,IACCA,MAAM,CAAEC,aAAF,CAAN,CAAsBC,6BAAtB,CAAqDN,QAArD,CAF6B,EAG9B,EAH8B,CAA/B;AAKA,QAAM;AAAEO,IAAAA,yBAAF;AAA6BC,IAAAA;AAA7B,MAAgD,uBACrDC,YADqD,CAAtD;;AAIA,MAAK,CAAET,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,QAAMU,qBAAqB,GAAG,MAAM;AACnCT,IAAAA,OAAO;AACPM,IAAAA,yBAAyB,CAAEI,yBAAF,CAAzB;AACA,GAHD;;AAKA,QAAMC,MAAM,GAAG,MAAM;AACpBJ,IAAAA,cAAc,CAAER,QAAF,CAAd;AACAC,IAAAA,OAAO;AACP,GAHD;;AAKA,SACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,iCAAD;AACC,IAAA,KAAK,EAAG,CADT;AAEC,IAAA,MAAM,EAAG,GAFV;AAGC,IAAA,SAAS,EAAC;AAHX,KAKGC,KALH,CADD,EASGC,WAAW,IACZ,4BAAC,8BAAD;AACC,IAAA,IAAI,EAAC,MADN;AAEC,IAAA,SAAS,EAAC;AAFX,KAIGA,WAJH,CAVF,CADD,EAoBC,4BAAC,sBAAD,OApBD,EAsBG,mCAAsBH,QAAtB,KACD,4BAAC,qBAAD;AAAW,IAAA,SAAS,EAAC;AAArB,KACC,4BAAC,oBAAD;AACC,IAAA,SAAS,EAAC,2CADX;AAEC,IAAA,IAAI,EAAG,cAAI,mCAAJ,CAFR;AAGC,IAAA,OAAO,EAAGY;AAHX,KAKG,cAAI,sBAAJ,CALH,CADD,CAvBF,EAkCC,4BAAC,kBAAD;AACC,IAAA,SAAS,EAAC,6CADX;AAEC,IAAA,OAAO,EAAGF,qBAFX;AAGC,kBAAa,cACZ,sFADY;AAHd,KAOG,cAAI,sBAAJ,CAPH,CAlCD,CADD;AA8CA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tButton,\n\tMenuGroup,\n\tMenuItem,\n\t__experimentalHeading as Heading,\n\t__experimentalText as Text,\n} from '@wordpress/components';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as editorStore } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport isTemplateRevertable from '../../utils/is-template-revertable';\nimport { MENU_TEMPLATES } from '../navigation-sidebar/navigation-panel/constants';\nimport { store as editSiteStore } from '../../store';\nimport TemplateAreas from './template-areas';\n\nexport default function TemplateDetails( { template, onClose } ) {\n\tconst { title, description } = useSelect(\n\t\t( select ) =>\n\t\t\tselect( editorStore ).__experimentalGetTemplateInfo( template ),\n\t\t[]\n\t);\n\tconst { openNavigationPanelToMenu, revertTemplate } = useDispatch(\n\t\teditSiteStore\n\t);\n\n\tif ( ! template ) {\n\t\treturn null;\n\t}\n\n\tconst showTemplateInSidebar = () => {\n\t\tonClose();\n\t\topenNavigationPanelToMenu( MENU_TEMPLATES );\n\t};\n\n\tconst revert = () => {\n\t\trevertTemplate( template );\n\t\tonClose();\n\t};\n\n\treturn (\n\t\t<div className=\"edit-site-template-details\">\n\t\t\t<div className=\"edit-site-template-details__group\">\n\t\t\t\t<Heading\n\t\t\t\t\tlevel={ 4 }\n\t\t\t\t\tweight={ 600 }\n\t\t\t\t\tclassName=\"edit-site-template-details__title\"\n\t\t\t\t>\n\t\t\t\t\t{ title }\n\t\t\t\t</Heading>\n\n\t\t\t\t{ description && (\n\t\t\t\t\t<Text\n\t\t\t\t\t\tsize=\"body\"\n\t\t\t\t\t\tclassName=\"edit-site-template-details__description\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ description }\n\t\t\t\t\t</Text>\n\t\t\t\t) }\n\t\t\t</div>\n\n\t\t\t<TemplateAreas />\n\n\t\t\t{ isTemplateRevertable( template ) && (\n\t\t\t\t<MenuGroup className=\"edit-site-template-details__group\">\n\t\t\t\t\t<MenuItem\n\t\t\t\t\t\tclassName=\"edit-site-template-details__revert-button\"\n\t\t\t\t\t\tinfo={ __( 'Restore template to theme default' ) }\n\t\t\t\t\t\tonClick={ revert }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Clear customizations' ) }\n\t\t\t\t\t</MenuItem>\n\t\t\t\t</MenuGroup>\n\t\t\t) }\n\n\t\t\t<Button\n\t\t\t\tclassName=\"edit-site-template-details__show-all-button\"\n\t\t\t\tonClick={ showTemplateInSidebar }\n\t\t\t\taria-label={ __(\n\t\t\t\t\t'Browse all templates. This will open the template menu in the navigation side panel.'\n\t\t\t\t) }\n\t\t\t>\n\t\t\t\t{ __( 'Browse all templates' ) }\n\t\t\t</Button>\n\t\t</div>\n\t);\n}\n"]}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = TemplateAreas;
7
+
8
+ var _element = require("@wordpress/element");
9
+
10
+ var _i18n = require("@wordpress/i18n");
11
+
12
+ var _components = require("@wordpress/components");
13
+
14
+ var _data = require("@wordpress/data");
15
+
16
+ var _editor = require("@wordpress/editor");
17
+
18
+ var _blockEditor = require("@wordpress/block-editor");
19
+
20
+ var _store = require("../../store");
21
+
22
+ var _constants = require("../../store/constants");
23
+
24
+ /**
25
+ * WordPress dependencies
26
+ */
27
+
28
+ /**
29
+ * Internal dependencies
30
+ */
31
+ function TemplatePartItem({
32
+ area,
33
+ clientId
34
+ }) {
35
+ const {
36
+ selectBlock,
37
+ toggleBlockHighlight
38
+ } = (0, _data.useDispatch)(_blockEditor.store);
39
+
40
+ const highlightBlock = () => toggleBlockHighlight(clientId, true);
41
+
42
+ const cancelHighlightBlock = () => toggleBlockHighlight(clientId, false);
43
+
44
+ return (0, _element.createElement)(_components.MenuItem, {
45
+ icon: (0, _editor.getTemplatePartIcon)(area),
46
+ iconPosition: "left",
47
+ onClick: () => {
48
+ selectBlock(clientId);
49
+ },
50
+ onMouseOver: highlightBlock,
51
+ onMouseLeave: cancelHighlightBlock,
52
+ onFocus: highlightBlock,
53
+ onBlur: cancelHighlightBlock
54
+ }, _constants.TEMPLATE_PART_AREA_TO_NAME[area]);
55
+ }
56
+
57
+ function TemplateAreas() {
58
+ const templateAreaBlocks = (0, _data.useSelect)(select => select(_store.store).getTemplateAreaBlocks(), []);
59
+
60
+ if (!Object.keys(templateAreaBlocks).length) {
61
+ return null;
62
+ }
63
+
64
+ return (0, _element.createElement)(_components.MenuGroup, {
65
+ label: (0, _i18n.__)('Template areas'),
66
+ className: "edit-site-template-details__group edit-site-template-details__template-areas"
67
+ }, Object.entries(templateAreaBlocks).map(([area, templateAreaBlock]) => (0, _element.createElement)(TemplatePartItem, {
68
+ key: area,
69
+ area: area,
70
+ clientId: templateAreaBlock.clientId
71
+ })));
72
+ }
73
+ //# sourceMappingURL=template-areas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-details/template-areas.js"],"names":["TemplatePartItem","area","clientId","selectBlock","toggleBlockHighlight","blockEditorStore","highlightBlock","cancelHighlightBlock","TEMPLATE_PART_AREA_TO_NAME","TemplateAreas","templateAreaBlocks","select","editSiteStore","getTemplateAreaBlocks","Object","keys","length","entries","map","templateAreaBlock"],"mappings":";;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AAbA;AACA;AACA;;AAOA;AACA;AACA;AAIA,SAASA,gBAAT,CAA2B;AAAEC,EAAAA,IAAF;AAAQC,EAAAA;AAAR,CAA3B,EAAgD;AAC/C,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA;AAAf,MAAwC,uBAC7CC,kBAD6C,CAA9C;;AAGA,QAAMC,cAAc,GAAG,MAAMF,oBAAoB,CAAEF,QAAF,EAAY,IAAZ,CAAjD;;AACA,QAAMK,oBAAoB,GAAG,MAAMH,oBAAoB,CAAEF,QAAF,EAAY,KAAZ,CAAvD;;AAEA,SACC,4BAAC,oBAAD;AACC,IAAA,IAAI,EAAG,iCAAqBD,IAArB,CADR;AAEC,IAAA,YAAY,EAAC,MAFd;AAGC,IAAA,OAAO,EAAG,MAAM;AACfE,MAAAA,WAAW,CAAED,QAAF,CAAX;AACA,KALF;AAMC,IAAA,WAAW,EAAGI,cANf;AAOC,IAAA,YAAY,EAAGC,oBAPhB;AAQC,IAAA,OAAO,EAAGD,cARX;AASC,IAAA,MAAM,EAAGC;AATV,KAWGC,sCAA4BP,IAA5B,CAXH,CADD;AAeA;;AAEc,SAASQ,aAAT,GAAyB;AACvC,QAAMC,kBAAkB,GAAG,qBACxBC,MAAF,IAAcA,MAAM,CAAEC,YAAF,CAAN,CAAwBC,qBAAxB,EADY,EAE1B,EAF0B,CAA3B;;AAKA,MAAK,CAAEC,MAAM,CAACC,IAAP,CAAaL,kBAAb,EAAkCM,MAAzC,EAAkD;AACjD,WAAO,IAAP;AACA;;AAED,SACC,4BAAC,qBAAD;AACC,IAAA,KAAK,EAAG,cAAI,gBAAJ,CADT;AAEC,IAAA,SAAS,EAAC;AAFX,KAIGF,MAAM,CAACG,OAAP,CAAgBP,kBAAhB,EAAqCQ,GAArC,CACD,CAAE,CAAEjB,IAAF,EAAQkB,iBAAR,CAAF,KACC,4BAAC,gBAAD;AACC,IAAA,GAAG,EAAGlB,IADP;AAEC,IAAA,IAAI,EAAGA,IAFR;AAGC,IAAA,QAAQ,EAAGkB,iBAAiB,CAACjB;AAH9B,IAFA,CAJH,CADD;AAgBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { MenuGroup, MenuItem } from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { getTemplatePartIcon } from '@wordpress/editor';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { TEMPLATE_PART_AREA_TO_NAME } from '../../store/constants';\n\nfunction TemplatePartItem( { area, clientId } ) {\n\tconst { selectBlock, toggleBlockHighlight } = useDispatch(\n\t\tblockEditorStore\n\t);\n\tconst highlightBlock = () => toggleBlockHighlight( clientId, true );\n\tconst cancelHighlightBlock = () => toggleBlockHighlight( clientId, false );\n\n\treturn (\n\t\t<MenuItem\n\t\t\ticon={ getTemplatePartIcon( area ) }\n\t\t\ticonPosition=\"left\"\n\t\t\tonClick={ () => {\n\t\t\t\tselectBlock( clientId );\n\t\t\t} }\n\t\t\tonMouseOver={ highlightBlock }\n\t\t\tonMouseLeave={ cancelHighlightBlock }\n\t\t\tonFocus={ highlightBlock }\n\t\t\tonBlur={ cancelHighlightBlock }\n\t\t>\n\t\t\t{ TEMPLATE_PART_AREA_TO_NAME[ area ] }\n\t\t</MenuItem>\n\t);\n}\n\nexport default function TemplateAreas() {\n\tconst templateAreaBlocks = useSelect(\n\t\t( select ) => select( editSiteStore ).getTemplateAreaBlocks(),\n\t\t[]\n\t);\n\n\tif ( ! Object.keys( templateAreaBlocks ).length ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<MenuGroup\n\t\t\tlabel={ __( 'Template areas' ) }\n\t\t\tclassName=\"edit-site-template-details__group edit-site-template-details__template-areas\"\n\t\t>\n\t\t\t{ Object.entries( templateAreaBlocks ).map(\n\t\t\t\t( [ area, templateAreaBlock ] ) => (\n\t\t\t\t\t<TemplatePartItem\n\t\t\t\t\t\tkey={ area }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tclientId={ templateAreaBlock.clientId }\n\t\t\t\t\t/>\n\t\t\t\t)\n\t\t\t) }\n\t\t</MenuGroup>\n\t);\n}\n"]}
@@ -40,7 +40,7 @@ function TemplatePartConverter() {
40
40
  clientIds: selectedBlockClientIds,
41
41
  blocks: getBlocksByClientId(selectedBlockClientIds)
42
42
  };
43
- }); // Allow converting a single template part to standard blocks.
43
+ }, []); // Allow converting a single template part to standard blocks.
44
44
 
45
45
  if (blocks.length === 1 && ((_blocks$ = blocks[0]) === null || _blocks$ === void 0 ? void 0 : _blocks$.name) === 'core/template-part') {
46
46
  return (0, _element.createElement)(_convertToRegular.default, {
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/template-part-converter/index.js"],"names":["TemplatePartConverter","clientIds","blocks","select","getSelectedBlockClientIds","getBlocksByClientId","blockEditorStore","selectedBlockClientIds","length","name"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAVA;AACA;AACA;;AAIA;AACA;AACA;AAIe,SAASA,qBAAT,GAAiC;AAAA;;AAC/C,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,MAAwB,qBAAaC,MAAF,IAAc;AACtD,UAAM;AAAEC,MAAAA,yBAAF;AAA6BC,MAAAA;AAA7B,QAAqDF,MAAM,CAChEG,kBADgE,CAAjE;AAGA,UAAMC,sBAAsB,GAAGH,yBAAyB,EAAxD;AACA,WAAO;AACNH,MAAAA,SAAS,EAAEM,sBADL;AAENL,MAAAA,MAAM,EAAEG,mBAAmB,CAAEE,sBAAF;AAFrB,KAAP;AAIA,GAT6B,CAA9B,CAD+C,CAY/C;;AACA,MAAKL,MAAM,CAACM,MAAP,KAAkB,CAAlB,IAAuB,aAAAN,MAAM,CAAE,CAAF,CAAN,sDAAaO,IAAb,MAAsB,oBAAlD,EAAyE;AACxE,WAAO,4BAAC,yBAAD;AAAwB,MAAA,QAAQ,EAAGR,SAAS,CAAE,CAAF;AAA5C,MAAP;AACA;;AAED,SAAO,4BAAC,8BAAD;AAAuB,IAAA,SAAS,EAAGA,SAAnC;AAA+C,IAAA,MAAM,EAAGC;AAAxD,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ConvertToRegularBlocks from './convert-to-regular';\nimport ConvertToTemplatePart from './convert-to-template-part';\n\nexport default function TemplatePartConverter() {\n\tconst { clientIds, blocks } = useSelect( ( select ) => {\n\t\tconst { getSelectedBlockClientIds, getBlocksByClientId } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\treturn {\n\t\t\tclientIds: selectedBlockClientIds,\n\t\t\tblocks: getBlocksByClientId( selectedBlockClientIds ),\n\t\t};\n\t} );\n\n\t// Allow converting a single template part to standard blocks.\n\tif ( blocks.length === 1 && blocks[ 0 ]?.name === 'core/template-part' ) {\n\t\treturn <ConvertToRegularBlocks clientId={ clientIds[ 0 ] } />;\n\t}\n\n\treturn <ConvertToTemplatePart clientIds={ clientIds } blocks={ blocks } />;\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/template-part-converter/index.js"],"names":["TemplatePartConverter","clientIds","blocks","select","getSelectedBlockClientIds","getBlocksByClientId","blockEditorStore","selectedBlockClientIds","length","name"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AAVA;AACA;AACA;;AAIA;AACA;AACA;AAIe,SAASA,qBAAT,GAAiC;AAAA;;AAC/C,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA;AAAb,MAAwB,qBAAaC,MAAF,IAAc;AACtD,UAAM;AAAEC,MAAAA,yBAAF;AAA6BC,MAAAA;AAA7B,QAAqDF,MAAM,CAChEG,kBADgE,CAAjE;AAGA,UAAMC,sBAAsB,GAAGH,yBAAyB,EAAxD;AACA,WAAO;AACNH,MAAAA,SAAS,EAAEM,sBADL;AAENL,MAAAA,MAAM,EAAEG,mBAAmB,CAAEE,sBAAF;AAFrB,KAAP;AAIA,GAT6B,EAS3B,EAT2B,CAA9B,CAD+C,CAY/C;;AACA,MAAKL,MAAM,CAACM,MAAP,KAAkB,CAAlB,IAAuB,aAAAN,MAAM,CAAE,CAAF,CAAN,sDAAaO,IAAb,MAAsB,oBAAlD,EAAyE;AACxE,WAAO,4BAAC,yBAAD;AAAwB,MAAA,QAAQ,EAAGR,SAAS,CAAE,CAAF;AAA5C,MAAP;AACA;;AAED,SAAO,4BAAC,8BAAD;AAAuB,IAAA,SAAS,EAAGA,SAAnC;AAA+C,IAAA,MAAM,EAAGC;AAAxD,IAAP;AACA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as blockEditorStore } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport ConvertToRegularBlocks from './convert-to-regular';\nimport ConvertToTemplatePart from './convert-to-template-part';\n\nexport default function TemplatePartConverter() {\n\tconst { clientIds, blocks } = useSelect( ( select ) => {\n\t\tconst { getSelectedBlockClientIds, getBlocksByClientId } = select(\n\t\t\tblockEditorStore\n\t\t);\n\t\tconst selectedBlockClientIds = getSelectedBlockClientIds();\n\t\treturn {\n\t\t\tclientIds: selectedBlockClientIds,\n\t\t\tblocks: getBlocksByClientId( selectedBlockClientIds ),\n\t\t};\n\t}, [] );\n\n\t// Allow converting a single template part to standard blocks.\n\tif ( blocks.length === 1 && blocks[ 0 ]?.name === 'core/template-part' ) {\n\t\treturn <ConvertToRegularBlocks clientId={ clientIds[ 0 ] } />;\n\t}\n\n\treturn <ConvertToTemplatePart clientIds={ clientIds } blocks={ blocks } />;\n}\n"]}
@@ -93,6 +93,6 @@ function useCurrentPageContext() {
93
93
  }
94
94
 
95
95
  return null;
96
- });
96
+ }, []);
97
97
  }
98
98
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/url-query-controller/index.js"],"names":["URLQueryController","setTemplate","setTemplatePart","showHomepage","setPage","editSiteStore","url","window","location","href","postId","postType","context","pageContext","useCurrentPageContext","newUrl","history","replaceState","select","getEditedPostType","getEditedPostId","getPage","page","_postId","_postType"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,kBAAT,GAA8B;AAC5C,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA,eAAf;AAAgCC,IAAAA,YAAhC;AAA8CC,IAAAA;AAA9C,MAA0D,uBAC/DC,YAD+D,CAAhE,CAD4C,CAK5C;;AACA,0BAAW,MAAM;AAChB,UAAMC,GAAG,GAAGC,MAAM,CAACC,QAAP,CAAgBC,IAA5B;AACA,UAAMC,MAAM,GAAG,sBAAaJ,GAAb,EAAkB,QAAlB,CAAf;;AAEA,QAAK,CAAEI,MAAP,EAAgB;AACfP,MAAAA,YAAY;AACZ;AACA;;AAED,UAAMQ,QAAQ,GAAG,sBAAaL,GAAb,EAAkB,UAAlB,CAAjB;;AACA,QAAK,WAAWK,QAAX,IAAuB,WAAWA,QAAvC,EAAkD;AACjDP,MAAAA,OAAO,CAAE;AAAEQ,QAAAA,OAAO,EAAE;AAAED,UAAAA,QAAF;AAAYD,UAAAA;AAAZ;AAAX,OAAF,CAAP,CADiD,CACH;AAC9C,KAFD,MAEO,IAAK,kBAAkBC,QAAvB,EAAkC;AACxCV,MAAAA,WAAW,CAAES,MAAF,CAAX;AACA,KAFM,MAEA,IAAK,uBAAuBC,QAA5B,EAAuC;AAC7CT,MAAAA,eAAe,CAAEQ,MAAF,CAAf;AACA,KAFM,MAEA;AACNP,MAAAA,YAAY;AACZ;AACD,GAnBD,EAmBG,EAnBH,EAN4C,CA2B5C;;AACA,QAAMU,WAAW,GAAGC,qBAAqB,EAAzC;AACA,0BAAW,MAAM;AAChB,UAAMC,MAAM,GAAGF,WAAW,GACvB,uBAAcN,MAAM,CAACC,QAAP,CAAgBC,IAA9B,EAAoCI,WAApC,CADuB,GAEvB,0BAAiBN,MAAM,CAACC,QAAP,CAAgBC,IAAjC,EAAuC,UAAvC,EAAmD,QAAnD,CAFH;AAIAF,IAAAA,MAAM,CAACS,OAAP,CAAeC,YAAf,CAA6B,EAA7B,EAAiC,EAAjC,EAAqCF,MAArC;AACA,GAND,EAMG,CAAEF,WAAF,CANH;AAQA,SAAO,IAAP;AACA;;AAED,SAASC,qBAAT,GAAiC;AAChC,SAAO,qBAAaI,MAAF,IAAc;AAAA;;AAC/B,UAAM;AAAEC,MAAAA,iBAAF;AAAqBC,MAAAA,eAArB;AAAsCC,MAAAA;AAAtC,QAAkDH,MAAM,CAC7Db,YAD6D,CAA9D;AAIA,UAAMiB,IAAI,GAAGD,OAAO,EAApB;;AACA,QAAIE,OAAO,GAAGH,eAAe,EAA7B;AAAA,QACCI,SAAS,GAAGL,iBAAiB,EAD9B,CAN+B,CAQ/B;AACA;AACA;;;AACA,QAAKG,IAAI,SAAJ,IAAAA,IAAI,WAAJ,qBAAAA,IAAI,CAAEV,OAAN,wDAAeF,MAAf,IAAyBY,IAAzB,aAAyBA,IAAzB,iCAAyBA,IAAI,CAAEV,OAA/B,2CAAyB,eAAeD,QAA7C,EAAwD;AACvDY,MAAAA,OAAO,GAAGD,IAAI,CAACV,OAAL,CAAaF,MAAvB;AACAc,MAAAA,SAAS,GAAGF,IAAI,CAACV,OAAL,CAAaD,QAAzB;AACA;;AAED,QAAKY,OAAO,IAAIC,SAAhB,EAA4B;AAC3B,aAAO;AAAEd,QAAAA,MAAM,EAAEa,OAAV;AAAmBZ,QAAAA,QAAQ,EAAEa;AAA7B,OAAP;AACA;;AAED,WAAO,IAAP;AACA,GArBM,CAAP;AAsBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getQueryArg, addQueryArgs, removeQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\n\nexport default function URLQueryController() {\n\tconst { setTemplate, setTemplatePart, showHomepage, setPage } = useDispatch(\n\t\teditSiteStore\n\t);\n\n\t// Set correct entity on load.\n\tuseEffect( () => {\n\t\tconst url = window.location.href;\n\t\tconst postId = getQueryArg( url, 'postId' );\n\n\t\tif ( ! postId ) {\n\t\t\tshowHomepage();\n\t\t\treturn;\n\t\t}\n\n\t\tconst postType = getQueryArg( url, 'postType' );\n\t\tif ( 'page' === postType || 'post' === postType ) {\n\t\t\tsetPage( { context: { postType, postId } } ); // Resolves correct template based on ID.\n\t\t} else if ( 'wp_template' === postType ) {\n\t\t\tsetTemplate( postId );\n\t\t} else if ( 'wp_template_part' === postType ) {\n\t\t\tsetTemplatePart( postId );\n\t\t} else {\n\t\t\tshowHomepage();\n\t\t}\n\t}, [] );\n\n\t// Update page URL when context changes.\n\tconst pageContext = useCurrentPageContext();\n\tuseEffect( () => {\n\t\tconst newUrl = pageContext\n\t\t\t? addQueryArgs( window.location.href, pageContext )\n\t\t\t: removeQueryArgs( window.location.href, 'postType', 'postId' );\n\n\t\twindow.history.replaceState( {}, '', newUrl );\n\t}, [ pageContext ] );\n\n\treturn null;\n}\n\nfunction useCurrentPageContext() {\n\treturn useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId, getPage } = select(\n\t\t\teditSiteStore\n\t\t);\n\n\t\tconst page = getPage();\n\t\tlet _postId = getEditedPostId(),\n\t\t\t_postType = getEditedPostType();\n\t\t// This doesn't seem right to me,\n\t\t// we shouldn't be using the \"page\" and the \"template\" in the same way.\n\t\t// This need to be investigated.\n\t\tif ( page?.context?.postId && page?.context?.postType ) {\n\t\t\t_postId = page.context.postId;\n\t\t\t_postType = page.context.postType;\n\t\t}\n\n\t\tif ( _postId && _postType ) {\n\t\t\treturn { postId: _postId, postType: _postType };\n\t\t}\n\n\t\treturn null;\n\t} );\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/url-query-controller/index.js"],"names":["URLQueryController","setTemplate","setTemplatePart","showHomepage","setPage","editSiteStore","url","window","location","href","postId","postType","context","pageContext","useCurrentPageContext","newUrl","history","replaceState","select","getEditedPostType","getEditedPostId","getPage","page","_postId","_postType"],"mappings":";;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,kBAAT,GAA8B;AAC5C,QAAM;AAAEC,IAAAA,WAAF;AAAeC,IAAAA,eAAf;AAAgCC,IAAAA,YAAhC;AAA8CC,IAAAA;AAA9C,MAA0D,uBAC/DC,YAD+D,CAAhE,CAD4C,CAK5C;;AACA,0BAAW,MAAM;AAChB,UAAMC,GAAG,GAAGC,MAAM,CAACC,QAAP,CAAgBC,IAA5B;AACA,UAAMC,MAAM,GAAG,sBAAaJ,GAAb,EAAkB,QAAlB,CAAf;;AAEA,QAAK,CAAEI,MAAP,EAAgB;AACfP,MAAAA,YAAY;AACZ;AACA;;AAED,UAAMQ,QAAQ,GAAG,sBAAaL,GAAb,EAAkB,UAAlB,CAAjB;;AACA,QAAK,WAAWK,QAAX,IAAuB,WAAWA,QAAvC,EAAkD;AACjDP,MAAAA,OAAO,CAAE;AAAEQ,QAAAA,OAAO,EAAE;AAAED,UAAAA,QAAF;AAAYD,UAAAA;AAAZ;AAAX,OAAF,CAAP,CADiD,CACH;AAC9C,KAFD,MAEO,IAAK,kBAAkBC,QAAvB,EAAkC;AACxCV,MAAAA,WAAW,CAAES,MAAF,CAAX;AACA,KAFM,MAEA,IAAK,uBAAuBC,QAA5B,EAAuC;AAC7CT,MAAAA,eAAe,CAAEQ,MAAF,CAAf;AACA,KAFM,MAEA;AACNP,MAAAA,YAAY;AACZ;AACD,GAnBD,EAmBG,EAnBH,EAN4C,CA2B5C;;AACA,QAAMU,WAAW,GAAGC,qBAAqB,EAAzC;AACA,0BAAW,MAAM;AAChB,UAAMC,MAAM,GAAGF,WAAW,GACvB,uBAAcN,MAAM,CAACC,QAAP,CAAgBC,IAA9B,EAAoCI,WAApC,CADuB,GAEvB,0BAAiBN,MAAM,CAACC,QAAP,CAAgBC,IAAjC,EAAuC,UAAvC,EAAmD,QAAnD,CAFH;AAIAF,IAAAA,MAAM,CAACS,OAAP,CAAeC,YAAf,CAA6B,EAA7B,EAAiC,EAAjC,EAAqCF,MAArC;AACA,GAND,EAMG,CAAEF,WAAF,CANH;AAQA,SAAO,IAAP;AACA;;AAED,SAASC,qBAAT,GAAiC;AAChC,SAAO,qBAAaI,MAAF,IAAc;AAAA;;AAC/B,UAAM;AAAEC,MAAAA,iBAAF;AAAqBC,MAAAA,eAArB;AAAsCC,MAAAA;AAAtC,QAAkDH,MAAM,CAC7Db,YAD6D,CAA9D;AAIA,UAAMiB,IAAI,GAAGD,OAAO,EAApB;;AACA,QAAIE,OAAO,GAAGH,eAAe,EAA7B;AAAA,QACCI,SAAS,GAAGL,iBAAiB,EAD9B,CAN+B,CAQ/B;AACA;AACA;;;AACA,QAAKG,IAAI,SAAJ,IAAAA,IAAI,WAAJ,qBAAAA,IAAI,CAAEV,OAAN,wDAAeF,MAAf,IAAyBY,IAAzB,aAAyBA,IAAzB,iCAAyBA,IAAI,CAAEV,OAA/B,2CAAyB,eAAeD,QAA7C,EAAwD;AACvDY,MAAAA,OAAO,GAAGD,IAAI,CAACV,OAAL,CAAaF,MAAvB;AACAc,MAAAA,SAAS,GAAGF,IAAI,CAACV,OAAL,CAAaD,QAAzB;AACA;;AAED,QAAKY,OAAO,IAAIC,SAAhB,EAA4B;AAC3B,aAAO;AAAEd,QAAAA,MAAM,EAAEa,OAAV;AAAmBZ,QAAAA,QAAQ,EAAEa;AAA7B,OAAP;AACA;;AAED,WAAO,IAAP;AACA,GArBM,EAqBJ,EArBI,CAAP;AAsBA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { getQueryArg, addQueryArgs, removeQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\n\nexport default function URLQueryController() {\n\tconst { setTemplate, setTemplatePart, showHomepage, setPage } = useDispatch(\n\t\teditSiteStore\n\t);\n\n\t// Set correct entity on load.\n\tuseEffect( () => {\n\t\tconst url = window.location.href;\n\t\tconst postId = getQueryArg( url, 'postId' );\n\n\t\tif ( ! postId ) {\n\t\t\tshowHomepage();\n\t\t\treturn;\n\t\t}\n\n\t\tconst postType = getQueryArg( url, 'postType' );\n\t\tif ( 'page' === postType || 'post' === postType ) {\n\t\t\tsetPage( { context: { postType, postId } } ); // Resolves correct template based on ID.\n\t\t} else if ( 'wp_template' === postType ) {\n\t\t\tsetTemplate( postId );\n\t\t} else if ( 'wp_template_part' === postType ) {\n\t\t\tsetTemplatePart( postId );\n\t\t} else {\n\t\t\tshowHomepage();\n\t\t}\n\t}, [] );\n\n\t// Update page URL when context changes.\n\tconst pageContext = useCurrentPageContext();\n\tuseEffect( () => {\n\t\tconst newUrl = pageContext\n\t\t\t? addQueryArgs( window.location.href, pageContext )\n\t\t\t: removeQueryArgs( window.location.href, 'postType', 'postId' );\n\n\t\twindow.history.replaceState( {}, '', newUrl );\n\t}, [ pageContext ] );\n\n\treturn null;\n}\n\nfunction useCurrentPageContext() {\n\treturn useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId, getPage } = select(\n\t\t\teditSiteStore\n\t\t);\n\n\t\tconst page = getPage();\n\t\tlet _postId = getEditedPostId(),\n\t\t\t_postType = getEditedPostType();\n\t\t// This doesn't seem right to me,\n\t\t// we shouldn't be using the \"page\" and the \"template\" in the same way.\n\t\t// This need to be investigated.\n\t\tif ( page?.context?.postId && page?.context?.postType ) {\n\t\t\t_postId = page.context.postId;\n\t\t\t_postType = page.context.postType;\n\t\t}\n\n\t\tif ( _postId && _postType ) {\n\t\t\treturn { postId: _postId, postType: _postType };\n\t\t}\n\n\t\treturn null;\n\t}, [] );\n}\n"]}
package/build/index.js CHANGED
@@ -19,6 +19,24 @@ Object.defineProperty(exports, "__experimentalNavigationToggle", {
19
19
  return _navigationToggle.default;
20
20
  }
21
21
  });
22
+ Object.defineProperty(exports, "PluginSidebar", {
23
+ enumerable: true,
24
+ get: function () {
25
+ return _pluginSidebar.default;
26
+ }
27
+ });
28
+ Object.defineProperty(exports, "PluginSidebarMoreMenuItem", {
29
+ enumerable: true,
30
+ get: function () {
31
+ return _pluginSidebarMoreMenuItem.default;
32
+ }
33
+ });
34
+ Object.defineProperty(exports, "PluginMoreMenuItem", {
35
+ enumerable: true,
36
+ get: function () {
37
+ return _pluginMoreMenuItem.default;
38
+ }
39
+ });
22
40
 
23
41
  var _element = require("@wordpress/element");
24
42
 
@@ -38,6 +56,12 @@ var _mainDashboardButton = _interopRequireDefault(require("./components/main-das
38
56
 
39
57
  var _navigationToggle = _interopRequireDefault(require("./components/navigation-sidebar/navigation-toggle"));
40
58
 
59
+ var _pluginSidebar = _interopRequireDefault(require("./components/sidebar/plugin-sidebar"));
60
+
61
+ var _pluginSidebarMoreMenuItem = _interopRequireDefault(require("./components/header/plugin-sidebar-more-menu-item"));
62
+
63
+ var _pluginMoreMenuItem = _interopRequireDefault(require("./components/header/plugin-more-menu-item"));
64
+
41
65
  /**
42
66
  * WordPress dependencies
43
67
  */
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/index.js"],"names":["reinitializeEditor","target","settings","reboot","bind","initialize","id","__experimentalFetchLinkSuggestions","search","searchOptions","__experimentalSpotlightEntityBlocks","document","getElementById","process","env","GUTENBERG_PHASE","enableFSEBlocks"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOA;;AAJA;;AAKA;;AAKA;;AACA;;AACA;;AACA;;AA8CA;;AACA;;AA/DA;AACA;AACA;;AAQA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,kBAAT,CAA6BC,MAA7B,EAAqCC,QAArC,EAAgD;AACtD,uCAAwBD,MAAxB;AACA,QAAME,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;AACA,uBACC,4BAAC,eAAD;AAAQ,IAAA,eAAe,EAAGA,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADD,EAECF,MAFD;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASI,UAAT,CAAqBC,EAArB,EAAyBJ,QAAzB,EAAoC;AAC1CA,EAAAA,QAAQ,CAACK,kCAAT,GAA8C,CAAEC,MAAF,EAAUC,aAAV,KAC7C,kDAAsBD,MAAtB,EAA8BC,aAA9B,EAA6CP,QAA7C,CADD;;AAEAA,EAAAA,QAAQ,CAACQ,mCAAT,GAA+C,CAAE,oBAAF,CAA/C;AAEA,QAAMT,MAAM,GAAGU,QAAQ,CAACC,cAAT,CAAyBN,EAAzB,CAAf;AACA,QAAMH,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;AAEA;;AACA,MAAKW,OAAO,CAACC,GAAR,CAAYC,eAAZ,KAAgC,CAArC,EAAyC;AACxC,oEAA8C;AAC7CC,MAAAA,eAAe,EAAE;AAD4B,KAA9C;AAGA;;AAED,uBACC,4BAAC,eAAD;AAAQ,IAAA,eAAe,EAAGd,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADD,EAECF,MAFD;AAIA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tregisterCoreBlocks,\n\t__experimentalRegisterExperimentalCoreBlocks,\n} from '@wordpress/block-library';\nimport { render, unmountComponentAtNode } from '@wordpress/element';\nimport { __experimentalFetchLinkSuggestions as fetchLinkSuggestions } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport './plugins';\nimport './hooks';\nimport './store';\nimport Editor from './components/editor';\n\n/**\n * Reinitializes the editor after the user chooses to reboot the editor after\n * an unhandled error occurs, replacing previously mounted editor element using\n * an initial state from prior to the crash.\n *\n * @param {Element} target DOM node in which editor is rendered.\n * @param {?Object} settings Editor settings object.\n */\nexport function reinitializeEditor( target, settings ) {\n\tunmountComponentAtNode( target );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes the site editor screen.\n *\n * @param {string} id ID of the root element to render the screen in.\n * @param {Object} settings Editor settings.\n */\nexport function initialize( id, settings ) {\n\tsettings.__experimentalFetchLinkSuggestions = ( search, searchOptions ) =>\n\t\tfetchLinkSuggestions( search, searchOptions, settings );\n\tsettings.__experimentalSpotlightEntityBlocks = [ 'core/template-part' ];\n\n\tconst target = document.getElementById( id );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\n\tregisterCoreBlocks();\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t__experimentalRegisterExperimentalCoreBlocks( {\n\t\t\tenableFSEBlocks: true,\n\t\t} );\n\t}\n\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\nexport { default as __experimentalMainDashboardButton } from './components/main-dashboard-button';\nexport { default as __experimentalNavigationToggle } from './components/navigation-sidebar/navigation-toggle';\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/index.js"],"names":["reinitializeEditor","target","settings","reboot","bind","initialize","id","__experimentalFetchLinkSuggestions","search","searchOptions","__experimentalSpotlightEntityBlocks","document","getElementById","process","env","GUTENBERG_PHASE","enableFSEBlocks"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA;;AAJA;;AAKA;;AAKA;;AACA;;AACA;;AACA;;AA8CA;;AACA;;AACA;;AACA;;AACA;;AAlEA;AACA;AACA;;AAQA;AACA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,SAASA,kBAAT,CAA6BC,MAA7B,EAAqCC,QAArC,EAAgD;AACtD,uCAAwBD,MAAxB;AACA,QAAME,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;AACA,uBACC,4BAAC,eAAD;AAAQ,IAAA,eAAe,EAAGA,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADD,EAECF,MAFD;AAIA;AAED;AACA;AACA;AACA;AACA;AACA;;;AACO,SAASI,UAAT,CAAqBC,EAArB,EAAyBJ,QAAzB,EAAoC;AAC1CA,EAAAA,QAAQ,CAACK,kCAAT,GAA8C,CAAEC,MAAF,EAAUC,aAAV,KAC7C,kDAAsBD,MAAtB,EAA8BC,aAA9B,EAA6CP,QAA7C,CADD;;AAEAA,EAAAA,QAAQ,CAACQ,mCAAT,GAA+C,CAAE,oBAAF,CAA/C;AAEA,QAAMT,MAAM,GAAGU,QAAQ,CAACC,cAAT,CAAyBN,EAAzB,CAAf;AACA,QAAMH,MAAM,GAAGH,kBAAkB,CAACI,IAAnB,CAAyB,IAAzB,EAA+BH,MAA/B,EAAuCC,QAAvC,CAAf;AAEA;;AACA,MAAKW,OAAO,CAACC,GAAR,CAAYC,eAAZ,KAAgC,CAArC,EAAyC;AACxC,oEAA8C;AAC7CC,MAAAA,eAAe,EAAE;AAD4B,KAA9C;AAGA;;AAED,uBACC,4BAAC,eAAD;AAAQ,IAAA,eAAe,EAAGd,QAA1B;AAAqC,IAAA,OAAO,EAAGC;AAA/C,IADD,EAECF,MAFD;AAIA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tregisterCoreBlocks,\n\t__experimentalRegisterExperimentalCoreBlocks,\n} from '@wordpress/block-library';\nimport { render, unmountComponentAtNode } from '@wordpress/element';\nimport { __experimentalFetchLinkSuggestions as fetchLinkSuggestions } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport './plugins';\nimport './hooks';\nimport './store';\nimport Editor from './components/editor';\n\n/**\n * Reinitializes the editor after the user chooses to reboot the editor after\n * an unhandled error occurs, replacing previously mounted editor element using\n * an initial state from prior to the crash.\n *\n * @param {Element} target DOM node in which editor is rendered.\n * @param {?Object} settings Editor settings object.\n */\nexport function reinitializeEditor( target, settings ) {\n\tunmountComponentAtNode( target );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\n/**\n * Initializes the site editor screen.\n *\n * @param {string} id ID of the root element to render the screen in.\n * @param {Object} settings Editor settings.\n */\nexport function initialize( id, settings ) {\n\tsettings.__experimentalFetchLinkSuggestions = ( search, searchOptions ) =>\n\t\tfetchLinkSuggestions( search, searchOptions, settings );\n\tsettings.__experimentalSpotlightEntityBlocks = [ 'core/template-part' ];\n\n\tconst target = document.getElementById( id );\n\tconst reboot = reinitializeEditor.bind( null, target, settings );\n\n\tregisterCoreBlocks();\n\tif ( process.env.GUTENBERG_PHASE === 2 ) {\n\t\t__experimentalRegisterExperimentalCoreBlocks( {\n\t\t\tenableFSEBlocks: true,\n\t\t} );\n\t}\n\n\trender(\n\t\t<Editor initialSettings={ settings } onError={ reboot } />,\n\t\ttarget\n\t);\n}\n\nexport { default as __experimentalMainDashboardButton } from './components/main-dashboard-button';\nexport { default as __experimentalNavigationToggle } from './components/navigation-sidebar/navigation-toggle';\nexport { default as PluginSidebar } from './components/sidebar/plugin-sidebar';\nexport { default as PluginSidebarMoreMenuItem } from './components/header/plugin-sidebar-more-menu-item';\nexport { default as PluginMoreMenuItem } from './components/header/plugin-more-menu-item';\n"]}
@@ -11,8 +11,10 @@ exports.setTemplate = setTemplate;
11
11
  exports.addTemplate = addTemplate;
12
12
  exports.removeTemplate = removeTemplate;
13
13
  exports.setTemplatePart = setTemplatePart;
14
+ exports.pushTemplatePart = pushTemplatePart;
14
15
  exports.setHomeTemplateId = setHomeTemplateId;
15
16
  exports.setPage = setPage;
17
+ exports.goBack = goBack;
16
18
  exports.showHomepage = showHomepage;
17
19
  exports.setNavigationPanelActiveMenu = setNavigationPanelActiveMenu;
18
20
  exports.openNavigationPanelToMenu = openNavigationPanelToMenu;
@@ -21,6 +23,8 @@ exports.setIsInserterOpened = setIsInserterOpened;
21
23
  exports.updateSettings = updateSettings;
22
24
  exports.setIsListViewOpened = setIsListViewOpened;
23
25
  exports.revertTemplate = revertTemplate;
26
+ exports.openGeneralSidebar = openGeneralSidebar;
27
+ exports.closeGeneralSidebar = closeGeneralSidebar;
24
28
 
25
29
  var _blocks = require("@wordpress/blocks");
26
30
 
@@ -36,6 +40,8 @@ var _notices = require("@wordpress/notices");
36
40
 
37
41
  var _coreData = require("@wordpress/core-data");
38
42
 
43
+ var _interface = require("@wordpress/interface");
44
+
39
45
  var _constants = require("./constants");
40
46
 
41
47
  var _isTemplateRevertable = _interopRequireDefault(require("../utils/is-template-revertable"));
@@ -151,7 +157,7 @@ function* removeTemplate(templateId) {
151
157
  /**
152
158
  * Returns an action object used to set a template part.
153
159
  *
154
- * @param {number} templatePartId The template part ID.
160
+ * @param {string} templatePartId The template part ID.
155
161
  *
156
162
  * @return {Object} Action object.
157
163
  */
@@ -163,6 +169,21 @@ function setTemplatePart(templatePartId) {
163
169
  templatePartId
164
170
  };
165
171
  }
172
+ /**
173
+ * Returns an action object used to push a template part to navigation history.
174
+ *
175
+ * @param {string} templatePartId The template part ID.
176
+ *
177
+ * @return {Object} Action object.
178
+ */
179
+
180
+
181
+ function pushTemplatePart(templatePartId) {
182
+ return {
183
+ type: 'PUSH_TEMPLATE_PART',
184
+ templatePartId
185
+ };
186
+ }
166
187
  /**
167
188
  * Updates the homeTemplateId state with the templateId of the page resolved
168
189
  * from the given path.
@@ -214,6 +235,16 @@ function* setPage(page) {
214
235
  };
215
236
  return templateId;
216
237
  }
238
+ /**
239
+ * Go back to the current editing page.
240
+ */
241
+
242
+
243
+ function goBack() {
244
+ return {
245
+ type: 'GO_BACK'
246
+ };
247
+ }
217
248
  /**
218
249
  * Displays the site homepage for editing in the editor.
219
250
  */
@@ -417,4 +448,26 @@ function* revertTemplate(template) {
417
448
  });
418
449
  }
419
450
  }
451
+ /**
452
+ * Returns an action object used in signalling that the user opened an editor sidebar.
453
+ *
454
+ * @param {?string} name Sidebar name to be opened.
455
+ *
456
+ * @yield {Object} Action object.
457
+ */
458
+
459
+
460
+ function* openGeneralSidebar(name) {
461
+ yield _data.controls.dispatch(_interface.store, 'enableComplementaryArea', _constants.STORE_NAME, name);
462
+ }
463
+ /**
464
+ * Returns an action object signalling that the user closed the sidebar.
465
+ *
466
+ * @yield {Object} Action object.
467
+ */
468
+
469
+
470
+ function* closeGeneralSidebar() {
471
+ yield _data.controls.dispatch(_interface.store, 'disableComplementaryArea', _constants.STORE_NAME);
472
+ }
420
473
  //# sourceMappingURL=actions.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/store/actions.js"],"names":["toggleFeature","feature","type","__experimentalSetPreviewDeviceType","deviceType","setTemplate","templateId","templateSlug","pageContext","template","controls","resolveSelect","coreStore","slug","page","context","addTemplate","newTemplate","dispatch","content","id","blocks","undoIgnore","removeTemplate","path","method","select","editSiteStoreName","setTemplatePart","templatePartId","setHomeTemplateId","homeTemplateId","setPage","postId","entity","postType","link","showHomepage","show_on_front","showOnFront","page_on_front","frontpageId","siteUrl","homeTemplate","setNavigationPanelActiveMenu","menu","openNavigationPanelToMenu","setIsNavigationPanelOpened","isOpen","setIsInserterOpened","value","updateSettings","settings","setIsListViewOpened","revertTemplate","noticesStore","templateEntity","fileTemplatePath","baseURL","source","fileTemplate","serializeBlocks","blocksForSerialization","edited","raw","undoRevert","editEntityRecord","actions","label","onClick","error","errorMessage","message","code"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { controls, dispatch } from '@wordpress/data';\nimport { apiFetch } from '@wordpress/data-controls';\nimport { addQueryArgs, getPathAndQueryString } from '@wordpress/url';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport { STORE_NAME as editSiteStoreName } from './constants';\nimport isTemplateRevertable from '../utils/is-template-revertable';\n\n/**\n * Returns an action object used to toggle a feature flag.\n *\n * @param {string} feature Feature name.\n *\n * @return {Object} Action object.\n */\nexport function toggleFeature( feature ) {\n\treturn {\n\t\ttype: 'TOGGLE_FEATURE',\n\t\tfeature,\n\t};\n}\n\n/**\n * Returns an action object used to toggle the width of the editing canvas.\n *\n * @param {string} deviceType\n *\n * @return {Object} Action object.\n */\nexport function __experimentalSetPreviewDeviceType( deviceType ) {\n\treturn {\n\t\ttype: 'SET_PREVIEW_DEVICE_TYPE',\n\t\tdeviceType,\n\t};\n}\n\n/**\n * Returns an action object used to set a template.\n *\n * @param {number} templateId The template ID.\n * @param {string} templateSlug The template slug.\n * @return {Object} Action object.\n */\nexport function* setTemplate( templateId, templateSlug ) {\n\tconst pageContext = { templateSlug };\n\tif ( ! templateSlug ) {\n\t\tconst template = yield controls.resolveSelect(\n\t\t\tcoreStore,\n\t\t\t'getEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplateId\n\t\t);\n\t\tpageContext.templateSlug = template?.slug;\n\t}\n\treturn {\n\t\ttype: 'SET_TEMPLATE',\n\t\ttemplateId,\n\t\tpage: { context: pageContext },\n\t};\n}\n\n/**\n * Adds a new template, and sets it as the current template.\n *\n * @param {Object} template The template.\n *\n * @return {Object} Action object used to set the current template.\n */\nexport function* addTemplate( template ) {\n\tconst newTemplate = yield controls.dispatch(\n\t\tcoreStore,\n\t\t'saveEntityRecord',\n\t\t'postType',\n\t\t'wp_template',\n\t\ttemplate\n\t);\n\n\tif ( template.content ) {\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\tnewTemplate.id,\n\t\t\t{ blocks: parse( template.content ) },\n\t\t\t{ undoIgnore: true }\n\t\t);\n\t}\n\n\treturn {\n\t\ttype: 'SET_TEMPLATE',\n\t\ttemplateId: newTemplate.id,\n\t\tpage: { context: { templateSlug: newTemplate.slug } },\n\t};\n}\n\n/**\n * Removes a template, and updates the current page and template.\n *\n * @param {number} templateId The template ID.\n */\nexport function* removeTemplate( templateId ) {\n\tyield apiFetch( {\n\t\tpath: `/wp/v2/templates/${ templateId }`,\n\t\tmethod: 'DELETE',\n\t} );\n\tconst page = yield controls.select( editSiteStoreName, 'getPage' );\n\tyield controls.dispatch( editSiteStoreName, 'setPage', page );\n}\n\n/**\n * Returns an action object used to set a template part.\n *\n * @param {number} templatePartId The template part ID.\n *\n * @return {Object} Action object.\n */\nexport function setTemplatePart( templatePartId ) {\n\treturn {\n\t\ttype: 'SET_TEMPLATE_PART',\n\t\ttemplatePartId,\n\t};\n}\n\n/**\n * Updates the homeTemplateId state with the templateId of the page resolved\n * from the given path.\n *\n * @param {number} homeTemplateId The template ID for the homepage.\n */\nexport function setHomeTemplateId( homeTemplateId ) {\n\treturn {\n\t\ttype: 'SET_HOME_TEMPLATE',\n\t\thomeTemplateId,\n\t};\n}\n\n/**\n * Resolves the template for a page and displays both. If no path is given, attempts\n * to use the postId to generate a path like `?p=${ postId }`.\n *\n * @param {Object} page The page object.\n * @param {string} page.type The page type.\n * @param {string} page.slug The page slug.\n * @param {string} page.path The page path.\n * @param {Object} page.context The page context.\n *\n * @return {number} The resolved template ID for the page route.\n */\nexport function* setPage( page ) {\n\tif ( ! page.path && page.context?.postId ) {\n\t\tconst entity = yield controls.resolveSelect(\n\t\t\tcoreStore,\n\t\t\t'getEntityRecord',\n\t\t\t'postType',\n\t\t\tpage.context.postType || 'post',\n\t\t\tpage.context.postId\n\t\t);\n\n\t\tpage.path = getPathAndQueryString( entity.link );\n\t}\n\tconst { id: templateId, slug: templateSlug } = yield controls.resolveSelect(\n\t\tcoreStore,\n\t\t'__experimentalGetTemplateForLink',\n\t\tpage.path\n\t);\n\tyield {\n\t\ttype: 'SET_PAGE',\n\t\tpage: ! templateSlug\n\t\t\t? page\n\t\t\t: {\n\t\t\t\t\t...page,\n\t\t\t\t\tcontext: {\n\t\t\t\t\t\t...page.context,\n\t\t\t\t\t\ttemplateSlug,\n\t\t\t\t\t},\n\t\t\t },\n\t\ttemplateId,\n\t};\n\treturn templateId;\n}\n\n/**\n * Displays the site homepage for editing in the editor.\n */\nexport function* showHomepage() {\n\tconst {\n\t\tshow_on_front: showOnFront,\n\t\tpage_on_front: frontpageId,\n\t} = yield controls.resolveSelect(\n\t\tcoreStore,\n\t\t'getEntityRecord',\n\t\t'root',\n\t\t'site'\n\t);\n\n\tconst { siteUrl } = yield controls.select(\n\t\teditSiteStoreName,\n\t\t'getSettings'\n\t);\n\n\tconst page = {\n\t\tpath: siteUrl,\n\t\tcontext:\n\t\t\tshowOnFront === 'page'\n\t\t\t\t? {\n\t\t\t\t\t\tpostType: 'page',\n\t\t\t\t\t\tpostId: frontpageId,\n\t\t\t\t }\n\t\t\t\t: {},\n\t};\n\n\tconst homeTemplate = yield* setPage( page );\n\tyield setHomeTemplateId( homeTemplate );\n}\n\n/**\n * Returns an action object used to set the active navigation panel menu.\n *\n * @param {string} menu Menu prop of active menu.\n *\n * @return {Object} Action object.\n */\nexport function setNavigationPanelActiveMenu( menu ) {\n\treturn {\n\t\ttype: 'SET_NAVIGATION_PANEL_ACTIVE_MENU',\n\t\tmenu,\n\t};\n}\n\n/**\n * Opens the navigation panel and sets its active menu at the same time.\n *\n * @param {string} menu Identifies the menu to open.\n */\nexport function openNavigationPanelToMenu( menu ) {\n\treturn {\n\t\ttype: 'OPEN_NAVIGATION_PANEL_TO_MENU',\n\t\tmenu,\n\t};\n}\n\n/**\n * Sets whether the navigation panel should be open.\n *\n * @param {boolean} isOpen If true, opens the nav panel. If false, closes it. It\n * does not toggle the state, but sets it directly.\n */\nexport function setIsNavigationPanelOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_NAVIGATION_PANEL_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to update the settings.\n *\n * @param {Object} settings New settings.\n *\n * @return {Object} Action object.\n */\nexport function updateSettings( settings ) {\n\treturn {\n\t\ttype: 'UPDATE_SETTINGS',\n\t\tsettings,\n\t};\n}\n\n/**\n * Sets whether the list view panel should be open.\n *\n * @param {boolean} isOpen If true, opens the list view. If false, closes it.\n * It does not toggle the state, but sets it directly.\n */\nexport function setIsListViewOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n */\nexport function* revertTemplate( template ) {\n\tif ( ! isTemplateRevertable( template ) ) {\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createErrorNotice',\n\t\t\t__( 'This template is not revertable.' ),\n\t\t\t{ type: 'snackbar' }\n\t\t);\n\t\treturn;\n\t}\n\n\ttry {\n\t\tconst templateEntity = yield controls.select(\n\t\t\tcoreStore,\n\t\t\t'getEntity',\n\t\t\t'postType',\n\t\t\ttemplate.type\n\t\t);\n\t\tif ( ! templateEntity ) {\n\t\t\tyield controls.dispatch(\n\t\t\t\tnoticesStore,\n\t\t\t\t'createErrorNotice',\n\t\t\t\t__(\n\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t`${ templateEntity.baseURL }/${ template.id }`,\n\t\t\t{ context: 'edit', source: 'theme' }\n\t\t);\n\t\tconst fileTemplate = yield apiFetch( { path: fileTemplatePath } );\n\t\tif ( ! fileTemplate ) {\n\t\t\tyield controls.dispatch(\n\t\t\t\tnoticesStore,\n\t\t\t\t'createErrorNotice',\n\t\t\t\t__(\n\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tconst serializeBlocks = ( { blocks: blocksForSerialization = [] } ) =>\n\t\t\t__unstableSerializeAndClean( blocksForSerialization );\n\t\tconst edited = yield controls.select(\n\t\t\tcoreStore,\n\t\t\t'getEditedEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplate.id\n\t\t);\n\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t// the revert in the header toolbar correctly.\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplate.id,\n\t\t\t{\n\t\t\t\tcontent: serializeBlocks, // required to make the `undo` behave correctly\n\t\t\t\tblocks: edited.blocks, // required to revert the blocks in the editor\n\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t},\n\t\t\t{\n\t\t\t\tundoIgnore: true, // required to merge this edit with the last undo level\n\t\t\t}\n\t\t);\n\n\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\tfileTemplate.id,\n\t\t\t{\n\t\t\t\tcontent: serializeBlocks,\n\t\t\t\tblocks,\n\t\t\t\tsource: 'theme',\n\t\t\t}\n\t\t);\n\n\t\tconst undoRevert = async () => {\n\t\t\tawait dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\tedited.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\tsource: 'custom',\n\t\t\t\t}\n\t\t\t);\n\t\t};\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createSuccessNotice',\n\t\t\t__( 'Template reverted.' ),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tactions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t}\n\t\t);\n\t} catch ( error ) {\n\t\tconst errorMessage =\n\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t? error.message\n\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createErrorNotice',\n\t\t\terrorMessage,\n\t\t\t{ type: 'snackbar' }\n\t\t);\n\t}\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/store/actions.js"],"names":["toggleFeature","feature","type","__experimentalSetPreviewDeviceType","deviceType","setTemplate","templateId","templateSlug","pageContext","template","controls","resolveSelect","coreStore","slug","page","context","addTemplate","newTemplate","dispatch","content","id","blocks","undoIgnore","removeTemplate","path","method","select","editSiteStoreName","setTemplatePart","templatePartId","pushTemplatePart","setHomeTemplateId","homeTemplateId","setPage","postId","entity","postType","link","goBack","showHomepage","show_on_front","showOnFront","page_on_front","frontpageId","siteUrl","homeTemplate","setNavigationPanelActiveMenu","menu","openNavigationPanelToMenu","setIsNavigationPanelOpened","isOpen","setIsInserterOpened","value","updateSettings","settings","setIsListViewOpened","revertTemplate","noticesStore","templateEntity","fileTemplatePath","baseURL","source","fileTemplate","serializeBlocks","blocksForSerialization","edited","raw","undoRevert","editEntityRecord","actions","label","onClick","error","errorMessage","message","code","openGeneralSidebar","name","interfaceStore","closeGeneralSidebar"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { parse, __unstableSerializeAndClean } from '@wordpress/blocks';\nimport { controls, dispatch } from '@wordpress/data';\nimport { apiFetch } from '@wordpress/data-controls';\nimport { addQueryArgs, getPathAndQueryString } from '@wordpress/url';\nimport { __ } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as interfaceStore } from '@wordpress/interface';\n\n/**\n * Internal dependencies\n */\nimport { STORE_NAME as editSiteStoreName } from './constants';\nimport isTemplateRevertable from '../utils/is-template-revertable';\n\n/**\n * Returns an action object used to toggle a feature flag.\n *\n * @param {string} feature Feature name.\n *\n * @return {Object} Action object.\n */\nexport function toggleFeature( feature ) {\n\treturn {\n\t\ttype: 'TOGGLE_FEATURE',\n\t\tfeature,\n\t};\n}\n\n/**\n * Returns an action object used to toggle the width of the editing canvas.\n *\n * @param {string} deviceType\n *\n * @return {Object} Action object.\n */\nexport function __experimentalSetPreviewDeviceType( deviceType ) {\n\treturn {\n\t\ttype: 'SET_PREVIEW_DEVICE_TYPE',\n\t\tdeviceType,\n\t};\n}\n\n/**\n * Returns an action object used to set a template.\n *\n * @param {number} templateId The template ID.\n * @param {string} templateSlug The template slug.\n * @return {Object} Action object.\n */\nexport function* setTemplate( templateId, templateSlug ) {\n\tconst pageContext = { templateSlug };\n\tif ( ! templateSlug ) {\n\t\tconst template = yield controls.resolveSelect(\n\t\t\tcoreStore,\n\t\t\t'getEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplateId\n\t\t);\n\t\tpageContext.templateSlug = template?.slug;\n\t}\n\treturn {\n\t\ttype: 'SET_TEMPLATE',\n\t\ttemplateId,\n\t\tpage: { context: pageContext },\n\t};\n}\n\n/**\n * Adds a new template, and sets it as the current template.\n *\n * @param {Object} template The template.\n *\n * @return {Object} Action object used to set the current template.\n */\nexport function* addTemplate( template ) {\n\tconst newTemplate = yield controls.dispatch(\n\t\tcoreStore,\n\t\t'saveEntityRecord',\n\t\t'postType',\n\t\t'wp_template',\n\t\ttemplate\n\t);\n\n\tif ( template.content ) {\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\tnewTemplate.id,\n\t\t\t{ blocks: parse( template.content ) },\n\t\t\t{ undoIgnore: true }\n\t\t);\n\t}\n\n\treturn {\n\t\ttype: 'SET_TEMPLATE',\n\t\ttemplateId: newTemplate.id,\n\t\tpage: { context: { templateSlug: newTemplate.slug } },\n\t};\n}\n\n/**\n * Removes a template, and updates the current page and template.\n *\n * @param {number} templateId The template ID.\n */\nexport function* removeTemplate( templateId ) {\n\tyield apiFetch( {\n\t\tpath: `/wp/v2/templates/${ templateId }`,\n\t\tmethod: 'DELETE',\n\t} );\n\tconst page = yield controls.select( editSiteStoreName, 'getPage' );\n\tyield controls.dispatch( editSiteStoreName, 'setPage', page );\n}\n\n/**\n * Returns an action object used to set a template part.\n *\n * @param {string} templatePartId The template part ID.\n *\n * @return {Object} Action object.\n */\nexport function setTemplatePart( templatePartId ) {\n\treturn {\n\t\ttype: 'SET_TEMPLATE_PART',\n\t\ttemplatePartId,\n\t};\n}\n\n/**\n * Returns an action object used to push a template part to navigation history.\n *\n * @param {string} templatePartId The template part ID.\n *\n * @return {Object} Action object.\n */\nexport function pushTemplatePart( templatePartId ) {\n\treturn {\n\t\ttype: 'PUSH_TEMPLATE_PART',\n\t\ttemplatePartId,\n\t};\n}\n\n/**\n * Updates the homeTemplateId state with the templateId of the page resolved\n * from the given path.\n *\n * @param {number} homeTemplateId The template ID for the homepage.\n */\nexport function setHomeTemplateId( homeTemplateId ) {\n\treturn {\n\t\ttype: 'SET_HOME_TEMPLATE',\n\t\thomeTemplateId,\n\t};\n}\n\n/**\n * Resolves the template for a page and displays both. If no path is given, attempts\n * to use the postId to generate a path like `?p=${ postId }`.\n *\n * @param {Object} page The page object.\n * @param {string} page.type The page type.\n * @param {string} page.slug The page slug.\n * @param {string} page.path The page path.\n * @param {Object} page.context The page context.\n *\n * @return {number} The resolved template ID for the page route.\n */\nexport function* setPage( page ) {\n\tif ( ! page.path && page.context?.postId ) {\n\t\tconst entity = yield controls.resolveSelect(\n\t\t\tcoreStore,\n\t\t\t'getEntityRecord',\n\t\t\t'postType',\n\t\t\tpage.context.postType || 'post',\n\t\t\tpage.context.postId\n\t\t);\n\n\t\tpage.path = getPathAndQueryString( entity.link );\n\t}\n\tconst { id: templateId, slug: templateSlug } = yield controls.resolveSelect(\n\t\tcoreStore,\n\t\t'__experimentalGetTemplateForLink',\n\t\tpage.path\n\t);\n\tyield {\n\t\ttype: 'SET_PAGE',\n\t\tpage: ! templateSlug\n\t\t\t? page\n\t\t\t: {\n\t\t\t\t\t...page,\n\t\t\t\t\tcontext: {\n\t\t\t\t\t\t...page.context,\n\t\t\t\t\t\ttemplateSlug,\n\t\t\t\t\t},\n\t\t\t },\n\t\ttemplateId,\n\t};\n\treturn templateId;\n}\n\n/**\n * Go back to the current editing page.\n */\nexport function goBack() {\n\treturn {\n\t\ttype: 'GO_BACK',\n\t};\n}\n\n/**\n * Displays the site homepage for editing in the editor.\n */\nexport function* showHomepage() {\n\tconst {\n\t\tshow_on_front: showOnFront,\n\t\tpage_on_front: frontpageId,\n\t} = yield controls.resolveSelect(\n\t\tcoreStore,\n\t\t'getEntityRecord',\n\t\t'root',\n\t\t'site'\n\t);\n\n\tconst { siteUrl } = yield controls.select(\n\t\teditSiteStoreName,\n\t\t'getSettings'\n\t);\n\n\tconst page = {\n\t\tpath: siteUrl,\n\t\tcontext:\n\t\t\tshowOnFront === 'page'\n\t\t\t\t? {\n\t\t\t\t\t\tpostType: 'page',\n\t\t\t\t\t\tpostId: frontpageId,\n\t\t\t\t }\n\t\t\t\t: {},\n\t};\n\n\tconst homeTemplate = yield* setPage( page );\n\tyield setHomeTemplateId( homeTemplate );\n}\n\n/**\n * Returns an action object used to set the active navigation panel menu.\n *\n * @param {string} menu Menu prop of active menu.\n *\n * @return {Object} Action object.\n */\nexport function setNavigationPanelActiveMenu( menu ) {\n\treturn {\n\t\ttype: 'SET_NAVIGATION_PANEL_ACTIVE_MENU',\n\t\tmenu,\n\t};\n}\n\n/**\n * Opens the navigation panel and sets its active menu at the same time.\n *\n * @param {string} menu Identifies the menu to open.\n */\nexport function openNavigationPanelToMenu( menu ) {\n\treturn {\n\t\ttype: 'OPEN_NAVIGATION_PANEL_TO_MENU',\n\t\tmenu,\n\t};\n}\n\n/**\n * Sets whether the navigation panel should be open.\n *\n * @param {boolean} isOpen If true, opens the nav panel. If false, closes it. It\n * does not toggle the state, but sets it directly.\n */\nexport function setIsNavigationPanelOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_NAVIGATION_PANEL_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Returns an action object used to open/close the inserter.\n *\n * @param {boolean|Object} value Whether the inserter should be\n * opened (true) or closed (false).\n * To specify an insertion point,\n * use an object.\n * @param {string} value.rootClientId The root client ID to insert at.\n * @param {number} value.insertionIndex The index to insert at.\n *\n * @return {Object} Action object.\n */\nexport function setIsInserterOpened( value ) {\n\treturn {\n\t\ttype: 'SET_IS_INSERTER_OPENED',\n\t\tvalue,\n\t};\n}\n\n/**\n * Returns an action object used to update the settings.\n *\n * @param {Object} settings New settings.\n *\n * @return {Object} Action object.\n */\nexport function updateSettings( settings ) {\n\treturn {\n\t\ttype: 'UPDATE_SETTINGS',\n\t\tsettings,\n\t};\n}\n\n/**\n * Sets whether the list view panel should be open.\n *\n * @param {boolean} isOpen If true, opens the list view. If false, closes it.\n * It does not toggle the state, but sets it directly.\n */\nexport function setIsListViewOpened( isOpen ) {\n\treturn {\n\t\ttype: 'SET_IS_LIST_VIEW_OPENED',\n\t\tisOpen,\n\t};\n}\n\n/**\n * Reverts a template to its original theme-provided file.\n *\n * @param {Object} template The template to revert.\n */\nexport function* revertTemplate( template ) {\n\tif ( ! isTemplateRevertable( template ) ) {\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createErrorNotice',\n\t\t\t__( 'This template is not revertable.' ),\n\t\t\t{ type: 'snackbar' }\n\t\t);\n\t\treturn;\n\t}\n\n\ttry {\n\t\tconst templateEntity = yield controls.select(\n\t\t\tcoreStore,\n\t\t\t'getEntity',\n\t\t\t'postType',\n\t\t\ttemplate.type\n\t\t);\n\t\tif ( ! templateEntity ) {\n\t\t\tyield controls.dispatch(\n\t\t\t\tnoticesStore,\n\t\t\t\t'createErrorNotice',\n\t\t\t\t__(\n\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tconst fileTemplatePath = addQueryArgs(\n\t\t\t`${ templateEntity.baseURL }/${ template.id }`,\n\t\t\t{ context: 'edit', source: 'theme' }\n\t\t);\n\t\tconst fileTemplate = yield apiFetch( { path: fileTemplatePath } );\n\t\tif ( ! fileTemplate ) {\n\t\t\tyield controls.dispatch(\n\t\t\t\tnoticesStore,\n\t\t\t\t'createErrorNotice',\n\t\t\t\t__(\n\t\t\t\t\t'The editor has encountered an unexpected error. Please reload.'\n\t\t\t\t),\n\t\t\t\t{ type: 'snackbar' }\n\t\t\t);\n\t\t\treturn;\n\t\t}\n\n\t\tconst serializeBlocks = ( { blocks: blocksForSerialization = [] } ) =>\n\t\t\t__unstableSerializeAndClean( blocksForSerialization );\n\t\tconst edited = yield controls.select(\n\t\t\tcoreStore,\n\t\t\t'getEditedEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplate.id\n\t\t);\n\t\t// We are fixing up the undo level here to make sure we can undo\n\t\t// the revert in the header toolbar correctly.\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\ttemplate.id,\n\t\t\t{\n\t\t\t\tcontent: serializeBlocks, // required to make the `undo` behave correctly\n\t\t\t\tblocks: edited.blocks, // required to revert the blocks in the editor\n\t\t\t\tsource: 'custom', // required to avoid turning the editor into a dirty state\n\t\t\t},\n\t\t\t{\n\t\t\t\tundoIgnore: true, // required to merge this edit with the last undo level\n\t\t\t}\n\t\t);\n\n\t\tconst blocks = parse( fileTemplate?.content?.raw );\n\t\tyield controls.dispatch(\n\t\t\tcoreStore,\n\t\t\t'editEntityRecord',\n\t\t\t'postType',\n\t\t\t'wp_template',\n\t\t\tfileTemplate.id,\n\t\t\t{\n\t\t\t\tcontent: serializeBlocks,\n\t\t\t\tblocks,\n\t\t\t\tsource: 'theme',\n\t\t\t}\n\t\t);\n\n\t\tconst undoRevert = async () => {\n\t\t\tawait dispatch( coreStore ).editEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_template',\n\t\t\t\tedited.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: serializeBlocks,\n\t\t\t\t\tblocks: edited.blocks,\n\t\t\t\t\tsource: 'custom',\n\t\t\t\t}\n\t\t\t);\n\t\t};\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createSuccessNotice',\n\t\t\t__( 'Template reverted.' ),\n\t\t\t{\n\t\t\t\ttype: 'snackbar',\n\t\t\t\tactions: [\n\t\t\t\t\t{\n\t\t\t\t\t\tlabel: __( 'Undo' ),\n\t\t\t\t\t\tonClick: undoRevert,\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t}\n\t\t);\n\t} catch ( error ) {\n\t\tconst errorMessage =\n\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t? error.message\n\t\t\t\t: __( 'Template revert failed. Please reload.' );\n\t\tyield controls.dispatch(\n\t\t\tnoticesStore,\n\t\t\t'createErrorNotice',\n\t\t\terrorMessage,\n\t\t\t{ type: 'snackbar' }\n\t\t);\n\t}\n}\n/**\n * Returns an action object used in signalling that the user opened an editor sidebar.\n *\n * @param {?string} name Sidebar name to be opened.\n *\n * @yield {Object} Action object.\n */\nexport function* openGeneralSidebar( name ) {\n\tyield controls.dispatch(\n\t\tinterfaceStore,\n\t\t'enableComplementaryArea',\n\t\teditSiteStoreName,\n\t\tname\n\t);\n}\n\n/**\n * Returns an action object signalling that the user closed the sidebar.\n *\n * @yield {Object} Action object.\n */\nexport function* closeGeneralSidebar() {\n\tyield controls.dispatch(\n\t\tinterfaceStore,\n\t\t'disableComplementaryArea',\n\t\teditSiteStoreName\n\t);\n}\n"]}