@wordpress/edit-site 5.23.0 → 5.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/actions/index.js +56 -38
  3. package/build/components/actions/index.js.map +1 -1
  4. package/build/components/block-editor/site-editor-canvas.js +7 -2
  5. package/build/components/block-editor/site-editor-canvas.js.map +1 -1
  6. package/build/components/dataviews/add-filter.js +21 -20
  7. package/build/components/dataviews/add-filter.js.map +1 -1
  8. package/build/components/dataviews/constants.js +14 -0
  9. package/build/components/dataviews/constants.js.map +1 -0
  10. package/build/components/dataviews/dataviews.js +9 -7
  11. package/build/components/dataviews/dataviews.js.map +1 -1
  12. package/build/components/dataviews/filter-summary.js +62 -0
  13. package/build/components/dataviews/filter-summary.js.map +1 -0
  14. package/build/components/dataviews/filters.js +15 -30
  15. package/build/components/dataviews/filters.js.map +1 -1
  16. package/build/components/dataviews/item-actions.js +84 -30
  17. package/build/components/dataviews/item-actions.js.map +1 -1
  18. package/build/components/dataviews/pagination.js +4 -0
  19. package/build/components/dataviews/pagination.js.map +1 -1
  20. package/build/components/dataviews/view-actions.js +24 -24
  21. package/build/components/dataviews/view-actions.js.map +1 -1
  22. package/build/components/dataviews/view-grid.js +48 -25
  23. package/build/components/dataviews/view-grid.js.map +1 -1
  24. package/build/components/dataviews/view-list.js +28 -33
  25. package/build/components/dataviews/view-list.js.map +1 -1
  26. package/build/components/editor/index.js +23 -27
  27. package/build/components/editor/index.js.map +1 -1
  28. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  29. package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
  30. package/build/components/global-styles/font-library-modal/utils/index.js +15 -2
  31. package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  32. package/build/components/global-styles/header.js +4 -2
  33. package/build/components/global-styles/header.js.map +1 -1
  34. package/build/components/global-styles/screen-block-list.js +22 -16
  35. package/build/components/global-styles/screen-block-list.js.map +1 -1
  36. package/build/components/global-styles/screen-revisions/index.js +26 -5
  37. package/build/components/global-styles/screen-revisions/index.js.map +1 -1
  38. package/build/components/global-styles/screen-revisions/revisions-buttons.js +52 -24
  39. package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  40. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
  41. package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  42. package/build/components/global-styles/ui.js +28 -36
  43. package/build/components/global-styles/ui.js.map +1 -1
  44. package/build/components/header-edit-mode/document-actions/index.js +21 -16
  45. package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
  46. package/build/components/header-edit-mode/index.js +2 -1
  47. package/build/components/header-edit-mode/index.js.map +1 -1
  48. package/build/components/header-edit-mode/more-menu/index.js +1 -1
  49. package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
  50. package/build/components/list/added-by.js +43 -54
  51. package/build/components/list/added-by.js.map +1 -1
  52. package/build/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +9 -8
  53. package/build/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
  54. package/build/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  55. package/build/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
  56. package/build/components/page-content-focus-notifications/index.js +22 -0
  57. package/build/components/page-content-focus-notifications/index.js.map +1 -0
  58. package/build/components/page-pages/index.js +9 -15
  59. package/build/components/page-pages/index.js.map +1 -1
  60. package/build/components/page-patterns/use-patterns.js +1 -1
  61. package/build/components/page-patterns/use-patterns.js.map +1 -1
  62. package/build/components/page-templates/dataviews-templates.js +166 -51
  63. package/build/components/page-templates/dataviews-templates.js.map +1 -1
  64. package/build/components/preferences-modal/index.js +1 -1
  65. package/build/components/preferences-modal/index.js.map +1 -1
  66. package/build/components/save-button/index.js +9 -6
  67. package/build/components/save-button/index.js.map +1 -1
  68. package/build/components/save-hub/index.js +14 -0
  69. package/build/components/save-hub/index.js.map +1 -1
  70. package/build/components/sidebar-dataviews/custom-dataviews-list.js +3 -1
  71. package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  72. package/build/components/sidebar-dataviews/default-views.js +7 -2
  73. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  74. package/build/components/sidebar-edit-mode/index.js +6 -5
  75. package/build/components/sidebar-edit-mode/index.js.map +1 -1
  76. package/build/components/sidebar-edit-mode/page-panels/edit-template.js +15 -26
  77. package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  78. package/build/components/sidebar-edit-mode/page-panels/hooks.js +22 -8
  79. package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
  80. package/build/components/sidebar-edit-mode/page-panels/page-status.js +8 -5
  81. package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  82. package/build/components/sidebar-edit-mode/page-panels/page-summary.js +4 -8
  83. package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  84. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +2 -2
  85. package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  86. package/build/components/sidebar-edit-mode/settings-header/index.js +10 -6
  87. package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  88. package/build/components/sidebar-navigation-screen-page/index.js +23 -4
  89. package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
  90. package/build/components/style-book/index.js +22 -12
  91. package/build/components/style-book/index.js.map +1 -1
  92. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +41 -9
  93. package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  94. package/build/components/welcome-guide/page.js +2 -2
  95. package/build/components/welcome-guide/page.js.map +1 -1
  96. package/build/components/welcome-guide/template.js +6 -3
  97. package/build/components/welcome-guide/template.js.map +1 -1
  98. package/build/hooks/commands/use-edit-mode-commands.js +24 -14
  99. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  100. package/build/store/actions.js +4 -1
  101. package/build/store/actions.js.map +1 -1
  102. package/build/store/private-actions.js +2 -27
  103. package/build/store/private-actions.js.map +1 -1
  104. package/build/store/private-selectors.js +0 -23
  105. package/build/store/private-selectors.js.map +1 -1
  106. package/build/store/reducer.js +1 -40
  107. package/build/store/reducer.js.map +1 -1
  108. package/build/store/selectors.js +8 -4
  109. package/build/store/selectors.js.map +1 -1
  110. package/build/utils/constants.js +1 -12
  111. package/build/utils/constants.js.map +1 -1
  112. package/build-module/components/actions/index.js +55 -36
  113. package/build-module/components/actions/index.js.map +1 -1
  114. package/build-module/components/block-editor/site-editor-canvas.js +7 -2
  115. package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
  116. package/build-module/components/dataviews/add-filter.js +21 -20
  117. package/build-module/components/dataviews/add-filter.js.map +1 -1
  118. package/build-module/components/dataviews/constants.js +6 -0
  119. package/build-module/components/dataviews/constants.js.map +1 -0
  120. package/build-module/components/dataviews/dataviews.js +9 -7
  121. package/build-module/components/dataviews/dataviews.js.map +1 -1
  122. package/build-module/components/dataviews/filter-summary.js +55 -0
  123. package/build-module/components/dataviews/filter-summary.js.map +1 -0
  124. package/build-module/components/dataviews/filters.js +15 -28
  125. package/build-module/components/dataviews/filters.js.map +1 -1
  126. package/build-module/components/dataviews/item-actions.js +84 -30
  127. package/build-module/components/dataviews/item-actions.js.map +1 -1
  128. package/build-module/components/dataviews/pagination.js +4 -0
  129. package/build-module/components/dataviews/pagination.js.map +1 -1
  130. package/build-module/components/dataviews/view-actions.js +24 -24
  131. package/build-module/components/dataviews/view-actions.js.map +1 -1
  132. package/build-module/components/dataviews/view-grid.js +49 -26
  133. package/build-module/components/dataviews/view-grid.js.map +1 -1
  134. package/build-module/components/dataviews/view-list.js +28 -33
  135. package/build-module/components/dataviews/view-list.js.map +1 -1
  136. package/build-module/components/editor/index.js +26 -30
  137. package/build-module/components/editor/index.js.map +1 -1
  138. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  139. package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
  140. package/build-module/components/global-styles/font-library-modal/utils/index.js +14 -2
  141. package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
  142. package/build-module/components/global-styles/header.js +4 -2
  143. package/build-module/components/global-styles/header.js.map +1 -1
  144. package/build-module/components/global-styles/screen-block-list.js +23 -17
  145. package/build-module/components/global-styles/screen-block-list.js.map +1 -1
  146. package/build-module/components/global-styles/screen-revisions/index.js +27 -6
  147. package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
  148. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +51 -24
  149. package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
  150. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
  151. package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
  152. package/build-module/components/global-styles/ui.js +28 -36
  153. package/build-module/components/global-styles/ui.js.map +1 -1
  154. package/build-module/components/header-edit-mode/document-actions/index.js +21 -16
  155. package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
  156. package/build-module/components/header-edit-mode/index.js +2 -1
  157. package/build-module/components/header-edit-mode/index.js.map +1 -1
  158. package/build-module/components/header-edit-mode/more-menu/index.js +1 -1
  159. package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
  160. package/build-module/components/list/added-by.js +44 -55
  161. package/build-module/components/list/added-by.js.map +1 -1
  162. package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +9 -8
  163. package/build-module/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
  164. package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  165. package/build-module/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
  166. package/build-module/components/page-content-focus-notifications/index.js +14 -0
  167. package/build-module/components/page-content-focus-notifications/index.js.map +1 -0
  168. package/build-module/components/page-pages/index.js +10 -16
  169. package/build-module/components/page-pages/index.js.map +1 -1
  170. package/build-module/components/page-patterns/use-patterns.js +1 -1
  171. package/build-module/components/page-patterns/use-patterns.js.map +1 -1
  172. package/build-module/components/page-templates/dataviews-templates.js +168 -53
  173. package/build-module/components/page-templates/dataviews-templates.js.map +1 -1
  174. package/build-module/components/preferences-modal/index.js +1 -1
  175. package/build-module/components/preferences-modal/index.js.map +1 -1
  176. package/build-module/components/save-button/index.js +11 -8
  177. package/build-module/components/save-button/index.js.map +1 -1
  178. package/build-module/components/save-hub/index.js +14 -0
  179. package/build-module/components/save-hub/index.js.map +1 -1
  180. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +3 -1
  181. package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
  182. package/build-module/components/sidebar-dataviews/default-views.js +7 -2
  183. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  184. package/build-module/components/sidebar-edit-mode/index.js +6 -5
  185. package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
  186. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +16 -27
  187. package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
  188. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +21 -7
  189. package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
  190. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +9 -6
  191. package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
  192. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +5 -9
  193. package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
  194. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +3 -3
  195. package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
  196. package/build-module/components/sidebar-edit-mode/settings-header/index.js +10 -6
  197. package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
  198. package/build-module/components/sidebar-navigation-screen-page/index.js +23 -4
  199. package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
  200. package/build-module/components/style-book/index.js +22 -12
  201. package/build-module/components/style-book/index.js.map +1 -1
  202. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +41 -9
  203. package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
  204. package/build-module/components/welcome-guide/page.js +2 -2
  205. package/build-module/components/welcome-guide/page.js.map +1 -1
  206. package/build-module/components/welcome-guide/template.js +6 -3
  207. package/build-module/components/welcome-guide/template.js.map +1 -1
  208. package/build-module/hooks/commands/use-edit-mode-commands.js +24 -14
  209. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  210. package/build-module/store/actions.js +4 -1
  211. package/build-module/store/actions.js.map +1 -1
  212. package/build-module/store/private-actions.js +1 -25
  213. package/build-module/store/private-actions.js.map +1 -1
  214. package/build-module/store/private-selectors.js +0 -22
  215. package/build-module/store/private-selectors.js.map +1 -1
  216. package/build-module/store/reducer.js +1 -38
  217. package/build-module/store/reducer.js.map +1 -1
  218. package/build-module/store/selectors.js +8 -4
  219. package/build-module/store/selectors.js.map +1 -1
  220. package/build-module/utils/constants.js +0 -10
  221. package/build-module/utils/constants.js.map +1 -1
  222. package/build-style/style-rtl.css +152 -62
  223. package/build-style/style.css +152 -62
  224. package/package.json +41 -41
  225. package/src/components/actions/index.js +76 -48
  226. package/src/components/block-editor/site-editor-canvas.js +8 -2
  227. package/src/components/dataviews/README.md +14 -11
  228. package/src/components/dataviews/add-filter.js +21 -24
  229. package/src/components/dataviews/constants.js +5 -0
  230. package/src/components/dataviews/dataviews.js +10 -10
  231. package/src/components/dataviews/filter-summary.js +79 -0
  232. package/src/components/dataviews/filters.js +18 -35
  233. package/src/components/dataviews/item-actions.js +106 -42
  234. package/src/components/dataviews/pagination.js +4 -0
  235. package/src/components/dataviews/style.scss +84 -8
  236. package/src/components/dataviews/view-actions.js +39 -41
  237. package/src/components/dataviews/view-grid.js +63 -38
  238. package/src/components/dataviews/view-list.js +50 -57
  239. package/src/components/editor/index.js +18 -34
  240. package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
  241. package/src/components/global-styles/font-library-modal/utils/index.js +20 -9
  242. package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +46 -15
  243. package/src/components/global-styles/font-library-modal/utils/test/wpKebabCase.spec.js +28 -0
  244. package/src/components/global-styles/header.js +2 -1
  245. package/src/components/global-styles/screen-block-list.js +37 -26
  246. package/src/components/global-styles/screen-revisions/index.js +39 -10
  247. package/src/components/global-styles/screen-revisions/revisions-buttons.js +65 -45
  248. package/src/components/global-styles/screen-revisions/style.scss +52 -28
  249. package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -6
  250. package/src/components/global-styles/style.scss +0 -11
  251. package/src/components/global-styles/ui.js +59 -74
  252. package/src/components/header-edit-mode/document-actions/index.js +20 -18
  253. package/src/components/header-edit-mode/index.js +1 -0
  254. package/src/components/header-edit-mode/more-menu/index.js +1 -1
  255. package/src/components/list/added-by.js +23 -63
  256. package/src/components/list/style.scss +11 -13
  257. package/src/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +12 -13
  258. package/src/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
  259. package/src/components/page-content-focus-notifications/index.js +14 -0
  260. package/src/components/page-pages/index.js +15 -20
  261. package/src/components/page-patterns/use-patterns.js +1 -1
  262. package/src/components/page-templates/dataviews-templates.js +169 -48
  263. package/src/components/page-templates/style.scss +13 -0
  264. package/src/components/preferences-modal/index.js +1 -1
  265. package/src/components/save-button/index.js +37 -24
  266. package/src/components/save-hub/index.js +15 -0
  267. package/src/components/save-hub/style.scss +7 -0
  268. package/src/components/sidebar-dataviews/custom-dataviews-list.js +2 -0
  269. package/src/components/sidebar-dataviews/default-views.js +7 -2
  270. package/src/components/sidebar-dataviews/style.scss +7 -0
  271. package/src/components/sidebar-edit-mode/index.js +13 -9
  272. package/src/components/sidebar-edit-mode/page-panels/edit-template.js +33 -52
  273. package/src/components/sidebar-edit-mode/page-panels/hooks.js +20 -9
  274. package/src/components/sidebar-edit-mode/page-panels/page-status.js +6 -6
  275. package/src/components/sidebar-edit-mode/page-panels/page-summary.js +8 -9
  276. package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +3 -3
  277. package/src/components/sidebar-edit-mode/page-panels/style.scss +9 -19
  278. package/src/components/sidebar-edit-mode/settings-header/index.js +8 -9
  279. package/src/components/sidebar-navigation-screen/style.scss +1 -0
  280. package/src/components/sidebar-navigation-screen-page/index.js +24 -3
  281. package/src/components/sidebar-navigation-screen-template/style.scss +6 -1
  282. package/src/components/style-book/index.js +48 -35
  283. package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +69 -17
  284. package/src/components/welcome-guide/page.js +2 -2
  285. package/src/components/welcome-guide/template.js +4 -2
  286. package/src/hooks/commands/use-edit-mode-commands.js +22 -16
  287. package/src/store/actions.js +5 -1
  288. package/src/store/private-actions.js +1 -24
  289. package/src/store/private-selectors.js +0 -22
  290. package/src/store/reducer.js +0 -39
  291. package/src/store/selectors.js +12 -4
  292. package/src/store/test/actions.js +3 -32
  293. package/src/store/test/reducer.js +0 -62
  294. package/src/store/test/selectors.js +0 -35
  295. package/src/style.scss +1 -0
  296. package/src/utils/constants.js +0 -10
  297. package/build/components/dataviews/in-filter.js +0 -51
  298. package/build/components/dataviews/in-filter.js.map +0 -1
  299. package/build/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
  300. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -63
  301. package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
  302. package/build/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
  303. package/build/components/page-content-focus-manager/index.js +0 -61
  304. package/build/components/page-content-focus-manager/index.js.map +0 -1
  305. package/build/components/sidebar-edit-mode/page-panels/publish-date.js +0 -87
  306. package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
  307. package/build-module/components/dataviews/in-filter.js +0 -42
  308. package/build-module/components/dataviews/in-filter.js.map +0 -1
  309. package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
  310. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -56
  311. package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
  312. package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
  313. package/build-module/components/page-content-focus-manager/index.js +0 -52
  314. package/build-module/components/page-content-focus-manager/index.js.map +0 -1
  315. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +0 -80
  316. package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
  317. package/src/components/dataviews/in-filter.js +0 -63
  318. package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -57
  319. package/src/components/page-content-focus-manager/index.js +0 -51
  320. package/src/components/sidebar-edit-mode/page-panels/publish-date.js +0 -94
package/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 5.24.0 (2023-11-29)
6
+
5
7
  ## 5.23.0 (2023-11-16)
6
8
 
7
9
  ## 5.22.0 (2023-11-02)
@@ -3,12 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.postRevisionsAction = void 0;
6
+ exports.trashPostAction = exports.postRevisionsAction = void 0;
7
7
  exports.useEditPostAction = useEditPostAction;
8
8
  exports.usePermanentlyDeletePostAction = usePermanentlyDeletePostAction;
9
9
  exports.useRestorePostAction = useRestorePostAction;
10
- exports.useTrashPostAction = useTrashPostAction;
11
10
  exports.viewPostAction = void 0;
11
+ var _react = require("react");
12
12
  var _icons = require("@wordpress/icons");
13
13
  var _url = require("@wordpress/url");
14
14
  var _data = require("@wordpress/data");
@@ -18,6 +18,7 @@ var _i18n = require("@wordpress/i18n");
18
18
  var _notices = require("@wordpress/notices");
19
19
  var _element = require("@wordpress/element");
20
20
  var _router = require("@wordpress/router");
21
+ var _components = require("@wordpress/components");
21
22
  var _lockUnlock = require("../../lock-unlock");
22
23
  /**
23
24
  * WordPress dependencies
@@ -30,43 +31,60 @@ var _lockUnlock = require("../../lock-unlock");
30
31
  const {
31
32
  useHistory
32
33
  } = (0, _lockUnlock.unlock)(_router.privateApis);
33
- function useTrashPostAction() {
34
- const {
35
- createSuccessNotice,
36
- createErrorNotice
37
- } = (0, _data.useDispatch)(_notices.store);
38
- const {
39
- deleteEntityRecord
40
- } = (0, _data.useDispatch)(_coreData.store);
41
- return (0, _element.useMemo)(() => ({
42
- id: 'move-to-trash',
43
- label: (0, _i18n.__)('Move to Trash'),
44
- isPrimary: true,
45
- icon: _icons.trash,
46
- isEligible({
47
- status
48
- }) {
49
- return status !== 'trash';
50
- },
51
- async callback(post) {
52
- try {
53
- await deleteEntityRecord('postType', post.type, post.id, {}, {
54
- throwOnError: true
55
- });
56
- createSuccessNotice((0, _i18n.sprintf)( /* translators: The page's title. */
57
- (0, _i18n.__)('"%s" moved to the Trash.'), (0, _htmlEntities.decodeEntities)(post.title.rendered)), {
58
- type: 'snackbar',
59
- id: 'edit-site-page-trashed'
60
- });
61
- } catch (error) {
62
- const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : (0, _i18n.__)('An error occurred while moving the page to the trash.');
63
- createErrorNotice(errorMessage, {
64
- type: 'snackbar'
65
- });
34
+ const trashPostAction = {
35
+ id: 'move-to-trash',
36
+ label: (0, _i18n.__)('Move to Trash'),
37
+ isPrimary: true,
38
+ icon: _icons.trash,
39
+ isEligible({
40
+ status
41
+ }) {
42
+ return status !== 'trash';
43
+ },
44
+ hideModalHeader: true,
45
+ RenderModal: ({
46
+ item: post,
47
+ closeModal
48
+ }) => {
49
+ const {
50
+ createSuccessNotice,
51
+ createErrorNotice
52
+ } = (0, _data.useDispatch)(_notices.store);
53
+ const {
54
+ deleteEntityRecord
55
+ } = (0, _data.useDispatch)(_coreData.store);
56
+ return (0, _react.createElement)(_components.__experimentalVStack, {
57
+ spacing: "5"
58
+ }, (0, _react.createElement)(_components.__experimentalText, null, (0, _i18n.sprintf)(
59
+ // translators: %s: The page's title.
60
+ (0, _i18n.__)('Are you sure you want to delete "%s"?'), (0, _htmlEntities.decodeEntities)(post.title.rendered))), (0, _react.createElement)(_components.__experimentalHStack, {
61
+ justify: "right"
62
+ }, (0, _react.createElement)(_components.Button, {
63
+ variant: "tertiary",
64
+ onClick: closeModal
65
+ }, (0, _i18n.__)('Cancel')), (0, _react.createElement)(_components.Button, {
66
+ variant: "primary",
67
+ onClick: async () => {
68
+ try {
69
+ await deleteEntityRecord('postType', post.type, post.id, {}, {
70
+ throwOnError: true
71
+ });
72
+ createSuccessNotice((0, _i18n.sprintf)( /* translators: The page's title. */
73
+ (0, _i18n.__)('"%s" moved to the Trash.'), (0, _htmlEntities.decodeEntities)(post.title.rendered)), {
74
+ type: 'snackbar',
75
+ id: 'edit-site-page-trashed'
76
+ });
77
+ } catch (error) {
78
+ const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : (0, _i18n.__)('An error occurred while moving the page to the trash.');
79
+ createErrorNotice(errorMessage, {
80
+ type: 'snackbar'
81
+ });
82
+ }
66
83
  }
67
- }
68
- }), [createSuccessNotice, createErrorNotice, deleteEntityRecord]);
69
- }
84
+ }, (0, _i18n.__)('Delete'))));
85
+ }
86
+ };
87
+ exports.trashPostAction = trashPostAction;
70
88
  function usePermanentlyDeletePostAction() {
71
89
  const {
72
90
  createSuccessNotice,
@@ -1 +1 @@
1
- {"version":3,"names":["_icons","require","_url","_data","_htmlEntities","_coreData","_i18n","_notices","_element","_router","_lockUnlock","useHistory","unlock","routerPrivateApis","useTrashPostAction","createSuccessNotice","createErrorNotice","useDispatch","noticesStore","deleteEntityRecord","coreStore","useMemo","id","label","__","isPrimary","icon","trash","isEligible","status","callback","post","type","throwOnError","sprintf","decodeEntities","title","rendered","error","errorMessage","message","code","usePermanentlyDeletePostAction","force","useRestorePostAction","editEntityRecord","saveEditedEntityRecord","backup","viewPostAction","external","document","location","href","link","exports","useEditPostAction","history","push","postId","postType","canvas","postRevisionsAction","_post$_links$predeces","_post$_links$version","lastRevisionId","_links","revisionsCount","count","addQueryArgs","revision"],"sources":["@wordpress/edit-site/src/components/actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { external, trash, backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport function useTrashPostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'move-to-trash',\n\t\t\tlabel: __( 'Move to Trash' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: trash,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tasync callback( post ) {\n\t\t\t\ttry {\n\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{},\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The page's title. */\n\t\t\t\t\t\t\t__( '\"%s\" moved to the Trash.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while moving the page to the trash.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[ createSuccessNotice, createErrorNotice, deleteEntityRecord ]\n\t);\n}\n\nexport function usePermanentlyDeletePostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'permanently-delete',\n\t\t\tlabel: __( 'Permanently delete' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: trash,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status === 'trash';\n\t\t\t},\n\t\t\tasync callback( post ) {\n\t\t\t\ttry {\n\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t\t__( '\"%s\" permanently deleted.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-post-permanently-deleted',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while permanently deleting the post.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[ createSuccessNotice, createErrorNotice, deleteEntityRecord ]\n\t);\n}\n\nexport function useRestorePostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\tuseDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'restore',\n\t\t\tlabel: __( 'Restore' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: backup,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status === 'trash';\n\t\t\t},\n\t\t\tasync callback( post ) {\n\t\t\t\tawait editEntityRecord( 'postType', post.type, post.id, {\n\t\t\t\t\tstatus: 'draft',\n\t\t\t\t} );\n\t\t\t\ttry {\n\t\t\t\t\tawait saveEditedEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t\t__( '\"%s\" has been restored.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-post-restored',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while restoring the post.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[\n\t\t\tcreateSuccessNotice,\n\t\t\tcreateErrorNotice,\n\t\t\teditEntityRecord,\n\t\t\tsaveEditedEntityRecord,\n\t\t]\n\t);\n}\n\nexport const viewPostAction = {\n\tid: 'view-post',\n\tlabel: __( 'View' ),\n\tisPrimary: true,\n\ticon: external,\n\tisEligible( post ) {\n\t\treturn post.status !== 'trash';\n\t},\n\tcallback( post ) {\n\t\tdocument.location.href = post.link;\n\t},\n};\n\nexport function useEditPostAction() {\n\tconst history = useHistory();\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'edit-post',\n\t\t\tlabel: __( 'Edit' ),\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tcallback( post ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t},\n\t\t} ),\n\t\t[ history ]\n\t);\n}\nexport const postRevisionsAction = {\n\tid: 'view-post-revisions',\n\tlabel: __( 'View revisions' ),\n\tisPrimary: false,\n\tisEligible: ( post ) => {\n\t\tif ( post.status === 'trash' ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst lastRevisionId =\n\t\t\tpost?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\t\tconst revisionsCount =\n\t\t\tpost?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\t\treturn lastRevisionId && revisionsCount > 1;\n\t},\n\tcallback( post ) {\n\t\tconst href = addQueryArgs( 'revision.php', {\n\t\t\trevision: post?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id,\n\t\t} );\n\t\tdocument.location.href = href;\n\t},\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_icons","require","_url","_data","_htmlEntities","_coreData","_i18n","_notices","_element","_router","_components","_lockUnlock","useHistory","unlock","routerPrivateApis","trashPostAction","id","label","__","isPrimary","icon","trash","isEligible","status","hideModalHeader","RenderModal","item","post","closeModal","createSuccessNotice","createErrorNotice","useDispatch","noticesStore","deleteEntityRecord","coreStore","_react","createElement","__experimentalVStack","spacing","__experimentalText","sprintf","decodeEntities","title","rendered","__experimentalHStack","justify","Button","variant","onClick","type","throwOnError","error","errorMessage","message","code","exports","usePermanentlyDeletePostAction","useMemo","callback","force","useRestorePostAction","editEntityRecord","saveEditedEntityRecord","backup","viewPostAction","external","document","location","href","link","useEditPostAction","history","push","postId","postType","canvas","postRevisionsAction","_post$_links$predeces","_post$_links$version","lastRevisionId","_links","revisionsCount","count","addQueryArgs","revision"],"sources":["@wordpress/edit-site/src/components/actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { external, trash, backup } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport {\n\tButton,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport const trashPostAction = {\n\tid: 'move-to-trash',\n\tlabel: __( 'Move to Trash' ),\n\tisPrimary: true,\n\ticon: trash,\n\tisEligible( { status } ) {\n\t\treturn status !== 'trash';\n\t},\n\thideModalHeader: true,\n\tRenderModal: ( { item: post, closeModal } ) => {\n\t\tconst { createSuccessNotice, createErrorNotice } =\n\t\t\tuseDispatch( noticesStore );\n\t\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\t\treturn (\n\t\t\t<VStack spacing=\"5\">\n\t\t\t\t<Text>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t// translators: %s: The page's title.\n\t\t\t\t\t\t__( 'Are you sure you want to delete \"%s\"?' ),\n\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t) }\n\t\t\t\t</Text>\n\t\t\t\t<HStack justify=\"right\">\n\t\t\t\t\t<Button variant=\"tertiary\" onClick={ closeModal }>\n\t\t\t\t\t\t{ __( 'Cancel' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\tonClick={ async () => {\n\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t\t\t\t'postType',\n\t\t\t\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t\t\t\t{},\n\t\t\t\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t\t\t/* translators: The page's title. */\n\t\t\t\t\t\t\t\t\t\t__( '\"%s\" moved to the Trash.' ),\n\t\t\t\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\t\t\tid: 'edit-site-page-trashed',\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} catch ( error ) {\n\t\t\t\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\t\t\t\terror.message &&\n\t\t\t\t\t\t\t\t\terror.code !== 'unknown_error'\n\t\t\t\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t\t\t\t'An error occurred while moving the page to the trash.'\n\t\t\t\t\t\t\t\t\t\t );\n\n\t\t\t\t\t\t\t\tcreateErrorNotice( errorMessage, {\n\t\t\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\t\t} );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Delete' ) }\n\t\t\t\t\t</Button>\n\t\t\t\t</HStack>\n\t\t\t</VStack>\n\t\t);\n\t},\n};\n\nexport function usePermanentlyDeletePostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'permanently-delete',\n\t\t\tlabel: __( 'Permanently delete' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: trash,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status === 'trash';\n\t\t\t},\n\t\t\tasync callback( post ) {\n\t\t\t\ttry {\n\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{ force: true },\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t\t__( '\"%s\" permanently deleted.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-post-permanently-deleted',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while permanently deleting the post.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[ createSuccessNotice, createErrorNotice, deleteEntityRecord ]\n\t);\n}\n\nexport function useRestorePostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { editEntityRecord, saveEditedEntityRecord } =\n\t\tuseDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'restore',\n\t\t\tlabel: __( 'Restore' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: backup,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status === 'trash';\n\t\t\t},\n\t\t\tasync callback( post ) {\n\t\t\t\tawait editEntityRecord( 'postType', post.type, post.id, {\n\t\t\t\t\tstatus: 'draft',\n\t\t\t\t} );\n\t\t\t\ttry {\n\t\t\t\t\tawait saveEditedEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The posts's title. */\n\t\t\t\t\t\t\t__( '\"%s\" has been restored.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-post-restored',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while restoring the post.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[\n\t\t\tcreateSuccessNotice,\n\t\t\tcreateErrorNotice,\n\t\t\teditEntityRecord,\n\t\t\tsaveEditedEntityRecord,\n\t\t]\n\t);\n}\n\nexport const viewPostAction = {\n\tid: 'view-post',\n\tlabel: __( 'View' ),\n\tisPrimary: true,\n\ticon: external,\n\tisEligible( post ) {\n\t\treturn post.status !== 'trash';\n\t},\n\tcallback( post ) {\n\t\tdocument.location.href = post.link;\n\t},\n};\n\nexport function useEditPostAction() {\n\tconst history = useHistory();\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'edit-post',\n\t\t\tlabel: __( 'Edit' ),\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tcallback( post ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t},\n\t\t} ),\n\t\t[ history ]\n\t);\n}\nexport const postRevisionsAction = {\n\tid: 'view-post-revisions',\n\tlabel: __( 'View revisions' ),\n\tisPrimary: false,\n\tisEligible: ( post ) => {\n\t\tif ( post.status === 'trash' ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst lastRevisionId =\n\t\t\tpost?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\t\tconst revisionsCount =\n\t\t\tpost?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\t\treturn lastRevisionId && revisionsCount > 1;\n\t},\n\tcallback( post ) {\n\t\tconst href = addQueryArgs( 'revision.php', {\n\t\t\trevision: post?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id,\n\t\t} );\n\t\tdocument.location.href = href;\n\t},\n};\n"],"mappings":"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"}
@@ -19,7 +19,7 @@ var _useSiteEditorSettings = _interopRequireDefault(require("./use-site-editor-s
19
19
  var _store = require("../../store");
20
20
  var _constants = require("../../utils/constants");
21
21
  var _lockUnlock = require("../../lock-unlock");
22
- var _pageContentFocusManager = _interopRequireDefault(require("../page-content-focus-manager"));
22
+ var _pageContentFocusNotifications = _interopRequireDefault(require("../page-content-focus-notifications"));
23
23
  /**
24
24
  * External dependencies
25
25
  */
@@ -108,9 +108,14 @@ function SiteEditorCanvas() {
108
108
  className: (0, _classnames.default)('edit-site-block-editor__block-list wp-site-blocks', {
109
109
  'is-navigation-block': isTemplateTypeNavigation
110
110
  }),
111
+ dropZoneElement:
112
+ // Pass in the html element of the iframe to ensure that
113
+ // the drop zone extends to the very edges of the iframe,
114
+ // even if the template is shorter than the viewport.
115
+ contentRef.current?.parentNode,
111
116
  layout: LAYOUT,
112
117
  renderAppender: showBlockAppender
113
- }))))), (0, _react.createElement)(_pageContentFocusManager.default, {
118
+ }))))), (0, _react.createElement)(_pageContentFocusNotifications.default, {
114
119
  contentRef: contentRef
115
120
  }));
116
121
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_element","_blockEditor","_compose","_backButton","_resizableEditor","_editorCanvas","_editorCanvasContainer","_useSiteEditorSettings","_store","_constants","_lockUnlock","_pageContentFocusManager","LAYOUT","type","alignments","SiteEditorCanvas","clearSelectedBlock","useDispatch","blockEditorStore","templateType","isFocusMode","isViewMode","useSelect","select","getEditedPostType","getCanvasMode","unlock","editSiteStore","_templateType","FOCUSABLE_ENTITIES","includes","resizeObserver","sizes","useResizeObserver","settings","useSiteEditorSettings","hasBlocks","getBlockCount","blocks","isMobileViewport","useViewportMatch","enableResizing","contentRef","useRef","isTemplateTypeNavigation","NAVIGATION_POST_TYPE","isNavigationFocusMode","showBlockAppender","undefined","forceFullHeight","_react","createElement","Fragment","default","Slot","editorCanvasView","className","BlockTools","classnames","__unstableContentRef","onClick","event","target","currentTarget","height","BlockList","layout","renderAppender"],"sources":["@wordpress/edit-site/src/components/block-editor/site-editor-canvas.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport {\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useViewportMatch, useResizeObserver } from '@wordpress/compose';\n/**\n * Internal dependencies\n */\nimport BackButton from './back-button';\nimport ResizableEditor from './resizable-editor';\nimport EditorCanvas from './editor-canvas';\nimport EditorCanvasContainer from '../editor-canvas-container';\nimport useSiteEditorSettings from './use-site-editor-settings';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tFOCUSABLE_ENTITIES,\n\tNAVIGATION_POST_TYPE,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport PageContentFocusManager from '../page-content-focus-manager';\n\nconst LAYOUT = {\n\ttype: 'default',\n\t// At the root level of the site editor, no alignments should be allowed.\n\talignments: [],\n};\n\nexport default function SiteEditorCanvas() {\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst { templateType, isFocusMode, isViewMode } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\tconst _templateType = getEditedPostType();\n\n\t\treturn {\n\t\t\ttemplateType: _templateType,\n\t\t\tisFocusMode: FOCUSABLE_ENTITIES.includes( _templateType ),\n\t\t\tisViewMode: getCanvasMode() === 'view',\n\t\t};\n\t}, [] );\n\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\n\tconst settings = useSiteEditorSettings();\n\n\tconst { hasBlocks } = useSelect( ( select ) => {\n\t\tconst { getBlockCount } = select( blockEditorStore );\n\n\t\tconst blocks = getBlockCount();\n\n\t\treturn {\n\t\t\thasBlocks: !! blocks,\n\t\t};\n\t}, [] );\n\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst enableResizing =\n\t\tisFocusMode &&\n\t\t! isViewMode &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport;\n\n\tconst contentRef = useRef();\n\tconst isTemplateTypeNavigation = templateType === NAVIGATION_POST_TYPE;\n\n\tconst isNavigationFocusMode = isTemplateTypeNavigation && isFocusMode;\n\n\t// Hide the appender when:\n\t// - In navigation focus mode (should only allow the root Nav block).\n\t// - In view mode (i.e. not editing).\n\tconst showBlockAppender =\n\t\t( isNavigationFocusMode && hasBlocks ) || isViewMode\n\t\t\t? false\n\t\t\t: undefined;\n\n\tconst forceFullHeight = isNavigationFocusMode;\n\n\treturn (\n\t\t<>\n\t\t\t<EditorCanvasContainer.Slot>\n\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t<div className=\"edit-site-visual-editor is-focus-mode\">\n\t\t\t\t\t\t\t{ editorCanvasView }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<BlockTools\n\t\t\t\t\t\t\tclassName={ classnames( 'edit-site-visual-editor', {\n\t\t\t\t\t\t\t\t'is-focus-mode':\n\t\t\t\t\t\t\t\t\tisFocusMode || !! editorCanvasView,\n\t\t\t\t\t\t\t\t'is-view-mode': isViewMode,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t__unstableContentRef={ contentRef }\n\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t// Clear selected block when clicking on the gray background.\n\t\t\t\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BackButton />\n\t\t\t\t\t\t\t<ResizableEditor\n\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\theight={\n\t\t\t\t\t\t\t\t\tsizes.height && ! forceFullHeight\n\t\t\t\t\t\t\t\t\t\t? sizes.height\n\t\t\t\t\t\t\t\t\t\t: '100%'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EditorCanvas\n\t\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ resizeObserver }\n\t\t\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t\t\t'edit-site-block-editor__block-list wp-site-blocks',\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t'is-navigation-block':\n\t\t\t\t\t\t\t\t\t\t\t\t\tisTemplateTypeNavigation,\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tlayout={ LAYOUT }\n\t\t\t\t\t\t\t\t\t\trenderAppender={ showBlockAppender }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</EditorCanvas>\n\t\t\t\t\t\t\t</ResizableEditor>\n\t\t\t\t\t\t</BlockTools>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</EditorCanvasContainer.Slot>\n\t\t\t<PageContentFocusManager contentRef={ contentRef } />\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","_interopRequireDefault","require","_data","_element","_blockEditor","_compose","_backButton","_resizableEditor","_editorCanvas","_editorCanvasContainer","_useSiteEditorSettings","_store","_constants","_lockUnlock","_pageContentFocusNotifications","LAYOUT","type","alignments","SiteEditorCanvas","clearSelectedBlock","useDispatch","blockEditorStore","templateType","isFocusMode","isViewMode","useSelect","select","getEditedPostType","getCanvasMode","unlock","editSiteStore","_templateType","FOCUSABLE_ENTITIES","includes","resizeObserver","sizes","useResizeObserver","settings","useSiteEditorSettings","hasBlocks","getBlockCount","blocks","isMobileViewport","useViewportMatch","enableResizing","contentRef","useRef","isTemplateTypeNavigation","NAVIGATION_POST_TYPE","isNavigationFocusMode","showBlockAppender","undefined","forceFullHeight","_react","createElement","Fragment","default","Slot","editorCanvasView","className","BlockTools","classnames","__unstableContentRef","onClick","event","target","currentTarget","height","BlockList","dropZoneElement","current","parentNode","layout","renderAppender"],"sources":["@wordpress/edit-site/src/components/block-editor/site-editor-canvas.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useRef } from '@wordpress/element';\nimport {\n\tBlockList,\n\tBlockTools,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useViewportMatch, useResizeObserver } from '@wordpress/compose';\n/**\n * Internal dependencies\n */\nimport BackButton from './back-button';\nimport ResizableEditor from './resizable-editor';\nimport EditorCanvas from './editor-canvas';\nimport EditorCanvasContainer from '../editor-canvas-container';\nimport useSiteEditorSettings from './use-site-editor-settings';\nimport { store as editSiteStore } from '../../store';\nimport {\n\tFOCUSABLE_ENTITIES,\n\tNAVIGATION_POST_TYPE,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport PageContentFocusNotifications from '../page-content-focus-notifications';\n\nconst LAYOUT = {\n\ttype: 'default',\n\t// At the root level of the site editor, no alignments should be allowed.\n\talignments: [],\n};\n\nexport default function SiteEditorCanvas() {\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst { templateType, isFocusMode, isViewMode } = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getCanvasMode } = unlock(\n\t\t\tselect( editSiteStore )\n\t\t);\n\n\t\tconst _templateType = getEditedPostType();\n\n\t\treturn {\n\t\t\ttemplateType: _templateType,\n\t\t\tisFocusMode: FOCUSABLE_ENTITIES.includes( _templateType ),\n\t\t\tisViewMode: getCanvasMode() === 'view',\n\t\t};\n\t}, [] );\n\n\tconst [ resizeObserver, sizes ] = useResizeObserver();\n\n\tconst settings = useSiteEditorSettings();\n\n\tconst { hasBlocks } = useSelect( ( select ) => {\n\t\tconst { getBlockCount } = select( blockEditorStore );\n\n\t\tconst blocks = getBlockCount();\n\n\t\treturn {\n\t\t\thasBlocks: !! blocks,\n\t\t};\n\t}, [] );\n\n\tconst isMobileViewport = useViewportMatch( 'small', '<' );\n\tconst enableResizing =\n\t\tisFocusMode &&\n\t\t! isViewMode &&\n\t\t// Disable resizing in mobile viewport.\n\t\t! isMobileViewport;\n\n\tconst contentRef = useRef();\n\tconst isTemplateTypeNavigation = templateType === NAVIGATION_POST_TYPE;\n\n\tconst isNavigationFocusMode = isTemplateTypeNavigation && isFocusMode;\n\n\t// Hide the appender when:\n\t// - In navigation focus mode (should only allow the root Nav block).\n\t// - In view mode (i.e. not editing).\n\tconst showBlockAppender =\n\t\t( isNavigationFocusMode && hasBlocks ) || isViewMode\n\t\t\t? false\n\t\t\t: undefined;\n\n\tconst forceFullHeight = isNavigationFocusMode;\n\n\treturn (\n\t\t<>\n\t\t\t<EditorCanvasContainer.Slot>\n\t\t\t\t{ ( [ editorCanvasView ] ) =>\n\t\t\t\t\teditorCanvasView ? (\n\t\t\t\t\t\t<div className=\"edit-site-visual-editor is-focus-mode\">\n\t\t\t\t\t\t\t{ editorCanvasView }\n\t\t\t\t\t\t</div>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<BlockTools\n\t\t\t\t\t\t\tclassName={ classnames( 'edit-site-visual-editor', {\n\t\t\t\t\t\t\t\t'is-focus-mode':\n\t\t\t\t\t\t\t\t\tisFocusMode || !! editorCanvasView,\n\t\t\t\t\t\t\t\t'is-view-mode': isViewMode,\n\t\t\t\t\t\t\t} ) }\n\t\t\t\t\t\t\t__unstableContentRef={ contentRef }\n\t\t\t\t\t\t\tonClick={ ( event ) => {\n\t\t\t\t\t\t\t\t// Clear selected block when clicking on the gray background.\n\t\t\t\t\t\t\t\tif ( event.target === event.currentTarget ) {\n\t\t\t\t\t\t\t\t\tclearSelectedBlock();\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<BackButton />\n\t\t\t\t\t\t\t<ResizableEditor\n\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\theight={\n\t\t\t\t\t\t\t\t\tsizes.height && ! forceFullHeight\n\t\t\t\t\t\t\t\t\t\t? sizes.height\n\t\t\t\t\t\t\t\t\t\t: '100%'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<EditorCanvas\n\t\t\t\t\t\t\t\t\tenableResizing={ enableResizing }\n\t\t\t\t\t\t\t\t\tsettings={ settings }\n\t\t\t\t\t\t\t\t\tcontentRef={ contentRef }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ resizeObserver }\n\t\t\t\t\t\t\t\t\t<BlockList\n\t\t\t\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t\t\t\t'edit-site-block-editor__block-list wp-site-blocks',\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t'is-navigation-block':\n\t\t\t\t\t\t\t\t\t\t\t\t\tisTemplateTypeNavigation,\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\tdropZoneElement={\n\t\t\t\t\t\t\t\t\t\t\t// Pass in the html element of the iframe to ensure that\n\t\t\t\t\t\t\t\t\t\t\t// the drop zone extends to the very edges of the iframe,\n\t\t\t\t\t\t\t\t\t\t\t// even if the template is shorter than the viewport.\n\t\t\t\t\t\t\t\t\t\t\tcontentRef.current?.parentNode\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tlayout={ LAYOUT }\n\t\t\t\t\t\t\t\t\t\trenderAppender={ showBlockAppender }\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</EditorCanvas>\n\t\t\t\t\t\t\t</ResizableEditor>\n\t\t\t\t\t\t</BlockTools>\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</EditorCanvasContainer.Slot>\n\t\t\t<PageContentFocusNotifications contentRef={ contentRef } />\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -9,7 +9,7 @@ var _components = require("@wordpress/components");
9
9
  var _icons = require("@wordpress/icons");
10
10
  var _i18n = require("@wordpress/i18n");
11
11
  var _lockUnlock = require("../../lock-unlock");
12
- var _inFilter = require("./in-filter");
12
+ var _constants = require("./constants");
13
13
  /**
14
14
  * WordPress dependencies
15
15
  */
@@ -19,12 +19,11 @@ var _inFilter = require("./in-filter");
19
19
  */
20
20
 
21
21
  const {
22
- DropdownMenuV2,
23
- DropdownSubMenuV2,
24
- DropdownSubMenuTriggerV2,
25
- DropdownMenuItemV2
22
+ DropdownMenuV2: DropdownMenu,
23
+ DropdownSubMenuV2: DropdownSubMenu,
24
+ DropdownSubMenuTriggerV2: DropdownSubMenuTrigger,
25
+ DropdownMenuItemV2: DropdownMenuItem
26
26
  } = (0, _lockUnlock.unlock)(_components.privateApis);
27
- const VALID_OPERATORS = [_inFilter.OPERATOR_IN];
28
27
  function AddFilter({
29
28
  fields,
30
29
  view,
@@ -32,45 +31,47 @@ function AddFilter({
32
31
  }) {
33
32
  const filters = [];
34
33
  fields.forEach(field => {
35
- if (!field.filters) {
34
+ if (!field.type) {
36
35
  return;
37
36
  }
38
- field.filters.forEach(filter => {
39
- if (VALID_OPERATORS.some(operator => operator === filter)) {
37
+ switch (field.type) {
38
+ case _constants.ENUMERATION_TYPE:
40
39
  filters.push({
41
40
  field: field.id,
42
41
  name: field.header,
43
- operator: filter,
44
42
  elements: field.elements || [],
45
- isVisible: view.filters.some(f => f.field === field.id && f.operator === filter)
43
+ isVisible: view.filters.some(f => f.field === field.id && f.operator === _constants.OPERATOR_IN)
46
44
  });
47
- }
48
- });
45
+ }
49
46
  });
50
47
  if (filters.length === 0) {
51
48
  return null;
52
49
  }
53
- return (0, _react.createElement)(DropdownMenuV2, {
50
+ return (0, _react.createElement)(DropdownMenu, {
54
51
  label: (0, _i18n.__)('Add filter'),
55
52
  trigger: (0, _react.createElement)(_components.Button, {
56
53
  disabled: filters.length === view.filters?.length,
57
54
  __experimentalIsFocusable: true,
58
- icon: _icons.plus,
59
55
  variant: "tertiary",
60
56
  size: "compact"
61
- }, (0, _i18n.__)('Add filter'))
57
+ }, (0, _react.createElement)(_components.Icon, {
58
+ icon: _icons.plus,
59
+ style: {
60
+ flexShrink: 0
61
+ }
62
+ }), (0, _i18n.__)('Add filter'))
62
63
  }, filters.map(filter => {
63
64
  if (filter.isVisible) {
64
65
  return null;
65
66
  }
66
- return (0, _react.createElement)(DropdownSubMenuV2, {
67
+ return (0, _react.createElement)(DropdownSubMenu, {
67
68
  key: filter.field,
68
- trigger: (0, _react.createElement)(DropdownSubMenuTriggerV2, {
69
+ trigger: (0, _react.createElement)(DropdownSubMenuTrigger, {
69
70
  suffix: (0, _react.createElement)(_components.Icon, {
70
71
  icon: _icons.chevronRightSmall
71
72
  })
72
73
  }, filter.name)
73
- }, filter.elements.map(element => (0, _react.createElement)(DropdownMenuItemV2, {
74
+ }, filter.elements.map(element => (0, _react.createElement)(DropdownMenuItem, {
74
75
  key: element.value,
75
76
  onSelect: () => {
76
77
  onChangeView(currentView => ({
@@ -78,7 +79,7 @@ function AddFilter({
78
79
  page: 1,
79
80
  filters: [...currentView.filters, {
80
81
  field: filter.field,
81
- operator: 'in',
82
+ operator: _constants.OPERATOR_IN,
82
83
  value: element.value
83
84
  }]
84
85
  }));
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_icons","_i18n","_lockUnlock","_inFilter","DropdownMenuV2","DropdownSubMenuV2","DropdownSubMenuTriggerV2","DropdownMenuItemV2","unlock","componentsPrivateApis","VALID_OPERATORS","OPERATOR_IN","AddFilter","fields","view","onChangeView","filters","forEach","field","filter","some","operator","push","id","name","header","elements","isVisible","f","length","_react","createElement","label","__","trigger","Button","disabled","__experimentalIsFocusable","icon","plus","variant","size","map","key","suffix","Icon","chevronRightSmall","element","value","onSelect","currentView","page","role"],"sources":["@wordpress/edit-site/src/components/dataviews/add-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tIcon,\n} from '@wordpress/components';\nimport { chevronRightSmall, plus } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { OPERATOR_IN } from './in-filter';\n\nconst {\n\tDropdownMenuV2,\n\tDropdownSubMenuV2,\n\tDropdownSubMenuTriggerV2,\n\tDropdownMenuItemV2,\n} = unlock( componentsPrivateApis );\n\nconst VALID_OPERATORS = [ OPERATOR_IN ];\n\nexport default function AddFilter( { fields, view, onChangeView } ) {\n\tconst filters = [];\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( filter ) => {\n\t\t\tif ( VALID_OPERATORS.some( ( operator ) => operator === filter ) ) {\n\t\t\t\tfilters.push( {\n\t\t\t\t\tfield: field.id,\n\t\t\t\t\tname: field.header,\n\t\t\t\t\toperator: filter,\n\t\t\t\t\telements: field.elements || [],\n\t\t\t\t\tisVisible: view.filters.some(\n\t\t\t\t\t\t( f ) => f.field === field.id && f.operator === filter\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t\t}\n\t\t} );\n\t} );\n\n\tif ( filters.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DropdownMenuV2\n\t\t\tlabel={ __( 'Add filter' ) }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tdisabled={ filters.length === view.filters?.length }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\ticon={ plus }\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t{ __( 'Add filter' ) }\n\t\t\t\t</Button>\n\t\t\t}\n\t\t>\n\t\t\t{ filters.map( ( filter ) => {\n\t\t\t\tif ( filter.isVisible ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownSubMenuV2\n\t\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t<DropdownSubMenuTriggerV2\n\t\t\t\t\t\t\t\tsuffix={ <Icon icon={ chevronRightSmall } /> }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ filter.name }\n\t\t\t\t\t\t\t</DropdownSubMenuTriggerV2>\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ filter.elements.map( ( element ) => (\n\t\t\t\t\t\t\t<DropdownMenuItemV2\n\t\t\t\t\t\t\t\tkey={ element.value }\n\t\t\t\t\t\t\t\tonSelect={ () => {\n\t\t\t\t\t\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t\t\t\t\t\t...currentView,\n\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\tfilters: [\n\t\t\t\t\t\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\t\t\toperator: 'in',\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: element.value,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ element.label }\n\t\t\t\t\t\t\t</DropdownMenuItemV2>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</DropdownSubMenuV2>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenuV2>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_icons","_i18n","_lockUnlock","_constants","DropdownMenuV2","DropdownMenu","DropdownSubMenuV2","DropdownSubMenu","DropdownSubMenuTriggerV2","DropdownSubMenuTrigger","DropdownMenuItemV2","DropdownMenuItem","unlock","componentsPrivateApis","AddFilter","fields","view","onChangeView","filters","forEach","field","type","ENUMERATION_TYPE","push","id","name","header","elements","isVisible","some","f","operator","OPERATOR_IN","length","_react","createElement","label","__","trigger","Button","disabled","__experimentalIsFocusable","variant","size","Icon","icon","plus","style","flexShrink","map","filter","key","suffix","chevronRightSmall","element","value","onSelect","currentView","page","role"],"sources":["@wordpress/edit-site/src/components/dataviews/add-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tprivateApis as componentsPrivateApis,\n\tButton,\n\tIcon,\n} from '@wordpress/components';\nimport { chevronRightSmall, plus } from '@wordpress/icons';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport { ENUMERATION_TYPE, OPERATOR_IN } from './constants';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownSubMenuV2: DropdownSubMenu,\n\tDropdownSubMenuTriggerV2: DropdownSubMenuTrigger,\n\tDropdownMenuItemV2: DropdownMenuItem,\n} = unlock( componentsPrivateApis );\n\nexport default function AddFilter( { fields, view, onChangeView } ) {\n\tconst filters = [];\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.type ) {\n\t\t\treturn;\n\t\t}\n\n\t\tswitch ( field.type ) {\n\t\t\tcase ENUMERATION_TYPE:\n\t\t\t\tfilters.push( {\n\t\t\t\t\tfield: field.id,\n\t\t\t\t\tname: field.header,\n\t\t\t\t\telements: field.elements || [],\n\t\t\t\t\tisVisible: view.filters.some(\n\t\t\t\t\t\t( f ) =>\n\t\t\t\t\t\t\tf.field === field.id && f.operator === OPERATOR_IN\n\t\t\t\t\t),\n\t\t\t\t} );\n\t\t}\n\t} );\n\n\tif ( filters.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tlabel={ __( 'Add filter' ) }\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\tdisabled={ filters.length === view.filters?.length }\n\t\t\t\t\t__experimentalIsFocusable\n\t\t\t\t\tvariant=\"tertiary\"\n\t\t\t\t\tsize=\"compact\"\n\t\t\t\t>\n\t\t\t\t\t<Icon icon={ plus } style={ { flexShrink: 0 } } />\n\t\t\t\t\t{ __( 'Add filter' ) }\n\t\t\t\t</Button>\n\t\t\t}\n\t\t>\n\t\t\t{ filters.map( ( filter ) => {\n\t\t\t\tif ( filter.isVisible ) {\n\t\t\t\t\treturn null;\n\t\t\t\t}\n\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownSubMenu\n\t\t\t\t\t\tkey={ filter.field }\n\t\t\t\t\t\ttrigger={\n\t\t\t\t\t\t\t<DropdownSubMenuTrigger\n\t\t\t\t\t\t\t\tsuffix={ <Icon icon={ chevronRightSmall } /> }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ filter.name }\n\t\t\t\t\t\t\t</DropdownSubMenuTrigger>\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ filter.elements.map( ( element ) => (\n\t\t\t\t\t\t\t<DropdownMenuItem\n\t\t\t\t\t\t\t\tkey={ element.value }\n\t\t\t\t\t\t\t\tonSelect={ () => {\n\t\t\t\t\t\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t\t\t\t\t\t...currentView,\n\t\t\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\t\t\tfilters: [\n\t\t\t\t\t\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\t\t\toperator: OPERATOR_IN,\n\t\t\t\t\t\t\t\t\t\t\t\tvalue: element.value,\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t\t\t} ) );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\trole=\"menuitemcheckbox\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ element.label }\n\t\t\t\t\t\t\t</DropdownMenuItem>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</DropdownSubMenu>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenu>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.OPERATOR_IN = exports.ENUMERATION_TYPE = void 0;
7
+ // Field types.
8
+ const ENUMERATION_TYPE = 'enumeration';
9
+
10
+ // Filter operators.
11
+ exports.ENUMERATION_TYPE = ENUMERATION_TYPE;
12
+ const OPERATOR_IN = 'in';
13
+ exports.OPERATOR_IN = OPERATOR_IN;
14
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ENUMERATION_TYPE","exports","OPERATOR_IN"],"sources":["@wordpress/edit-site/src/components/dataviews/constants.js"],"sourcesContent":["// Field types.\nexport const ENUMERATION_TYPE = 'enumeration';\n\n// Filter operators.\nexport const OPERATOR_IN = 'in';\n"],"mappings":";;;;;;AAAA;AACO,MAAMA,gBAAgB,GAAG,aAAa;;AAE7C;AAAAC,OAAA,CAAAD,gBAAA,GAAAA,gBAAA;AACO,MAAME,WAAW,GAAG,IAAI;AAACD,OAAA,CAAAC,WAAA,GAAAA,WAAA"}
@@ -46,6 +46,7 @@ function DataViews({
46
46
  searchLabel = undefined,
47
47
  actions,
48
48
  data,
49
+ getItemId,
49
50
  isLoading = false,
50
51
  paginationInfo,
51
52
  supportedLayouts
@@ -62,8 +63,11 @@ function DataViews({
62
63
  }, (0, _react.createElement)(_components.__experimentalVStack, {
63
64
  spacing: 4,
64
65
  justify: "flex-start"
65
- }, (0, _react.createElement)(_components.__experimentalHStack, null, (0, _react.createElement)(_components.__experimentalHStack, {
66
- justify: "start"
66
+ }, (0, _react.createElement)(_components.__experimentalHStack, {
67
+ alignment: "flex-start"
68
+ }, (0, _react.createElement)(_components.__experimentalHStack, {
69
+ justify: "start",
70
+ wrap: true
67
71
  }, search && (0, _react.createElement)(_search.default, {
68
72
  label: searchLabel,
69
73
  view: view,
@@ -72,21 +76,19 @@ function DataViews({
72
76
  fields: fields,
73
77
  view: view,
74
78
  onChangeView: onChangeView
75
- })), (0, _react.createElement)(_components.__experimentalHStack, {
76
- justify: "end",
77
- expanded: false
78
- }, (0, _react.createElement)(_viewActions.default, {
79
+ })), (0, _react.createElement)(_viewActions.default, {
79
80
  fields: fields,
80
81
  view: view,
81
82
  onChangeView: onChangeView,
82
83
  supportedLayouts: supportedLayouts
83
- }))), (0, _react.createElement)(ViewComponent, {
84
+ })), (0, _react.createElement)(ViewComponent, {
84
85
  fields: _fields,
85
86
  view: view,
86
87
  onChangeView: onChangeView,
87
88
  paginationInfo: paginationInfo,
88
89
  actions: actions,
89
90
  data: data,
91
+ getItemId: getItemId,
90
92
  isLoading: isLoading
91
93
  }), (0, _react.createElement)(_pagination.default, {
92
94
  view: view,
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_viewList","_interopRequireDefault","_pagination","_viewActions","_filters","_search","_viewGrid","_viewSideBySide","viewTypeSupportsMap","list","grid","preview","exports","viewTypeMap","ViewList","ViewGrid","ViewSideBySide","DataViews","view","onChangeView","fields","search","searchLabel","undefined","actions","data","isLoading","paginationInfo","supportedLayouts","ViewComponent","type","_fields","useMemo","map","field","render","getValue","_react","createElement","className","__experimentalVStack","spacing","justify","__experimentalHStack","default","label","expanded"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport Search from './search';\nimport { ViewGrid } from './view-grid';\nimport { ViewSideBySide } from './view-side-by-side';\n\n// To do: convert to view type registry.\nexport const viewTypeSupportsMap = {\n\tlist: {},\n\tgrid: {},\n\t'side-by-side': {\n\t\tpreview: true,\n\t},\n};\n\nconst viewTypeMap = {\n\tlist: ViewList,\n\tgrid: ViewGrid,\n\t'side-by-side': ViewSideBySide,\n};\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tsearch = true,\n\tsearchLabel = undefined,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n\tsupportedLayouts,\n} ) {\n\tconst ViewComponent = viewTypeMap[ view.type ];\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 } justify=\"flex-start\">\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t{ search && (\n\t\t\t\t\t\t\t<Search\n\t\t\t\t\t\t\t\tlabel={ searchLabel }\n\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\" expanded={ false }>\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\tsupportedLayouts={ supportedLayouts }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_components","require","_element","_viewList","_interopRequireDefault","_pagination","_viewActions","_filters","_search","_viewGrid","_viewSideBySide","viewTypeSupportsMap","list","grid","preview","exports","viewTypeMap","ViewList","ViewGrid","ViewSideBySide","DataViews","view","onChangeView","fields","search","searchLabel","undefined","actions","data","getItemId","isLoading","paginationInfo","supportedLayouts","ViewComponent","type","_fields","useMemo","map","field","render","getValue","_react","createElement","className","__experimentalVStack","spacing","justify","__experimentalHStack","alignment","wrap","default","label"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport Search from './search';\nimport { ViewGrid } from './view-grid';\nimport { ViewSideBySide } from './view-side-by-side';\n\n// To do: convert to view type registry.\nexport const viewTypeSupportsMap = {\n\tlist: {},\n\tgrid: {},\n\t'side-by-side': {\n\t\tpreview: true,\n\t},\n};\n\nconst viewTypeMap = {\n\tlist: ViewList,\n\tgrid: ViewGrid,\n\t'side-by-side': ViewSideBySide,\n};\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tsearch = true,\n\tsearchLabel = undefined,\n\tactions,\n\tdata,\n\tgetItemId,\n\tisLoading = false,\n\tpaginationInfo,\n\tsupportedLayouts,\n} ) {\n\tconst ViewComponent = viewTypeMap[ view.type ];\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 } justify=\"flex-start\">\n\t\t\t\t<HStack alignment=\"flex-start\">\n\t\t\t\t\t<HStack justify=\"start\" wrap>\n\t\t\t\t\t\t{ search && (\n\t\t\t\t\t\t\t<Search\n\t\t\t\t\t\t\t\tlabel={ searchLabel }\n\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<ViewActions\n\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\tsupportedLayouts={ supportedLayouts }\n\t\t\t\t\t/>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tgetItemId={ getItemId }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = FilterSummary;
7
+ var _react = require("react");
8
+ var _components = require("@wordpress/components");
9
+ var _icons = require("@wordpress/icons");
10
+ var _i18n = require("@wordpress/i18n");
11
+ var _constants = require("./constants");
12
+ var _lockUnlock = require("../../lock-unlock");
13
+ /**
14
+ * WordPress dependencies
15
+ */
16
+
17
+ /**
18
+ * Internal dependencies
19
+ */
20
+
21
+ const {
22
+ DropdownMenuV2: DropdownMenu,
23
+ DropdownMenuCheckboxItemV2: DropdownMenuCheckboxItem
24
+ } = (0, _lockUnlock.unlock)(_components.privateApis);
25
+ function FilterSummary({
26
+ filter,
27
+ view,
28
+ onChangeView
29
+ }) {
30
+ const filterInView = view.filters.find(f => f.field === filter.field);
31
+ const activeElement = filter.elements.find(element => element.value === filterInView?.value);
32
+ return (0, _react.createElement)(DropdownMenu, {
33
+ key: filter.field,
34
+ trigger: (0, _react.createElement)(_components.Button, {
35
+ variant: "tertiary",
36
+ size: "compact",
37
+ label: filter.name
38
+ }, activeElement !== undefined ? (0, _i18n.sprintf)( /* translators: 1: Filter name. 2: filter value. e.g.: "Author is Admin". */
39
+ (0, _i18n.__)('%1$s is %2$s'), filter.name, activeElement.label) : filter.name, (0, _react.createElement)(_components.Icon, {
40
+ icon: _icons.chevronDown,
41
+ style: {
42
+ flexShrink: 0
43
+ }
44
+ }))
45
+ }, filter.elements.map(element => {
46
+ return (0, _react.createElement)(DropdownMenuCheckboxItem, {
47
+ key: element.value,
48
+ value: element.value,
49
+ checked: activeElement?.value === element.value,
50
+ onSelect: () => onChangeView(currentView => ({
51
+ ...currentView,
52
+ page: 1,
53
+ filters: [...view.filters.filter(f => f.field !== filter.field), {
54
+ field: filter.field,
55
+ operator: _constants.OPERATOR_IN,
56
+ value: activeElement?.value === element.value ? undefined : element.value
57
+ }]
58
+ }))
59
+ }, element.label);
60
+ }));
61
+ }
62
+ //# sourceMappingURL=filter-summary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_icons","_i18n","_constants","_lockUnlock","DropdownMenuV2","DropdownMenu","DropdownMenuCheckboxItemV2","DropdownMenuCheckboxItem","unlock","componentsPrivateApis","FilterSummary","filter","view","onChangeView","filterInView","filters","find","f","field","activeElement","elements","element","value","_react","createElement","key","trigger","Button","variant","size","label","name","undefined","sprintf","__","Icon","icon","chevronDown","style","flexShrink","map","checked","onSelect","currentView","page","operator","OPERATOR_IN"],"sources":["@wordpress/edit-site/src/components/dataviews/filter-summary.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\tprivateApis as componentsPrivateApis,\n\tIcon,\n} from '@wordpress/components';\nimport { chevronDown } from '@wordpress/icons';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { OPERATOR_IN } from './constants';\nimport { unlock } from '../../lock-unlock';\n\nconst {\n\tDropdownMenuV2: DropdownMenu,\n\tDropdownMenuCheckboxItemV2: DropdownMenuCheckboxItem,\n} = unlock( componentsPrivateApis );\n\nexport default function FilterSummary( { filter, view, onChangeView } ) {\n\tconst filterInView = view.filters.find( ( f ) => f.field === filter.field );\n\tconst activeElement = filter.elements.find(\n\t\t( element ) => element.value === filterInView?.value\n\t);\n\n\treturn (\n\t\t<DropdownMenu\n\t\t\tkey={ filter.field }\n\t\t\ttrigger={\n\t\t\t\t<Button variant=\"tertiary\" size=\"compact\" label={ filter.name }>\n\t\t\t\t\t{ activeElement !== undefined\n\t\t\t\t\t\t? sprintf(\n\t\t\t\t\t\t\t\t/* translators: 1: Filter name. 2: filter value. e.g.: \"Author is Admin\". */\n\t\t\t\t\t\t\t\t__( '%1$s is %2$s' ),\n\t\t\t\t\t\t\t\tfilter.name,\n\t\t\t\t\t\t\t\tactiveElement.label\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: filter.name }\n\t\t\t\t\t<Icon icon={ chevronDown } style={ { flexShrink: 0 } } />\n\t\t\t\t</Button>\n\t\t\t}\n\t\t>\n\t\t\t{ filter.elements.map( ( element ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<DropdownMenuCheckboxItem\n\t\t\t\t\t\tkey={ element.value }\n\t\t\t\t\t\tvalue={ element.value }\n\t\t\t\t\t\tchecked={ activeElement?.value === element.value }\n\t\t\t\t\t\tonSelect={ () =>\n\t\t\t\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t\t\t\t...currentView,\n\t\t\t\t\t\t\t\tpage: 1,\n\t\t\t\t\t\t\t\tfilters: [\n\t\t\t\t\t\t\t\t\t...view.filters.filter(\n\t\t\t\t\t\t\t\t\t\t( f ) => f.field !== filter.field\n\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tfield: filter.field,\n\t\t\t\t\t\t\t\t\t\toperator: OPERATOR_IN,\n\t\t\t\t\t\t\t\t\t\tvalue:\n\t\t\t\t\t\t\t\t\t\t\tactiveElement?.value ===\n\t\t\t\t\t\t\t\t\t\t\telement.value\n\t\t\t\t\t\t\t\t\t\t\t\t? undefined\n\t\t\t\t\t\t\t\t\t\t\t\t: element.value,\n\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t],\n\t\t\t\t\t\t\t} ) )\n\t\t\t\t\t\t}\n\t\t\t\t\t>\n\t\t\t\t\t\t{ element.label }\n\t\t\t\t\t</DropdownMenuCheckboxItem>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</DropdownMenu>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAKA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,KAAA,GAAAF,OAAA;AAKA,IAAAG,UAAA,GAAAH,OAAA;AACA,IAAAI,WAAA,GAAAJ,OAAA;AAfA;AACA;AACA;;AASA;AACA;AACA;;AAIA,MAAM;EACLK,cAAc,EAAEC,YAAY;EAC5BC,0BAA0B,EAAEC;AAC7B,CAAC,GAAG,IAAAC,kBAAM,EAAEC,uBAAsB,CAAC;AAEpB,SAASC,aAAaA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACvE,MAAMC,YAAY,GAAGF,IAAI,CAACG,OAAO,CAACC,IAAI,CAAIC,CAAC,IAAMA,CAAC,CAACC,KAAK,KAAKP,MAAM,CAACO,KAAM,CAAC;EAC3E,MAAMC,aAAa,GAAGR,MAAM,CAACS,QAAQ,CAACJ,IAAI,CACvCK,OAAO,IAAMA,OAAO,CAACC,KAAK,KAAKR,YAAY,EAAEQ,KAChD,CAAC;EAED,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACnB,YAAY;IACZoB,GAAG,EAAGd,MAAM,CAACO,KAAO;IACpBQ,OAAO,EACN,IAAAH,MAAA,CAAAC,aAAA,EAAC1B,WAAA,CAAA6B,MAAM;MAACC,OAAO,EAAC,UAAU;MAACC,IAAI,EAAC,SAAS;MAACC,KAAK,EAAGnB,MAAM,CAACoB;IAAM,GAC5DZ,aAAa,KAAKa,SAAS,GAC1B,IAAAC,aAAO,GACP;IACA,IAAAC,QAAE,EAAE,cAAe,CAAC,EACpBvB,MAAM,CAACoB,IAAI,EACXZ,aAAa,CAACW,KACd,CAAC,GACDnB,MAAM,CAACoB,IAAI,EACd,IAAAR,MAAA,CAAAC,aAAA,EAAC1B,WAAA,CAAAqC,IAAI;MAACC,IAAI,EAAGC,kBAAa;MAACC,KAAK,EAAG;QAAEC,UAAU,EAAE;MAAE;IAAG,CAAE,CACjD;EACR,GAEC5B,MAAM,CAACS,QAAQ,CAACoB,GAAG,CAAInB,OAAO,IAAM;IACrC,OACC,IAAAE,MAAA,CAAAC,aAAA,EAACjB,wBAAwB;MACxBkB,GAAG,EAAGJ,OAAO,CAACC,KAAO;MACrBA,KAAK,EAAGD,OAAO,CAACC,KAAO;MACvBmB,OAAO,EAAGtB,aAAa,EAAEG,KAAK,KAAKD,OAAO,CAACC,KAAO;MAClDoB,QAAQ,EAAGA,CAAA,KACV7B,YAAY,CAAI8B,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdC,IAAI,EAAE,CAAC;QACP7B,OAAO,EAAE,CACR,GAAGH,IAAI,CAACG,OAAO,CAACJ,MAAM,CACnBM,CAAC,IAAMA,CAAC,CAACC,KAAK,KAAKP,MAAM,CAACO,KAC7B,CAAC,EACD;UACCA,KAAK,EAAEP,MAAM,CAACO,KAAK;UACnB2B,QAAQ,EAAEC,sBAAW;UACrBxB,KAAK,EACJH,aAAa,EAAEG,KAAK,KACpBD,OAAO,CAACC,KAAK,GACVU,SAAS,GACTX,OAAO,CAACC;QACb,CAAC;MAEH,CAAC,CAAG;IACJ,GAECD,OAAO,CAACS,KACe,CAAC;EAE7B,CAAE,CACW,CAAC;AAEjB"}