@wordpress/edit-site 3.0.9 → 3.0.13

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 (263) hide show
  1. package/build/components/add-new-template/index.js +49 -0
  2. package/build/components/add-new-template/index.js.map +1 -0
  3. package/build/components/add-new-template/new-template-part.js +95 -0
  4. package/build/components/add-new-template/new-template-part.js.map +1 -0
  5. package/build/components/add-new-template/new-template.js +133 -0
  6. package/build/components/add-new-template/new-template.js.map +1 -0
  7. package/build/components/block-editor/index.js +3 -1
  8. package/build/components/block-editor/index.js.map +1 -1
  9. package/build/components/create-template-part-modal/index.js +115 -0
  10. package/build/components/create-template-part-modal/index.js.map +1 -0
  11. package/build/components/editor/index.js +20 -16
  12. package/build/components/editor/index.js.map +1 -1
  13. package/build/components/global-styles/color-palette-panel.js +29 -6
  14. package/build/components/global-styles/color-palette-panel.js.map +1 -1
  15. package/build/components/global-styles/global-styles-provider.js +9 -47
  16. package/build/components/global-styles/global-styles-provider.js.map +1 -1
  17. package/build/components/global-styles/gradients-palette-panel.js +71 -0
  18. package/build/components/global-styles/gradients-palette-panel.js.map +1 -0
  19. package/build/components/global-styles/hooks.js +29 -27
  20. package/build/components/global-styles/hooks.js.map +1 -1
  21. package/build/components/global-styles/palette.js +11 -5
  22. package/build/components/global-styles/palette.js.map +1 -1
  23. package/build/components/global-styles/screen-background-color.js +2 -1
  24. package/build/components/global-styles/screen-background-color.js.map +1 -1
  25. package/build/components/global-styles/screen-block-list.js +9 -1
  26. package/build/components/global-styles/screen-block-list.js.map +1 -1
  27. package/build/components/global-styles/screen-color-palette.js +23 -3
  28. package/build/components/global-styles/screen-color-palette.js.map +1 -1
  29. package/build/components/global-styles/screen-link-color.js +2 -1
  30. package/build/components/global-styles/screen-link-color.js.map +1 -1
  31. package/build/components/global-styles/screen-text-color.js +2 -1
  32. package/build/components/global-styles/screen-text-color.js.map +1 -1
  33. package/build/components/global-styles/screen-typography-element.js +54 -0
  34. package/build/components/global-styles/screen-typography-element.js.map +1 -0
  35. package/build/components/global-styles/screen-typography.js +74 -6
  36. package/build/components/global-styles/screen-typography.js.map +1 -1
  37. package/build/components/global-styles/typography-panel.js +28 -8
  38. package/build/components/global-styles/typography-panel.js.map +1 -1
  39. package/build/components/global-styles/ui.js +12 -0
  40. package/build/components/global-styles/ui.js.map +1 -1
  41. package/build/components/global-styles/use-global-styles-output.js +2 -2
  42. package/build/components/global-styles/use-global-styles-output.js.map +1 -1
  43. package/build/components/global-styles/utils.js +1 -1
  44. package/build/components/global-styles/utils.js.map +1 -1
  45. package/build/components/header/index.js +1 -5
  46. package/build/components/header/index.js.map +1 -1
  47. package/build/components/keyboard-shortcuts/index.js +26 -0
  48. package/build/components/keyboard-shortcuts/index.js.map +1 -1
  49. package/build/components/list/actions/index.js +104 -0
  50. package/build/components/list/actions/index.js.map +1 -0
  51. package/build/components/list/actions/rename-menu-item.js +112 -0
  52. package/build/components/list/actions/rename-menu-item.js.map +1 -0
  53. package/build/components/list/added-by.js +180 -0
  54. package/build/components/list/added-by.js.map +1 -0
  55. package/build/components/list/header.js +50 -0
  56. package/build/components/list/header.js.map +1 -0
  57. package/build/components/list/index.js +102 -0
  58. package/build/components/list/index.js.map +1 -0
  59. package/build/components/list/table.js +114 -0
  60. package/build/components/list/table.js.map +1 -0
  61. package/build/components/list/use-register-shortcuts.js +52 -0
  62. package/build/components/list/use-register-shortcuts.js.map +1 -0
  63. package/build/components/navigation-sidebar/index.js +26 -10
  64. package/build/components/navigation-sidebar/index.js.map +1 -1
  65. package/build/components/navigation-sidebar/navigation-panel/index.js +42 -44
  66. package/build/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  67. package/build/components/navigation-sidebar/navigation-toggle/index.js +5 -17
  68. package/build/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  69. package/build/components/template-details/edit-template-title.js +33 -0
  70. package/build/components/template-details/edit-template-title.js.map +1 -0
  71. package/build/components/template-details/index.js +8 -3
  72. package/build/components/template-details/index.js.map +1 -1
  73. package/build/components/template-part-converter/convert-to-template-part.js +20 -84
  74. package/build/components/template-part-converter/convert-to-template-part.js.map +1 -1
  75. package/build/components/welcome-guide/editor.js +58 -0
  76. package/build/components/welcome-guide/editor.js.map +1 -0
  77. package/build/components/welcome-guide/image.js +27 -0
  78. package/build/components/welcome-guide/image.js.map +1 -0
  79. package/build/components/welcome-guide/index.js +49 -0
  80. package/build/components/welcome-guide/index.js.map +1 -0
  81. package/build/components/welcome-guide/styles.js +83 -0
  82. package/build/components/welcome-guide/styles.js.map +1 -0
  83. package/build/index.js +36 -6
  84. package/build/index.js.map +1 -1
  85. package/build/plugins/index.js +4 -2
  86. package/build/plugins/index.js.map +1 -1
  87. package/build/plugins/welcome-guide-menu-item.js +39 -0
  88. package/build/plugins/welcome-guide-menu-item.js.map +1 -0
  89. package/build/store/actions.js +50 -24
  90. package/build/store/actions.js.map +1 -1
  91. package/build/store/defaults.js +4 -1
  92. package/build/store/defaults.js.map +1 -1
  93. package/build/store/selectors.js +25 -5
  94. package/build/store/selectors.js.map +1 -1
  95. package/build/utils/is-template-removable.js +21 -0
  96. package/build/utils/is-template-removable.js.map +1 -0
  97. package/build-module/components/add-new-template/index.js +36 -0
  98. package/build-module/components/add-new-template/index.js.map +1 -0
  99. package/build-module/components/add-new-template/new-template-part.js +79 -0
  100. package/build-module/components/add-new-template/new-template-part.js.map +1 -0
  101. package/build-module/components/add-new-template/new-template.js +114 -0
  102. package/build-module/components/add-new-template/new-template.js.map +1 -0
  103. package/build-module/components/block-editor/index.js +2 -1
  104. package/build-module/components/block-editor/index.js.map +1 -1
  105. package/build-module/components/create-template-part-modal/index.js +102 -0
  106. package/build-module/components/create-template-part-modal/index.js.map +1 -0
  107. package/build-module/components/editor/index.js +19 -17
  108. package/build-module/components/editor/index.js.map +1 -1
  109. package/build-module/components/global-styles/color-palette-panel.js +29 -7
  110. package/build-module/components/global-styles/color-palette-panel.js.map +1 -1
  111. package/build-module/components/global-styles/global-styles-provider.js +10 -43
  112. package/build-module/components/global-styles/global-styles-provider.js.map +1 -1
  113. package/build-module/components/global-styles/gradients-palette-panel.js +60 -0
  114. package/build-module/components/global-styles/gradients-palette-panel.js.map +1 -0
  115. package/build-module/components/global-styles/hooks.js +30 -28
  116. package/build-module/components/global-styles/hooks.js.map +1 -1
  117. package/build-module/components/global-styles/palette.js +12 -5
  118. package/build-module/components/global-styles/palette.js.map +1 -1
  119. package/build-module/components/global-styles/screen-background-color.js +2 -1
  120. package/build-module/components/global-styles/screen-background-color.js.map +1 -1
  121. package/build-module/components/global-styles/screen-block-list.js +7 -1
  122. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  123. package/build-module/components/global-styles/screen-color-palette.js +22 -3
  124. package/build-module/components/global-styles/screen-color-palette.js.map +1 -1
  125. package/build-module/components/global-styles/screen-link-color.js +2 -1
  126. package/build-module/components/global-styles/screen-link-color.js.map +1 -1
  127. package/build-module/components/global-styles/screen-text-color.js +2 -1
  128. package/build-module/components/global-styles/screen-text-color.js.map +1 -1
  129. package/build-module/components/global-styles/screen-typography-element.js +41 -0
  130. package/build-module/components/global-styles/screen-typography-element.js.map +1 -0
  131. package/build-module/components/global-styles/screen-typography.js +70 -6
  132. package/build-module/components/global-styles/screen-typography.js.map +1 -1
  133. package/build-module/components/global-styles/typography-panel.js +28 -8
  134. package/build-module/components/global-styles/typography-panel.js.map +1 -1
  135. package/build-module/components/global-styles/ui.js +11 -0
  136. package/build-module/components/global-styles/ui.js.map +1 -1
  137. package/build-module/components/global-styles/use-global-styles-output.js +2 -2
  138. package/build-module/components/global-styles/use-global-styles-output.js.map +1 -1
  139. package/build-module/components/global-styles/utils.js +1 -1
  140. package/build-module/components/global-styles/utils.js.map +1 -1
  141. package/build-module/components/header/index.js +1 -3
  142. package/build-module/components/header/index.js.map +1 -1
  143. package/build-module/components/keyboard-shortcuts/index.js +26 -0
  144. package/build-module/components/keyboard-shortcuts/index.js.map +1 -1
  145. package/build-module/components/list/actions/index.js +85 -0
  146. package/build-module/components/list/actions/index.js.map +1 -0
  147. package/build-module/components/list/actions/rename-menu-item.js +101 -0
  148. package/build-module/components/list/actions/rename-menu-item.js.map +1 -0
  149. package/build-module/components/list/added-by.js +166 -0
  150. package/build-module/components/list/added-by.js.map +1 -0
  151. package/build-module/components/list/header.js +37 -0
  152. package/build-module/components/list/header.js.map +1 -0
  153. package/build-module/components/list/index.js +81 -0
  154. package/build-module/components/list/index.js.map +1 -0
  155. package/build-module/components/list/table.js +98 -0
  156. package/build-module/components/list/table.js.map +1 -0
  157. package/build-module/components/list/use-register-shortcuts.js +41 -0
  158. package/build-module/components/list/use-register-shortcuts.js.map +1 -0
  159. package/build-module/components/navigation-sidebar/index.js +26 -10
  160. package/build-module/components/navigation-sidebar/index.js.map +1 -1
  161. package/build-module/components/navigation-sidebar/navigation-panel/index.js +41 -44
  162. package/build-module/components/navigation-sidebar/navigation-panel/index.js.map +1 -1
  163. package/build-module/components/navigation-sidebar/navigation-toggle/index.js +6 -18
  164. package/build-module/components/navigation-sidebar/navigation-toggle/index.js.map +1 -1
  165. package/build-module/components/template-details/edit-template-title.js +23 -0
  166. package/build-module/components/template-details/edit-template-title.js.map +1 -0
  167. package/build-module/components/template-details/index.js +7 -3
  168. package/build-module/components/template-details/index.js.map +1 -1
  169. package/build-module/components/template-part-converter/convert-to-template-part.js +20 -84
  170. package/build-module/components/template-part-converter/convert-to-template-part.js.map +1 -1
  171. package/build-module/components/welcome-guide/editor.js +45 -0
  172. package/build-module/components/welcome-guide/editor.js.map +1 -0
  173. package/build-module/components/welcome-guide/image.js +19 -0
  174. package/build-module/components/welcome-guide/image.js.map +1 -0
  175. package/build-module/components/welcome-guide/index.js +35 -0
  176. package/build-module/components/welcome-guide/index.js.map +1 -0
  177. package/build-module/components/welcome-guide/styles.js +69 -0
  178. package/build-module/components/welcome-guide/styles.js.map +1 -0
  179. package/build-module/index.js +28 -3
  180. package/build-module/index.js.map +1 -1
  181. package/build-module/plugins/index.js +3 -2
  182. package/build-module/plugins/index.js.map +1 -1
  183. package/build-module/plugins/welcome-guide-menu-item.js +27 -0
  184. package/build-module/plugins/welcome-guide-menu-item.js.map +1 -0
  185. package/build-module/store/actions.js +51 -25
  186. package/build-module/store/actions.js.map +1 -1
  187. package/build-module/store/defaults.js +4 -1
  188. package/build-module/store/defaults.js.map +1 -1
  189. package/build-module/store/selectors.js +21 -3
  190. package/build-module/store/selectors.js.map +1 -1
  191. package/build-module/utils/is-template-removable.js +14 -0
  192. package/build-module/utils/is-template-removable.js.map +1 -0
  193. package/build-style/style-rtl.css +477 -34
  194. package/build-style/style.css +477 -34
  195. package/package.json +10 -8
  196. package/src/components/add-new-template/index.js +30 -0
  197. package/src/components/add-new-template/new-template-part.js +81 -0
  198. package/src/components/add-new-template/new-template.js +136 -0
  199. package/src/components/add-new-template/style.scss +11 -0
  200. package/src/components/block-editor/index.js +2 -0
  201. package/src/components/create-template-part-modal/index.js +132 -0
  202. package/src/components/{template-part-converter → create-template-part-modal}/style.scss +9 -9
  203. package/src/components/editor/index.js +22 -15
  204. package/src/components/editor/style.scss +8 -0
  205. package/src/components/global-styles/color-palette-panel.js +64 -7
  206. package/src/components/global-styles/global-styles-provider.js +7 -36
  207. package/src/components/global-styles/gradients-palette-panel.js +99 -0
  208. package/src/components/global-styles/hooks.js +59 -27
  209. package/src/components/global-styles/palette.js +30 -10
  210. package/src/components/global-styles/screen-background-color.js +1 -0
  211. package/src/components/global-styles/screen-block-list.js +11 -1
  212. package/src/components/global-styles/screen-color-palette.js +30 -3
  213. package/src/components/global-styles/screen-link-color.js +1 -0
  214. package/src/components/global-styles/screen-text-color.js +1 -0
  215. package/src/components/global-styles/screen-typography-element.js +39 -0
  216. package/src/components/global-styles/screen-typography.js +84 -3
  217. package/src/components/global-styles/style.scss +42 -1
  218. package/src/components/global-styles/test/use-global-styles-output.js +3 -3
  219. package/src/components/global-styles/test/utils.js +1 -1
  220. package/src/components/global-styles/typography-panel.js +37 -7
  221. package/src/components/global-styles/ui.js +9 -0
  222. package/src/components/global-styles/use-global-styles-output.js +2 -2
  223. package/src/components/global-styles/utils.js +1 -1
  224. package/src/components/header/index.js +0 -6
  225. package/src/components/keyboard-shortcuts/index.js +32 -0
  226. package/src/components/list/actions/index.js +95 -0
  227. package/src/components/list/actions/rename-menu-item.js +134 -0
  228. package/src/components/list/added-by.js +179 -0
  229. package/src/components/list/header.js +34 -0
  230. package/src/components/list/index.js +96 -0
  231. package/src/components/list/style.scss +208 -0
  232. package/src/components/list/table.js +121 -0
  233. package/src/components/list/use-register-shortcuts.js +45 -0
  234. package/src/components/navigation-sidebar/index.js +24 -8
  235. package/src/components/navigation-sidebar/navigation-panel/index.js +57 -51
  236. package/src/components/navigation-sidebar/navigation-panel/style.scss +4 -2
  237. package/src/components/navigation-sidebar/navigation-toggle/index.js +24 -36
  238. package/src/components/navigation-sidebar/navigation-toggle/test/index.js +2 -0
  239. package/src/components/sidebar/style.scss +2 -1
  240. package/src/components/template-details/edit-template-title.js +28 -0
  241. package/src/components/template-details/index.js +15 -9
  242. package/src/components/template-part-converter/convert-to-template-part.js +20 -140
  243. package/src/components/welcome-guide/editor.js +63 -0
  244. package/src/components/welcome-guide/image.js +11 -0
  245. package/src/components/welcome-guide/index.js +33 -0
  246. package/src/components/welcome-guide/style.scss +37 -0
  247. package/src/components/welcome-guide/styles.js +116 -0
  248. package/src/index.js +31 -3
  249. package/src/plugins/index.js +3 -1
  250. package/src/plugins/welcome-guide-menu-item.js +35 -0
  251. package/src/store/actions.js +85 -35
  252. package/src/store/defaults.js +4 -1
  253. package/src/store/selectors.js +22 -4
  254. package/src/store/test/actions.js +0 -30
  255. package/src/store/test/selectors.js +24 -0
  256. package/src/style.scss +9 -6
  257. package/src/utils/is-template-removable.js +13 -0
  258. package/build/components/header/navigation-link/index.js +0 -87
  259. package/build/components/header/navigation-link/index.js.map +0 -1
  260. package/build-module/components/header/navigation-link/index.js +0 -74
  261. package/build-module/components/header/navigation-link/index.js.map +0 -1
  262. package/src/components/header/navigation-link/index.js +0 -71
  263. package/src/components/header/navigation-link/style.scss +0 -69
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/actions/rename-menu-item.js"],"names":["RenameMenuItem","template","onClose","title","setTitle","rendered","isModalOpen","setIsModalOpen","getLastEntitySaveError","coreStore","editEntityRecord","saveEditedEntityRecord","createSuccessNotice","createErrorNotice","noticesStore","is_custom","onTemplateRename","event","preventDefault","type","id","lastError","error","errorMessage","message","code"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState } from '@wordpress/element';\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tButton,\n\tFlex,\n\tFlexItem,\n\tMenuItem,\n\tModal,\n\tTextControl,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { store as noticesStore } from '@wordpress/notices';\n\nexport default function RenameMenuItem( { template, onClose } ) {\n\tconst [ title, setTitle ] = useState( () => template.title.rendered );\n\tconst [ isModalOpen, setIsModalOpen ] = useState( false );\n\n\tconst { getLastEntitySaveError } = useSelect( coreStore );\n\tconst { editEntityRecord, saveEditedEntityRecord } = useDispatch(\n\t\tcoreStore\n\t);\n\tconst { createSuccessNotice, createErrorNotice } = useDispatch(\n\t\tnoticesStore\n\t);\n\n\tif ( ! template.is_custom ) {\n\t\treturn null;\n\t}\n\n\tasync function onTemplateRename( event ) {\n\t\tevent.preventDefault();\n\n\t\ttry {\n\t\t\tawait editEntityRecord( 'postType', template.type, template.id, {\n\t\t\t\ttitle,\n\t\t\t} );\n\n\t\t\t// Update state before saving rerenders the list.\n\t\t\tsetTitle( '' );\n\t\t\tsetIsModalOpen( false );\n\t\t\tonClose();\n\n\t\t\t// Persist edited entity.\n\t\t\tawait saveEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id\n\t\t\t);\n\n\t\t\tconst lastError = getLastEntitySaveError(\n\t\t\t\t'postType',\n\t\t\t\ttemplate.type,\n\t\t\t\ttemplate.id\n\t\t\t);\n\n\t\t\tif ( lastError ) {\n\t\t\t\tthrow lastError;\n\t\t\t}\n\n\t\t\tcreateSuccessNotice( __( 'Template has been renamed.' ), {\n\t\t\t\ttype: 'snackbar',\n\t\t\t} );\n\t\t} catch ( error ) {\n\t\t\tconst errorMessage =\n\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t? error.message\n\t\t\t\t\t: __( 'An error occurred while renaming the template.' );\n\n\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t}\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<MenuItem\n\t\t\t\tonClick={ () => {\n\t\t\t\t\tsetIsModalOpen( true );\n\t\t\t\t\tsetTitle( template.title.rendered );\n\t\t\t\t} }\n\t\t\t>\n\t\t\t\t{ __( 'Rename' ) }\n\t\t\t</MenuItem>\n\t\t\t{ isModalOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\ttitle={ __( 'Rename template' ) }\n\t\t\t\t\tcloseLabel={ __( 'Close' ) }\n\t\t\t\t\tonRequestClose={ () => {\n\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t} }\n\t\t\t\t\toverlayClassName=\"edit-site-list__rename-modal\"\n\t\t\t\t>\n\t\t\t\t\t<form onSubmit={ onTemplateRename }>\n\t\t\t\t\t\t<Flex align=\"flex-start\" gap={ 8 }>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<TextControl\n\t\t\t\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\n\t\t\t\t\t\t<Flex\n\t\t\t\t\t\t\tclassName=\"edit-site-list__rename-modal-actions\"\n\t\t\t\t\t\t\tjustify=\"flex-end\"\n\t\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsModalOpen( false );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t\t<FlexItem>\n\t\t\t\t\t\t\t\t<Button variant=\"primary\" type=\"submit\">\n\t\t\t\t\t\t\t\t\t{ __( 'Save' ) }\n\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t</FlexItem>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</form>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"]}
@@ -0,0 +1,180 @@
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 = AddedBy;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
14
+ var _components = require("@wordpress/components");
15
+
16
+ var _coreData = require("@wordpress/core-data");
17
+
18
+ var _data = require("@wordpress/data");
19
+
20
+ var _icons = require("@wordpress/icons");
21
+
22
+ var _i18n = require("@wordpress/i18n");
23
+
24
+ /**
25
+ * External dependencies
26
+ */
27
+
28
+ /**
29
+ * WordPress dependencies
30
+ */
31
+ const TEMPLATE_POST_TYPE_NAMES = ['wp_template', 'wp_template_part'];
32
+
33
+ function CustomizedTooltip(_ref) {
34
+ let {
35
+ isCustomized,
36
+ children
37
+ } = _ref;
38
+
39
+ if (!isCustomized) {
40
+ return children;
41
+ }
42
+
43
+ return (0, _element.createElement)(_components.Tooltip, {
44
+ text: (0, _i18n.__)('This template has been customized')
45
+ }, children);
46
+ }
47
+
48
+ function AddedByTheme(_ref2) {
49
+ var _theme$name;
50
+
51
+ let {
52
+ slug,
53
+ isCustomized
54
+ } = _ref2;
55
+ const theme = (0, _data.useSelect)(select => select(_coreData.store).getTheme(slug), [slug]);
56
+ return (0, _element.createElement)(_components.__experimentalHStack, {
57
+ alignment: "left"
58
+ }, (0, _element.createElement)(CustomizedTooltip, {
59
+ isCustomized: isCustomized
60
+ }, (0, _element.createElement)("div", {
61
+ className: (0, _classnames.default)('edit-site-list-added-by__icon', {
62
+ 'is-customized': isCustomized
63
+ })
64
+ }, (0, _element.createElement)(_components.Icon, {
65
+ icon: _icons.layout
66
+ }))), (0, _element.createElement)("span", null, (theme === null || theme === void 0 ? void 0 : (_theme$name = theme.name) === null || _theme$name === void 0 ? void 0 : _theme$name.rendered) || slug));
67
+ }
68
+
69
+ function AddedByPlugin(_ref3) {
70
+ let {
71
+ slug,
72
+ isCustomized
73
+ } = _ref3;
74
+ const plugin = (0, _data.useSelect)(select => select(_coreData.store).getPlugin(slug), [slug]);
75
+ return (0, _element.createElement)(_components.__experimentalHStack, {
76
+ alignment: "left"
77
+ }, (0, _element.createElement)(CustomizedTooltip, {
78
+ isCustomized: isCustomized
79
+ }, (0, _element.createElement)("div", {
80
+ className: "edit-site-list-added-by__icon"
81
+ }, (0, _element.createElement)(_components.Icon, {
82
+ icon: _icons.plugins
83
+ }))), (0, _element.createElement)("span", null, (plugin === null || plugin === void 0 ? void 0 : plugin.name) || slug));
84
+ }
85
+
86
+ function AddedByAuthor(_ref4) {
87
+ let {
88
+ id
89
+ } = _ref4;
90
+ const user = (0, _data.useSelect)(select => select(_coreData.store).getUser(id), [id]);
91
+ const [isImageLoaded, setIsImageLoaded] = (0, _element.useState)(false);
92
+ return (0, _element.createElement)(_components.__experimentalHStack, {
93
+ alignment: "left"
94
+ }, (0, _element.createElement)("div", {
95
+ className: (0, _classnames.default)('edit-site-list-added-by__avatar', {
96
+ 'is-loaded': isImageLoaded
97
+ })
98
+ }, (0, _element.createElement)("img", {
99
+ onLoad: () => setIsImageLoaded(true),
100
+ alt: "",
101
+ src: user === null || user === void 0 ? void 0 : user.avatar_urls[48]
102
+ })), (0, _element.createElement)("span", null, user === null || user === void 0 ? void 0 : user.nickname));
103
+ }
104
+
105
+ function AddedBySite() {
106
+ const {
107
+ name,
108
+ logoURL
109
+ } = (0, _data.useSelect)(select => {
110
+ var _getMedia;
111
+
112
+ const {
113
+ getEntityRecord,
114
+ getMedia
115
+ } = select(_coreData.store);
116
+ const siteData = getEntityRecord('root', '__unstableBase');
117
+ return {
118
+ name: siteData.name,
119
+ logoURL: siteData !== null && siteData !== void 0 && siteData.site_logo ? (_getMedia = getMedia(siteData.site_logo)) === null || _getMedia === void 0 ? void 0 : _getMedia.source_url : undefined
120
+ };
121
+ }, []);
122
+ const [isImageLoaded, setIsImageLoaded] = (0, _element.useState)(false);
123
+ return (0, _element.createElement)(_components.__experimentalHStack, {
124
+ alignment: "left"
125
+ }, (0, _element.createElement)("div", {
126
+ className: (0, _classnames.default)('edit-site-list-added-by__avatar', {
127
+ 'is-loaded': isImageLoaded
128
+ })
129
+ }, (0, _element.createElement)("img", {
130
+ onLoad: () => setIsImageLoaded(true),
131
+ alt: "",
132
+ src: logoURL
133
+ })), (0, _element.createElement)("span", null, name));
134
+ }
135
+
136
+ function AddedBy(_ref5) {
137
+ let {
138
+ templateType,
139
+ template
140
+ } = _ref5;
141
+
142
+ if (!template) {
143
+ return;
144
+ }
145
+
146
+ if (TEMPLATE_POST_TYPE_NAMES.includes(templateType)) {
147
+ // Template originally provided by a theme, but customized by a user.
148
+ // Templates originally didn't have the 'origin' field so identify
149
+ // older customized templates by checking for no origin and a 'theme'
150
+ // or 'custom' source.
151
+ if (template.has_theme_file && (template.origin === 'theme' || !template.origin && ['theme', 'custom'].includes(template.source))) {
152
+ return (0, _element.createElement)(AddedByTheme, {
153
+ slug: template.theme,
154
+ isCustomized: template.source === 'custom'
155
+ });
156
+ } // Template originally provided by a plugin, but customized by a user.
157
+
158
+
159
+ if (template.has_theme_file && template.origin === 'plugin') {
160
+ return (0, _element.createElement)(AddedByPlugin, {
161
+ slug: template.theme,
162
+ isCustomized: template.source === 'custom'
163
+ });
164
+ } // Template was created from scratch, but has no author. Author support
165
+ // was only added to templates in WordPress 5.9. Fallback to showing the
166
+ // site logo and title.
167
+
168
+
169
+ if (!template.has_theme_file && template.source === 'custom' && !template.author) {
170
+ return (0, _element.createElement)(AddedBySite, null);
171
+ }
172
+ } // Simply show the author for templates created from scratch that have an
173
+ // author or for any other post type.
174
+
175
+
176
+ return (0, _element.createElement)(AddedByAuthor, {
177
+ id: template.author
178
+ });
179
+ }
180
+ //# sourceMappingURL=added-by.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/added-by.js"],"names":["TEMPLATE_POST_TYPE_NAMES","CustomizedTooltip","isCustomized","children","AddedByTheme","slug","theme","select","coreStore","getTheme","themeIcon","name","rendered","AddedByPlugin","plugin","getPlugin","pluginIcon","AddedByAuthor","id","user","getUser","isImageLoaded","setIsImageLoaded","avatar_urls","nickname","AddedBySite","logoURL","getEntityRecord","getMedia","siteData","site_logo","source_url","undefined","AddedBy","templateType","template","includes","has_theme_file","origin","source","author"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tIcon,\n\tTooltip,\n} from '@wordpress/components';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { useState } from '@wordpress/element';\nimport { layout as themeIcon, plugins as pluginIcon } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\nconst TEMPLATE_POST_TYPE_NAMES = [ 'wp_template', 'wp_template_part' ];\n\nfunction CustomizedTooltip( { isCustomized, children } ) {\n\tif ( ! isCustomized ) {\n\t\treturn children;\n\t}\n\n\treturn (\n\t\t<Tooltip text={ __( 'This template has been customized' ) }>\n\t\t\t{ children }\n\t\t</Tooltip>\n\t);\n}\n\nfunction AddedByTheme( { slug, isCustomized } ) {\n\tconst theme = useSelect(\n\t\t( select ) => select( coreStore ).getTheme( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<CustomizedTooltip isCustomized={ isCustomized }>\n\t\t\t\t<div\n\t\t\t\t\tclassName={ classnames( 'edit-site-list-added-by__icon', {\n\t\t\t\t\t\t'is-customized': isCustomized,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={ themeIcon } />\n\t\t\t\t</div>\n\t\t\t</CustomizedTooltip>\n\t\t\t<span>{ theme?.name?.rendered || slug }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedByPlugin( { slug, isCustomized } ) {\n\tconst plugin = useSelect(\n\t\t( select ) => select( coreStore ).getPlugin( slug ),\n\t\t[ slug ]\n\t);\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<CustomizedTooltip isCustomized={ isCustomized }>\n\t\t\t\t<div className=\"edit-site-list-added-by__icon\">\n\t\t\t\t\t<Icon icon={ pluginIcon } />\n\t\t\t\t</div>\n\t\t\t</CustomizedTooltip>\n\t\t\t<span>{ plugin?.name || slug }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedByAuthor( { id } ) {\n\tconst user = useSelect( ( select ) => select( coreStore ).getUser( id ), [\n\t\tid,\n\t] );\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'edit-site-list-added-by__avatar', {\n\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\talt=\"\"\n\t\t\t\t\tsrc={ user?.avatar_urls[ 48 ] }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<span>{ user?.nickname }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction AddedBySite() {\n\tconst { name, logoURL } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, getMedia } = select( coreStore );\n\t\tconst siteData = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tname: siteData.name,\n\t\t\tlogoURL: siteData?.site_logo\n\t\t\t\t? getMedia( siteData.site_logo )?.source_url\n\t\t\t\t: undefined,\n\t\t};\n\t}, [] );\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\n\treturn (\n\t\t<HStack alignment=\"left\">\n\t\t\t<div\n\t\t\t\tclassName={ classnames( 'edit-site-list-added-by__avatar', {\n\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t} ) }\n\t\t\t>\n\t\t\t\t<img\n\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\talt=\"\"\n\t\t\t\t\tsrc={ logoURL }\n\t\t\t\t/>\n\t\t\t</div>\n\t\t\t<span>{ name }</span>\n\t\t</HStack>\n\t);\n}\n\nexport default function AddedBy( { templateType, template } ) {\n\tif ( ! template ) {\n\t\treturn;\n\t}\n\n\tif ( TEMPLATE_POST_TYPE_NAMES.includes( templateType ) ) {\n\t\t// Template originally provided by a theme, but customized by a user.\n\t\t// Templates originally didn't have the 'origin' field so identify\n\t\t// older customized templates by checking for no origin and a 'theme'\n\t\t// or 'custom' source.\n\t\tif (\n\t\t\ttemplate.has_theme_file &&\n\t\t\t( template.origin === 'theme' ||\n\t\t\t\t( ! template.origin &&\n\t\t\t\t\t[ 'theme', 'custom' ].includes( template.source ) ) )\n\t\t) {\n\t\t\treturn (\n\t\t\t\t<AddedByTheme\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template originally provided by a plugin, but customized by a user.\n\t\tif ( template.has_theme_file && template.origin === 'plugin' ) {\n\t\t\treturn (\n\t\t\t\t<AddedByPlugin\n\t\t\t\t\tslug={ template.theme }\n\t\t\t\t\tisCustomized={ template.source === 'custom' }\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// Template was created from scratch, but has no author. Author support\n\t\t// was only added to templates in WordPress 5.9. Fallback to showing the\n\t\t// site logo and title.\n\t\tif (\n\t\t\t! template.has_theme_file &&\n\t\t\ttemplate.source === 'custom' &&\n\t\t\t! template.author\n\t\t) {\n\t\t\treturn <AddedBySite />;\n\t\t}\n\t}\n\n\t// Simply show the author for templates created from scratch that have an\n\t// author or for any other post type.\n\treturn <AddedByAuthor id={ template.author } />;\n}\n"]}
@@ -0,0 +1,50 @@
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 = Header;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _data = require("@wordpress/data");
13
+
14
+ var _coreData = require("@wordpress/core-data");
15
+
16
+ var _components = require("@wordpress/components");
17
+
18
+ var _addNewTemplate = _interopRequireDefault(require("../add-new-template"));
19
+
20
+ /**
21
+ * WordPress dependencies
22
+ */
23
+
24
+ /**
25
+ * Internal dependencies
26
+ */
27
+ function Header(_ref) {
28
+ var _postType$labels;
29
+
30
+ let {
31
+ templateType
32
+ } = _ref;
33
+ const postType = (0, _data.useSelect)(select => select(_coreData.store).getPostType(templateType), [templateType]);
34
+
35
+ if (!postType) {
36
+ return null;
37
+ }
38
+
39
+ return (0, _element.createElement)("header", {
40
+ className: "edit-site-list-header"
41
+ }, (0, _element.createElement)(_components.__experimentalHeading, {
42
+ level: 1,
43
+ className: "edit-site-list-header__title"
44
+ }, (_postType$labels = postType.labels) === null || _postType$labels === void 0 ? void 0 : _postType$labels.name), (0, _element.createElement)("div", {
45
+ className: "edit-site-list-header__right"
46
+ }, (0, _element.createElement)(_addNewTemplate.default, {
47
+ templateType: templateType
48
+ })));
49
+ }
50
+ //# sourceMappingURL=header.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/header.js"],"names":["Header","templateType","postType","select","coreStore","getPostType","labels","name"],"mappings":";;;;;;;;;;;AAGA;;AACA;;AACA;;AAKA;;AAVA;AACA;AACA;;AAKA;AACA;AACA;AAGe,SAASA,MAAT,OAAoC;AAAA;;AAAA,MAAnB;AAAEC,IAAAA;AAAF,GAAmB;AAClD,QAAMC,QAAQ,GAAG,qBACdC,MAAF,IAAcA,MAAM,CAAEC,eAAF,CAAN,CAAoBC,WAApB,CAAiCJ,YAAjC,CADE,EAEhB,CAAEA,YAAF,CAFgB,CAAjB;;AAKA,MAAK,CAAEC,QAAP,EAAkB;AACjB,WAAO,IAAP;AACA;;AAED,SACC;AAAQ,IAAA,SAAS,EAAC;AAAlB,KACC,4BAAC,iCAAD;AAAS,IAAA,KAAK,EAAG,CAAjB;AAAqB,IAAA,SAAS,EAAC;AAA/B,yBACGA,QAAQ,CAACI,MADZ,qDACG,iBAAiBC,IADpB,CADD,EAKC;AAAK,IAAA,SAAS,EAAC;AAAf,KACC,4BAAC,uBAAD;AAAgB,IAAA,YAAY,EAAGN;AAA/B,IADD,CALD,CADD;AAWA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __experimentalHeading as Heading } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport AddNewTemplate from '../add-new-template';\n\nexport default function Header( { templateType } ) {\n\tconst postType = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( templateType ),\n\t\t[ templateType ]\n\t);\n\n\tif ( ! postType ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<header className=\"edit-site-list-header\">\n\t\t\t<Heading level={ 1 } className=\"edit-site-list-header__title\">\n\t\t\t\t{ postType.labels?.name }\n\t\t\t</Heading>\n\n\t\t\t<div className=\"edit-site-list-header__right\">\n\t\t\t\t<AddNewTemplate templateType={ templateType } />\n\t\t\t</div>\n\t\t</header>\n\t);\n}\n"]}
@@ -0,0 +1,102 @@
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 = List;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _classnames = _interopRequireDefault(require("classnames"));
13
+
14
+ var _coreData = require("@wordpress/core-data");
15
+
16
+ var _data = require("@wordpress/data");
17
+
18
+ var _interface = require("@wordpress/interface");
19
+
20
+ var _i18n = require("@wordpress/i18n");
21
+
22
+ var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
23
+
24
+ var _editor = require("@wordpress/editor");
25
+
26
+ var _useRegisterShortcuts = _interopRequireDefault(require("./use-register-shortcuts"));
27
+
28
+ var _header = _interopRequireDefault(require("./header"));
29
+
30
+ var _navigationSidebar = _interopRequireDefault(require("../navigation-sidebar"));
31
+
32
+ var _table = _interopRequireDefault(require("./table"));
33
+
34
+ var _store = require("../../store");
35
+
36
+ /**
37
+ * External dependencies
38
+ */
39
+
40
+ /**
41
+ * WordPress dependencies
42
+ */
43
+
44
+ /**
45
+ * Internal dependencies
46
+ */
47
+ function List(_ref) {
48
+ var _postType$labels;
49
+
50
+ let {
51
+ templateType
52
+ } = _ref;
53
+ (0, _useRegisterShortcuts.default)();
54
+ const {
55
+ previousShortcut,
56
+ nextShortcut,
57
+ isNavigationOpen
58
+ } = (0, _data.useSelect)(select => {
59
+ return {
60
+ previousShortcut: select(_keyboardShortcuts.store).getAllShortcutKeyCombinations('core/edit-site/previous-region'),
61
+ nextShortcut: select(_keyboardShortcuts.store).getAllShortcutKeyCombinations('core/edit-site/next-region'),
62
+ isNavigationOpen: select(_store.store).isNavigationOpened()
63
+ };
64
+ }, []);
65
+ const postType = (0, _data.useSelect)(select => select(_coreData.store).getPostType(templateType), [templateType]); // `postType` could load in asynchronously. Only provide the detailed region labels if
66
+ // the postType has loaded, otherwise `InterfaceSkeleton` will fallback to the defaults.
67
+
68
+ const itemsListLabel = postType === null || postType === void 0 ? void 0 : (_postType$labels = postType.labels) === null || _postType$labels === void 0 ? void 0 : _postType$labels.items_list;
69
+ const detailedRegionLabels = postType ? {
70
+ header: (0, _i18n.sprintf)( // translators: %s - the name of the page, 'Header' as in the header area of that page.
71
+ (0, _i18n.__)('%s - Header'), itemsListLabel),
72
+ body: (0, _i18n.sprintf)( // translators: %s - the name of the page, 'Content' as in the content area of that page.
73
+ (0, _i18n.__)('%s - Content'), itemsListLabel)
74
+ } : undefined;
75
+ return (0, _element.createElement)(_interface.InterfaceSkeleton, {
76
+ className: (0, _classnames.default)('edit-site-list', {
77
+ 'is-navigation-open': isNavigationOpen
78
+ }),
79
+ labels: {
80
+ drawer: (0, _i18n.__)('Navigation Sidebar'),
81
+ ...detailedRegionLabels
82
+ },
83
+ header: (0, _element.createElement)(_header.default, {
84
+ templateType: templateType
85
+ }),
86
+ drawer: (0, _element.createElement)(_navigationSidebar.default, {
87
+ activeTemplateType: templateType,
88
+ isDefaultOpen: true
89
+ }),
90
+ notices: (0, _element.createElement)(_editor.EditorSnackbars, null),
91
+ content: (0, _element.createElement)("main", {
92
+ className: "edit-site-list-main"
93
+ }, (0, _element.createElement)(_table.default, {
94
+ templateType: templateType
95
+ })),
96
+ shortcuts: {
97
+ previous: previousShortcut,
98
+ next: nextShortcut
99
+ }
100
+ });
101
+ }
102
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/index.js"],"names":["List","templateType","previousShortcut","nextShortcut","isNavigationOpen","select","keyboardShortcutsStore","getAllShortcutKeyCombinations","editSiteStore","isNavigationOpened","postType","coreStore","getPostType","itemsListLabel","labels","items_list","detailedRegionLabels","header","body","undefined","drawer","previous","next"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AAtBA;AACA;AACA;;AAGA;AACA;AACA;;AAQA;AACA;AACA;AAOe,SAASA,IAAT,OAAkC;AAAA;;AAAA,MAAnB;AAAEC,IAAAA;AAAF,GAAmB;AAChD;AAEA,QAAM;AAAEC,IAAAA,gBAAF;AAAoBC,IAAAA,YAApB;AAAkCC,IAAAA;AAAlC,MAAuD,qBAC1DC,MAAF,IAAc;AACb,WAAO;AACNH,MAAAA,gBAAgB,EAAEG,MAAM,CACvBC,wBADuB,CAAN,CAEhBC,6BAFgB,CAGjB,gCAHiB,CADZ;AAMNJ,MAAAA,YAAY,EAAEE,MAAM,CACnBC,wBADmB,CAAN,CAEZC,6BAFY,CAEmB,4BAFnB,CANR;AASNH,MAAAA,gBAAgB,EAAEC,MAAM,CAAEG,YAAF,CAAN,CAAwBC,kBAAxB;AATZ,KAAP;AAWA,GAb2D,EAc5D,EAd4D,CAA7D;AAiBA,QAAMC,QAAQ,GAAG,qBACdL,MAAF,IAAcA,MAAM,CAAEM,eAAF,CAAN,CAAoBC,WAApB,CAAiCX,YAAjC,CADE,EAEhB,CAAEA,YAAF,CAFgB,CAAjB,CApBgD,CAyBhD;AACA;;AACA,QAAMY,cAAc,GAAGH,QAAH,aAAGA,QAAH,2CAAGA,QAAQ,CAAEI,MAAb,qDAAG,iBAAkBC,UAAzC;AACA,QAAMC,oBAAoB,GAAGN,QAAQ,GAClC;AACAO,IAAAA,MAAM,EAAE,oBACP;AACA,kBAAI,aAAJ,CAFO,EAGPJ,cAHO,CADR;AAMAK,IAAAA,IAAI,EAAE,oBACL;AACA,kBAAI,cAAJ,CAFK,EAGLL,cAHK;AANN,GADkC,GAalCM,SAbH;AAeA,SACC,4BAAC,4BAAD;AACC,IAAA,SAAS,EAAG,yBAAY,gBAAZ,EAA8B;AACzC,4BAAsBf;AADmB,KAA9B,CADb;AAIC,IAAA,MAAM,EAAG;AACRgB,MAAAA,MAAM,EAAE,cAAI,oBAAJ,CADA;AAER,SAAGJ;AAFK,KAJV;AAQC,IAAA,MAAM,EAAG,4BAAC,eAAD;AAAQ,MAAA,YAAY,EAAGf;AAAvB,MARV;AASC,IAAA,MAAM,EACL,4BAAC,0BAAD;AACC,MAAA,kBAAkB,EAAGA,YADtB;AAEC,MAAA,aAAa;AAFd,MAVF;AAeC,IAAA,OAAO,EAAG,4BAAC,uBAAD,OAfX;AAgBC,IAAA,OAAO,EACN;AAAM,MAAA,SAAS,EAAC;AAAhB,OACC,4BAAC,cAAD;AAAO,MAAA,YAAY,EAAGA;AAAtB,MADD,CAjBF;AAqBC,IAAA,SAAS,EAAG;AACXoB,MAAAA,QAAQ,EAAEnB,gBADC;AAEXoB,MAAAA,IAAI,EAAEnB;AAFK;AArBb,IADD;AA4BA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useSelect } from '@wordpress/data';\nimport { InterfaceSkeleton } from '@wordpress/interface';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\nimport { EditorSnackbars } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport useRegisterShortcuts from './use-register-shortcuts';\nimport Header from './header';\nimport NavigationSidebar from '../navigation-sidebar';\nimport Table from './table';\nimport { store as editSiteStore } from '../../store';\n\nexport default function List( { templateType } ) {\n\tuseRegisterShortcuts();\n\n\tconst { previousShortcut, nextShortcut, isNavigationOpen } = useSelect(\n\t\t( select ) => {\n\t\t\treturn {\n\t\t\t\tpreviousShortcut: select(\n\t\t\t\t\tkeyboardShortcutsStore\n\t\t\t\t).getAllShortcutKeyCombinations(\n\t\t\t\t\t'core/edit-site/previous-region'\n\t\t\t\t),\n\t\t\t\tnextShortcut: select(\n\t\t\t\t\tkeyboardShortcutsStore\n\t\t\t\t).getAllShortcutKeyCombinations( 'core/edit-site/next-region' ),\n\t\t\t\tisNavigationOpen: select( editSiteStore ).isNavigationOpened(),\n\t\t\t};\n\t\t},\n\t\t[]\n\t);\n\n\tconst postType = useSelect(\n\t\t( select ) => select( coreStore ).getPostType( templateType ),\n\t\t[ templateType ]\n\t);\n\n\t// `postType` could load in asynchronously. Only provide the detailed region labels if\n\t// the postType has loaded, otherwise `InterfaceSkeleton` will fallback to the defaults.\n\tconst itemsListLabel = postType?.labels?.items_list;\n\tconst detailedRegionLabels = postType\n\t\t? {\n\t\t\t\theader: sprintf(\n\t\t\t\t\t// translators: %s - the name of the page, 'Header' as in the header area of that page.\n\t\t\t\t\t__( '%s - Header' ),\n\t\t\t\t\titemsListLabel\n\t\t\t\t),\n\t\t\t\tbody: sprintf(\n\t\t\t\t\t// translators: %s - the name of the page, 'Content' as in the content area of that page.\n\t\t\t\t\t__( '%s - Content' ),\n\t\t\t\t\titemsListLabel\n\t\t\t\t),\n\t\t }\n\t\t: undefined;\n\n\treturn (\n\t\t<InterfaceSkeleton\n\t\t\tclassName={ classnames( 'edit-site-list', {\n\t\t\t\t'is-navigation-open': isNavigationOpen,\n\t\t\t} ) }\n\t\t\tlabels={ {\n\t\t\t\tdrawer: __( 'Navigation Sidebar' ),\n\t\t\t\t...detailedRegionLabels,\n\t\t\t} }\n\t\t\theader={ <Header templateType={ templateType } /> }\n\t\t\tdrawer={\n\t\t\t\t<NavigationSidebar\n\t\t\t\t\tactiveTemplateType={ templateType }\n\t\t\t\t\tisDefaultOpen\n\t\t\t\t/>\n\t\t\t}\n\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\tcontent={\n\t\t\t\t<main className=\"edit-site-list-main\">\n\t\t\t\t\t<Table templateType={ templateType } />\n\t\t\t\t</main>\n\t\t\t}\n\t\t\tshortcuts={ {\n\t\t\t\tprevious: previousShortcut,\n\t\t\t\tnext: nextShortcut,\n\t\t\t} }\n\t\t/>\n\t);\n}\n"]}
@@ -0,0 +1,114 @@
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 = Table;
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _data = require("@wordpress/data");
13
+
14
+ var _coreData = require("@wordpress/core-data");
15
+
16
+ var _i18n = require("@wordpress/i18n");
17
+
18
+ var _components = require("@wordpress/components");
19
+
20
+ var _url = require("@wordpress/url");
21
+
22
+ var _actions = _interopRequireDefault(require("./actions"));
23
+
24
+ var _addedBy = _interopRequireDefault(require("./added-by"));
25
+
26
+ /**
27
+ * WordPress dependencies
28
+ */
29
+
30
+ /**
31
+ * Internal dependencies
32
+ */
33
+ function Table(_ref) {
34
+ let {
35
+ templateType
36
+ } = _ref;
37
+ const {
38
+ templates,
39
+ isLoading,
40
+ postType
41
+ } = (0, _data.useSelect)(select => {
42
+ const {
43
+ getEntityRecords,
44
+ hasFinishedResolution,
45
+ getPostType
46
+ } = select(_coreData.store);
47
+ return {
48
+ templates: getEntityRecords('postType', templateType, {
49
+ per_page: -1
50
+ }),
51
+ isLoading: !hasFinishedResolution('getEntityRecords', ['postType', templateType, {
52
+ per_page: -1
53
+ }]),
54
+ postType: getPostType(templateType)
55
+ };
56
+ }, [templateType]);
57
+
58
+ if (!templates || isLoading) {
59
+ return null;
60
+ }
61
+
62
+ if (!templates.length) {
63
+ var _postType$labels, _postType$labels$name;
64
+
65
+ return (0, _element.createElement)("div", null, (0, _i18n.sprintf)( // translators: The template type name, should be either "templates" or "template parts".
66
+ (0, _i18n.__)('No %s found.'), postType === null || postType === void 0 ? void 0 : (_postType$labels = postType.labels) === null || _postType$labels === void 0 ? void 0 : (_postType$labels$name = _postType$labels.name) === null || _postType$labels$name === void 0 ? void 0 : _postType$labels$name.toLowerCase()));
67
+ }
68
+
69
+ return (// These explicit aria roles are needed for Safari.
70
+ // See https://developer.mozilla.org/en-US/docs/Web/CSS/display#tables
71
+ (0, _element.createElement)("table", {
72
+ className: "edit-site-list-table",
73
+ role: "table"
74
+ }, (0, _element.createElement)("thead", null, (0, _element.createElement)("tr", {
75
+ className: "edit-site-list-table-head",
76
+ role: "row"
77
+ }, (0, _element.createElement)("th", {
78
+ className: "edit-site-list-table-column",
79
+ role: "columnheader"
80
+ }, (0, _i18n.__)('Template')), (0, _element.createElement)("th", {
81
+ className: "edit-site-list-table-column",
82
+ role: "columnheader"
83
+ }, (0, _i18n.__)('Added by')), (0, _element.createElement)("th", {
84
+ className: "edit-site-list-table-column",
85
+ role: "columnheader"
86
+ }, (0, _element.createElement)(_components.VisuallyHidden, null, (0, _i18n.__)('Actions'))))), (0, _element.createElement)("tbody", null, templates.map(template => (0, _element.createElement)("tr", {
87
+ key: template.id,
88
+ className: "edit-site-list-table-row",
89
+ role: "row"
90
+ }, (0, _element.createElement)("td", {
91
+ className: "edit-site-list-table-column",
92
+ role: "cell"
93
+ }, (0, _element.createElement)(_components.__experimentalHeading, {
94
+ level: 4
95
+ }, (0, _element.createElement)("a", {
96
+ href: (0, _url.addQueryArgs)(window.location.href, {
97
+ postId: template.id,
98
+ postType: template.type
99
+ })
100
+ }, template.title.rendered)), template.description), (0, _element.createElement)("td", {
101
+ className: "edit-site-list-table-column",
102
+ role: "cell"
103
+ }, (0, _element.createElement)(_addedBy.default, {
104
+ templateType: templateType,
105
+ template: template
106
+ })), (0, _element.createElement)("td", {
107
+ className: "edit-site-list-table-column",
108
+ role: "cell"
109
+ }, (0, _element.createElement)(_actions.default, {
110
+ template: template
111
+ }))))))
112
+ );
113
+ }
114
+ //# sourceMappingURL=table.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/table.js"],"names":["Table","templateType","templates","isLoading","postType","select","getEntityRecords","hasFinishedResolution","getPostType","coreStore","per_page","length","labels","name","toLowerCase","map","template","id","window","location","href","postId","type","title","rendered","description"],"mappings":"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","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tVisuallyHidden,\n\t__experimentalHeading as Heading,\n} from '@wordpress/components';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Actions from './actions';\nimport AddedBy from './added-by';\n\nexport default function Table( { templateType } ) {\n\tconst { templates, isLoading, postType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetEntityRecords,\n\t\t\t\thasFinishedResolution,\n\t\t\t\tgetPostType,\n\t\t\t} = select( coreStore );\n\n\t\t\treturn {\n\t\t\t\ttemplates: getEntityRecords( 'postType', templateType, {\n\t\t\t\t\tper_page: -1,\n\t\t\t\t} ),\n\t\t\t\tisLoading: ! hasFinishedResolution( 'getEntityRecords', [\n\t\t\t\t\t'postType',\n\t\t\t\t\ttemplateType,\n\t\t\t\t\t{ per_page: -1 },\n\t\t\t\t] ),\n\t\t\t\tpostType: getPostType( templateType ),\n\t\t\t};\n\t\t},\n\t\t[ templateType ]\n\t);\n\n\tif ( ! templates || isLoading ) {\n\t\treturn null;\n\t}\n\n\tif ( ! templates.length ) {\n\t\treturn (\n\t\t\t<div>\n\t\t\t\t{ sprintf(\n\t\t\t\t\t// translators: The template type name, should be either \"templates\" or \"template parts\".\n\t\t\t\t\t__( 'No %s found.' ),\n\t\t\t\t\tpostType?.labels?.name?.toLowerCase()\n\t\t\t\t) }\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t// These explicit aria roles are needed for Safari.\n\t\t// See https://developer.mozilla.org/en-US/docs/Web/CSS/display#tables\n\t\t<table className=\"edit-site-list-table\" role=\"table\">\n\t\t\t<thead>\n\t\t\t\t<tr className=\"edit-site-list-table-head\" role=\"row\">\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Template' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Added by' ) }\n\t\t\t\t\t</th>\n\t\t\t\t\t<th\n\t\t\t\t\t\tclassName=\"edit-site-list-table-column\"\n\t\t\t\t\t\trole=\"columnheader\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>\n\t\t\t\t\t</th>\n\t\t\t\t</tr>\n\t\t\t</thead>\n\n\t\t\t<tbody>\n\t\t\t\t{ templates.map( ( template ) => (\n\t\t\t\t\t<tr\n\t\t\t\t\t\tkey={ template.id }\n\t\t\t\t\t\tclassName=\"edit-site-list-table-row\"\n\t\t\t\t\t\trole=\"row\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Heading level={ 4 }>\n\t\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\t\thref={ addQueryArgs( window.location.href, {\n\t\t\t\t\t\t\t\t\t\tpostId: template.id,\n\t\t\t\t\t\t\t\t\t\tpostType: template.type,\n\t\t\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ template.title.rendered }\n\t\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t\t</Heading>\n\t\t\t\t\t\t\t{ template.description }\n\t\t\t\t\t\t</td>\n\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<AddedBy\n\t\t\t\t\t\t\t\ttemplateType={ templateType }\n\t\t\t\t\t\t\t\ttemplate={ template }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</td>\n\t\t\t\t\t\t<td className=\"edit-site-list-table-column\" role=\"cell\">\n\t\t\t\t\t\t\t<Actions template={ template } />\n\t\t\t\t\t\t</td>\n\t\t\t\t\t</tr>\n\t\t\t\t) ) }\n\t\t\t</tbody>\n\t\t</table>\n\t);\n}\n"]}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = useRegisterShortcuts;
7
+
8
+ var _data = require("@wordpress/data");
9
+
10
+ var _element = require("@wordpress/element");
11
+
12
+ var _i18n = require("@wordpress/i18n");
13
+
14
+ var _keyboardShortcuts = require("@wordpress/keyboard-shortcuts");
15
+
16
+ /**
17
+ * WordPress dependencies
18
+ */
19
+ function useRegisterShortcuts() {
20
+ const {
21
+ registerShortcut
22
+ } = (0, _data.useDispatch)(_keyboardShortcuts.store);
23
+ (0, _element.useEffect)(() => {
24
+ registerShortcut({
25
+ name: 'core/edit-site/next-region',
26
+ category: 'global',
27
+ description: (0, _i18n.__)('Navigate to the next part of the editor.'),
28
+ keyCombination: {
29
+ modifier: 'ctrl',
30
+ character: '`'
31
+ },
32
+ aliases: [{
33
+ modifier: 'access',
34
+ character: 'n'
35
+ }]
36
+ });
37
+ registerShortcut({
38
+ name: 'core/edit-site/previous-region',
39
+ category: 'global',
40
+ description: (0, _i18n.__)('Navigate to the previous part of the editor.'),
41
+ keyCombination: {
42
+ modifier: 'ctrlShift',
43
+ character: '`'
44
+ },
45
+ aliases: [{
46
+ modifier: 'access',
47
+ character: 'p'
48
+ }]
49
+ });
50
+ }, []);
51
+ }
52
+ //# sourceMappingURL=use-register-shortcuts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/list/use-register-shortcuts.js"],"names":["useRegisterShortcuts","registerShortcut","keyboardShortcutsStore","name","category","description","keyCombination","modifier","character","aliases"],"mappings":";;;;;;;AAIA;;AACA;;AACA;;AACA;;AAPA;AACA;AACA;AAOe,SAASA,oBAAT,GAAgC;AAC9C,QAAM;AAAEC,IAAAA;AAAF,MAAuB,uBAAaC,wBAAb,CAA7B;AACA,0BAAW,MAAM;AAChBD,IAAAA,gBAAgB,CAAE;AACjBE,MAAAA,IAAI,EAAE,4BADW;AAEjBC,MAAAA,QAAQ,EAAE,QAFO;AAGjBC,MAAAA,WAAW,EAAE,cAAI,0CAAJ,CAHI;AAIjBC,MAAAA,cAAc,EAAE;AACfC,QAAAA,QAAQ,EAAE,MADK;AAEfC,QAAAA,SAAS,EAAE;AAFI,OAJC;AAQjBC,MAAAA,OAAO,EAAE,CACR;AACCF,QAAAA,QAAQ,EAAE,QADX;AAECC,QAAAA,SAAS,EAAE;AAFZ,OADQ;AARQ,KAAF,CAAhB;AAgBAP,IAAAA,gBAAgB,CAAE;AACjBE,MAAAA,IAAI,EAAE,gCADW;AAEjBC,MAAAA,QAAQ,EAAE,QAFO;AAGjBC,MAAAA,WAAW,EAAE,cAAI,8CAAJ,CAHI;AAIjBC,MAAAA,cAAc,EAAE;AACfC,QAAAA,QAAQ,EAAE,WADK;AAEfC,QAAAA,SAAS,EAAE;AAFI,OAJC;AAQjBC,MAAAA,OAAO,EAAE,CACR;AACCF,QAAAA,QAAQ,EAAE,QADX;AAECC,QAAAA,SAAS,EAAE;AAFZ,OADQ;AARQ,KAAF,CAAhB;AAeA,GAhCD,EAgCG,EAhCH;AAiCA","sourcesContent":["/**\n * WordPress dependencies\n */\n\nimport { useDispatch } from '@wordpress/data';\nimport { useEffect } from '@wordpress/element';\nimport { __ } from '@wordpress/i18n';\nimport { store as keyboardShortcutsStore } from '@wordpress/keyboard-shortcuts';\n\nexport default function useRegisterShortcuts() {\n\tconst { registerShortcut } = useDispatch( keyboardShortcutsStore );\n\tuseEffect( () => {\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/next-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the next part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrl',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'n',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\n\t\tregisterShortcut( {\n\t\t\tname: 'core/edit-site/previous-region',\n\t\t\tcategory: 'global',\n\t\t\tdescription: __( 'Navigate to the previous part of the editor.' ),\n\t\t\tkeyCombination: {\n\t\t\t\tmodifier: 'ctrlShift',\n\t\t\t\tcharacter: '`',\n\t\t\t},\n\t\t\taliases: [\n\t\t\t\t{\n\t\t\t\t\tmodifier: 'access',\n\t\t\t\t\tcharacter: 'p',\n\t\t\t\t},\n\t\t\t],\n\t\t} );\n\t}, [] );\n}\n"]}
@@ -12,14 +12,16 @@ var _element = require("@wordpress/element");
12
12
 
13
13
  var _components = require("@wordpress/components");
14
14
 
15
+ var _compose = require("@wordpress/compose");
16
+
15
17
  var _data = require("@wordpress/data");
16
18
 
19
+ var _store = require("../../store");
20
+
17
21
  var _navigationPanel = _interopRequireDefault(require("./navigation-panel"));
18
22
 
19
23
  var _navigationToggle = _interopRequireDefault(require("./navigation-toggle"));
20
24
 
21
- var _store = require("../../store");
22
-
23
25
  /**
24
26
  * WordPress dependencies
25
27
  */
@@ -34,14 +36,28 @@ const {
34
36
  exports.NavigationPanelPreviewSlot = NavigationPanelPreviewSlot;
35
37
  exports.NavigationPanelPreviewFill = NavigationPanelPreviewFill;
36
38
 
37
- function NavigationSidebar() {
38
- const isNavigationOpen = (0, _data.useSelect)(select => {
39
- return select(_store.store).isNavigationOpened();
40
- }, []);
41
- return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_navigationToggle.default, {
42
- isOpen: isNavigationOpen
43
- }), (0, _element.createElement)(_navigationPanel.default, {
44
- isOpen: isNavigationOpen
39
+ function NavigationSidebar(_ref) {
40
+ let {
41
+ isDefaultOpen = false,
42
+ activeTemplateType
43
+ } = _ref;
44
+ const isDesktopViewport = (0, _compose.useViewportMatch)('medium');
45
+ const {
46
+ setIsNavigationPanelOpened
47
+ } = (0, _data.useDispatch)(_store.store);
48
+ (0, _element.useEffect)(() => {
49
+ // When transitioning to desktop open the navigation if `isDefaultOpen` is true.
50
+ if (isDefaultOpen && isDesktopViewport) {
51
+ setIsNavigationPanelOpened(true);
52
+ } // When transitioning to mobile/tablet, close the navigation.
53
+
54
+
55
+ if (!isDesktopViewport) {
56
+ setIsNavigationPanelOpened(false);
57
+ }
58
+ }, [isDefaultOpen, isDesktopViewport, setIsNavigationPanelOpened]);
59
+ return (0, _element.createElement)(_element.Fragment, null, (0, _element.createElement)(_navigationToggle.default, null), (0, _element.createElement)(_navigationPanel.default, {
60
+ activeItem: activeTemplateType
45
61
  }), (0, _element.createElement)(NavigationPanelPreviewSlot, null));
46
62
  }
47
63
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/index.js"],"names":["Fill","NavigationPanelPreviewFill","Slot","NavigationPanelPreviewSlot","NavigationSidebar","isNavigationOpen","select","editSiteStore","isNavigationOpened"],"mappings":";;;;;;;;;;;;AAGA;;AACA;;AAKA;;AACA;;AACA;;AAXA;AACA;AACA;;AAIA;AACA;AACA;AAKO,MAAM;AACZA,EAAAA,IAAI,EAAEC,0BADM;AAEZC,EAAAA,IAAI,EAAEC;AAFM,IAGT,gCAAgB,gCAAhB,CAHG;;;;AAKQ,SAASC,iBAAT,GAA6B;AAC3C,QAAMC,gBAAgB,GAAG,qBAAaC,MAAF,IAAc;AACjD,WAAOA,MAAM,CAAEC,YAAF,CAAN,CAAwBC,kBAAxB,EAAP;AACA,GAFwB,EAEtB,EAFsB,CAAzB;AAIA,SACC,qDACC,4BAAC,yBAAD;AAAkB,IAAA,MAAM,EAAGH;AAA3B,IADD,EAEC,4BAAC,wBAAD;AAAiB,IAAA,MAAM,EAAGA;AAA1B,IAFD,EAGC,4BAAC,0BAAD,OAHD,CADD;AAOA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createSlotFill } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport NavigationPanel from './navigation-panel';\nimport NavigationToggle from './navigation-toggle';\nimport { store as editSiteStore } from '../../store';\n\nexport const {\n\tFill: NavigationPanelPreviewFill,\n\tSlot: NavigationPanelPreviewSlot,\n} = createSlotFill( 'EditSiteNavigationPanelPreview' );\n\nexport default function NavigationSidebar() {\n\tconst isNavigationOpen = useSelect( ( select ) => {\n\t\treturn select( editSiteStore ).isNavigationOpened();\n\t}, [] );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigationToggle isOpen={ isNavigationOpen } />\n\t\t\t<NavigationPanel isOpen={ isNavigationOpen } />\n\t\t\t<NavigationPanelPreviewSlot />\n\t\t</>\n\t);\n}\n"]}
1
+ {"version":3,"sources":["@wordpress/edit-site/src/components/navigation-sidebar/index.js"],"names":["Fill","NavigationPanelPreviewFill","Slot","NavigationPanelPreviewSlot","NavigationSidebar","isDefaultOpen","activeTemplateType","isDesktopViewport","setIsNavigationPanelOpened","editSiteStore"],"mappings":";;;;;;;;;;AAGA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AAbA;AACA;AACA;;AAMA;AACA;AACA;AAKO,MAAM;AACZA,EAAAA,IAAI,EAAEC,0BADM;AAEZC,EAAAA,IAAI,EAAEC;AAFM,IAGT,gCAAgB,gCAAhB,CAHG;;;;AAKQ,SAASC,iBAAT,OAGX;AAAA,MAHuC;AAC1CC,IAAAA,aAAa,GAAG,KAD0B;AAE1CC,IAAAA;AAF0C,GAGvC;AACH,QAAMC,iBAAiB,GAAG,+BAAkB,QAAlB,CAA1B;AACA,QAAM;AAAEC,IAAAA;AAAF,MAAiC,uBAAaC,YAAb,CAAvC;AAEA,0BAAW,MAAM;AAChB;AACA,QAAKJ,aAAa,IAAIE,iBAAtB,EAA0C;AACzCC,MAAAA,0BAA0B,CAAE,IAAF,CAA1B;AACA,KAJe,CAMhB;;;AACA,QAAK,CAAED,iBAAP,EAA2B;AAC1BC,MAAAA,0BAA0B,CAAE,KAAF,CAA1B;AACA;AACD,GAVD,EAUG,CAAEH,aAAF,EAAiBE,iBAAjB,EAAoCC,0BAApC,CAVH;AAYA,SACC,qDACC,4BAAC,yBAAD,OADD,EAEC,4BAAC,wBAAD;AAAiB,IAAA,UAAU,EAAGF;AAA9B,IAFD,EAGC,4BAAC,0BAAD,OAHD,CADD;AAOA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useEffect } from '@wordpress/element';\nimport { createSlotFill } from '@wordpress/components';\nimport { useViewportMatch } from '@wordpress/compose';\nimport { useDispatch } from '@wordpress/data';\n\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport NavigationPanel from './navigation-panel';\nimport NavigationToggle from './navigation-toggle';\n\nexport const {\n\tFill: NavigationPanelPreviewFill,\n\tSlot: NavigationPanelPreviewSlot,\n} = createSlotFill( 'EditSiteNavigationPanelPreview' );\n\nexport default function NavigationSidebar( {\n\tisDefaultOpen = false,\n\tactiveTemplateType,\n} ) {\n\tconst isDesktopViewport = useViewportMatch( 'medium' );\n\tconst { setIsNavigationPanelOpened } = useDispatch( editSiteStore );\n\n\tuseEffect( () => {\n\t\t// When transitioning to desktop open the navigation if `isDefaultOpen` is true.\n\t\tif ( isDefaultOpen && isDesktopViewport ) {\n\t\t\tsetIsNavigationPanelOpened( true );\n\t\t}\n\n\t\t// When transitioning to mobile/tablet, close the navigation.\n\t\tif ( ! isDesktopViewport ) {\n\t\t\tsetIsNavigationPanelOpened( false );\n\t\t}\n\t}, [ isDefaultOpen, isDesktopViewport, setIsNavigationPanelOpened ] );\n\n\treturn (\n\t\t<>\n\t\t\t<NavigationToggle />\n\t\t\t<NavigationPanel activeItem={ activeTemplateType } />\n\t\t\t<NavigationPanelPreviewSlot />\n\t\t</>\n\t);\n}\n"]}