@wordpress/edit-site 6.0.3 → 6.0.5

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 (69) hide show
  1. package/build/components/add-new-page/index.js +7 -1
  2. package/build/components/add-new-page/index.js.map +1 -1
  3. package/build/components/add-new-pattern/index.js +30 -16
  4. package/build/components/add-new-pattern/index.js.map +1 -1
  5. package/build/components/editor/index.js +2 -0
  6. package/build/components/editor/index.js.map +1 -1
  7. package/build/components/layout/index.js +5 -5
  8. package/build/components/layout/index.js.map +1 -1
  9. package/build/components/layout/router.js +15 -10
  10. package/build/components/layout/router.js.map +1 -1
  11. package/build/components/page-pages/index.js +38 -6
  12. package/build/components/page-pages/index.js.map +1 -1
  13. package/build/components/page-patterns/index.js +8 -2
  14. package/build/components/page-patterns/index.js.map +1 -1
  15. package/build/components/page-templates/index.js +10 -3
  16. package/build/components/page-templates/index.js.map +1 -1
  17. package/build/components/revisions/index.js +10 -7
  18. package/build/components/revisions/index.js.map +1 -1
  19. package/build/components/sidebar-dataviews/default-views.js +4 -4
  20. package/build/components/sidebar-dataviews/default-views.js.map +1 -1
  21. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +20 -88
  22. package/build/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  23. package/build/store/private-actions.js +7 -2
  24. package/build/store/private-actions.js.map +1 -1
  25. package/build-module/components/add-new-page/index.js +8 -2
  26. package/build-module/components/add-new-page/index.js.map +1 -1
  27. package/build-module/components/add-new-pattern/index.js +30 -16
  28. package/build-module/components/add-new-pattern/index.js.map +1 -1
  29. package/build-module/components/editor/index.js +2 -0
  30. package/build-module/components/editor/index.js.map +1 -1
  31. package/build-module/components/layout/index.js +5 -5
  32. package/build-module/components/layout/index.js.map +1 -1
  33. package/build-module/components/layout/router.js +15 -10
  34. package/build-module/components/layout/router.js.map +1 -1
  35. package/build-module/components/page-pages/index.js +38 -6
  36. package/build-module/components/page-pages/index.js.map +1 -1
  37. package/build-module/components/page-patterns/index.js +8 -2
  38. package/build-module/components/page-patterns/index.js.map +1 -1
  39. package/build-module/components/page-templates/index.js +10 -3
  40. package/build-module/components/page-templates/index.js.map +1 -1
  41. package/build-module/components/revisions/index.js +10 -7
  42. package/build-module/components/revisions/index.js.map +1 -1
  43. package/build-module/components/sidebar-dataviews/default-views.js +5 -5
  44. package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
  45. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +19 -86
  46. package/build-module/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js.map +1 -1
  47. package/build-module/store/private-actions.js +7 -2
  48. package/build-module/store/private-actions.js.map +1 -1
  49. package/build-style/style-rtl.css +17 -25
  50. package/build-style/style.css +17 -25
  51. package/package.json +17 -17
  52. package/src/components/add-new-page/index.js +14 -1
  53. package/src/components/add-new-pattern/index.js +37 -23
  54. package/src/components/block-editor/style.scss +0 -11
  55. package/src/components/editor/index.js +2 -0
  56. package/src/components/layout/index.js +2 -3
  57. package/src/components/layout/router.js +23 -15
  58. package/src/components/page-pages/index.js +45 -11
  59. package/src/components/page-pages/style.scss +1 -1
  60. package/src/components/page-patterns/index.js +8 -2
  61. package/src/components/page-patterns/style.scss +1 -8
  62. package/src/components/page-templates/index.js +9 -2
  63. package/src/components/page-templates/style.scss +1 -6
  64. package/src/components/revisions/index.js +9 -1
  65. package/src/components/sidebar-dataviews/default-views.js +13 -5
  66. package/src/hooks/use-theme-style-variations/test/use-theme-style-variations-by-property.js +1 -875
  67. package/src/hooks/use-theme-style-variations/use-theme-style-variations-by-property.js +29 -117
  68. package/src/store/private-actions.js +7 -3
  69. package/src/style.scss +13 -0
@@ -23,6 +23,7 @@ import AddNewPageModal from '../add-new-page';
23
23
  import Media from '../media';
24
24
  import { unlock } from '../../lock-unlock';
25
25
  import { useEditPostAction } from '../dataviews-actions';
26
+ import { usePrevious } from '@wordpress/compose';
26
27
  import { jsx as _jsx } from "react/jsx-runtime";
27
28
  import { jsxs as _jsxs } from "react/jsx-runtime";
28
29
  import { Fragment as _Fragment } from "react/jsx-runtime";
@@ -170,10 +171,20 @@ function FeaturedImage({
170
171
  }) : media
171
172
  });
172
173
  }
174
+ function getItemId(item) {
175
+ return item.id.toString();
176
+ }
173
177
  export default function PagePages() {
178
+ var _pages$map, _usePrevious;
174
179
  const postType = 'page';
175
180
  const [view, setView] = useView(postType);
176
181
  const history = useHistory();
182
+ const {
183
+ params: {
184
+ postId
185
+ }
186
+ } = useLocation();
187
+ const [selection, setSelection] = useState([postId]);
177
188
  const onSelectionChange = useCallback(items => {
178
189
  var _params$isCustom;
179
190
  const {
@@ -219,6 +230,18 @@ export default function PagePages() {
219
230
  totalItems,
220
231
  totalPages
221
232
  } = useEntityRecords('postType', postType, queryArgs);
233
+ const ids = (_pages$map = pages?.map(page => getItemId(page))) !== null && _pages$map !== void 0 ? _pages$map : [];
234
+ const prevIds = (_usePrevious = usePrevious(ids)) !== null && _usePrevious !== void 0 ? _usePrevious : [];
235
+ const deletedIds = prevIds.filter(id => !ids.includes(id));
236
+ const postIdWasDeleted = deletedIds.includes(postId);
237
+ useEffect(() => {
238
+ if (postIdWasDeleted) {
239
+ history.push({
240
+ ...history.getLocationWithParams().params,
241
+ postId: undefined
242
+ });
243
+ }
244
+ }, [postIdWasDeleted, history]);
222
245
  const {
223
246
  records: authors,
224
247
  isResolving: isLoadingAuthors
@@ -232,17 +255,20 @@ export default function PagePages() {
232
255
  const {
233
256
  frontPageId,
234
257
  postsPageId,
235
- addNewLabel
258
+ addNewLabel,
259
+ canCreatePage
236
260
  } = useSelect(select => {
237
261
  const {
238
262
  getEntityRecord,
239
- getPostType
263
+ getPostType,
264
+ canUser
240
265
  } = select(coreStore);
241
266
  const siteSettings = getEntityRecord('root', 'site');
242
267
  return {
243
268
  frontPageId: siteSettings?.page_on_front,
244
269
  postsPageId: siteSettings?.page_for_posts,
245
- addNewLabel: getPostType('page')?.labels?.add_new_item
270
+ addNewLabel: getPostType('page')?.labels?.add_new_item,
271
+ canCreatePage: canUser('create', 'pages')
246
272
  };
247
273
  });
248
274
  const fields = useMemo(() => [{
@@ -377,7 +403,10 @@ export default function PagePages() {
377
403
  });
378
404
  }
379
405
  }], [authors, view.type, frontPageId, postsPageId]);
380
- const postTypeActions = usePostActions('page');
406
+ const postTypeActions = usePostActions({
407
+ postType: 'page',
408
+ context: 'list'
409
+ });
381
410
  const editAction = useEditPostAction();
382
411
  const actions = useMemo(() => [editAction, ...postTypeActions], [postTypeActions, editAction]);
383
412
  const onChangeView = useCallback(newView => {
@@ -407,7 +436,7 @@ export default function PagePages() {
407
436
  };
408
437
  return /*#__PURE__*/_jsx(Page, {
409
438
  title: __('Pages'),
410
- actions: addNewLabel && /*#__PURE__*/_jsxs(_Fragment, {
439
+ actions: addNewLabel && canCreatePage && /*#__PURE__*/_jsxs(_Fragment, {
411
440
  children: [/*#__PURE__*/_jsx(Button, {
412
441
  variant: "primary",
413
442
  onClick: openModal,
@@ -426,7 +455,10 @@ export default function PagePages() {
426
455
  isLoading: isLoadingPages || isLoadingAuthors,
427
456
  view: view,
428
457
  onChangeView: onChangeView,
429
- onSelectionChange: onSelectionChange
458
+ selection: selection,
459
+ setSelection: setSelection,
460
+ onSelectionChange: onSelectionChange,
461
+ getItemId: getItemId
430
462
  })
431
463
  });
432
464
  }
@@ -1 +1 @@
1
- {"version":3,"names":["Button","__experimentalHStack","HStack","__","sprintf","useEntityRecords","store","coreStore","decodeEntities","createInterpolateElement","useState","useMemo","useCallback","useEffect","dateI18n","getDate","getSettings","privateApis","routerPrivateApis","useSelect","useDispatch","DataViews","editorPrivateApis","Page","default","Link","useLink","DEFAULT_VIEWS","DEFAULT_CONFIG_PER_VIEW_TYPE","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","OPERATOR_IS_ANY","OPERATOR_IS_NONE","AddNewPageModal","Media","unlock","useEditPostAction","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePostActions","useLocation","useHistory","EMPTY_ARRAY","getFormattedDate","dateToDisplay","formats","datetimeAbbreviated","useView","postType","params","activeView","isCustom","layout","history","selectedDefaultView","defaultView","find","slug","view","type","setView","editedViewRecord","select","getEditedEntityRecord","dataviewRecord","Number","editEntityRecord","customView","storedView","content","JSON","parse","setCustomView","viewToSet","id","stringify","setDefaultViewAndUpdateUrl","getLocationWithParams","push","STATUSES","value","label","DEFAULT_STATUSES","FeaturedImage","item","viewType","isDisabled","status","onClick","postId","canvas","hasMedia","featured_media","size","media","className","renderButton","children","title","rendered","PagePages","onSelectionChange","items","_params$isCustom","length","undefined","queryArgs","filters","forEach","filter","field","operator","author","author_exclude","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","pages","isResolving","isLoadingPages","totalItems","totalPages","authors","isLoadingAuthors","paginationInfo","frontPageId","postsPageId","addNewLabel","getEntityRecord","getPostType","siteSettings","page_on_front","page_for_posts","labels","add_new_item","fields","header","getValue","render","enableSorting","width","addLink","includes","suffix","alignment","justify","maxWidth","enableHiding","_embedded","name","elements","map","_STATUSES$find$label","filterBy","operators","isDraftOrPrivate","date","span","time","isScheduled","modified","isPending","isPublished","postTypeActions","editAction","actions","onChangeView","newView","showAddPageModal","setShowAddPageModal","openModal","closeModal","handleNewPage","variant","__next40pxDefaultSize","onSave","onClose","data","isLoading"],"sources":["@wordpress/edit-site/src/components/page-pages/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { DataViews } from '@wordpress/dataviews';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport {\n\tDEFAULT_VIEWS,\n\tDEFAULT_CONFIG_PER_VIEW_TYPE,\n} from '../sidebar-dataviews/default-views';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n} from '../../utils/constants';\n\nimport AddNewPageModal from '../add-new-page';\nimport Media from '../media';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\nconst EMPTY_ARRAY = [];\n\nconst getFormattedDate = ( dateToDisplay ) =>\n\tdateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( dateToDisplay )\n\t);\n\nfunction useView( postType ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false', layout },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst selectedDefaultView = useMemo( () => {\n\t\tconst defaultView =\n\t\t\tisCustom === 'false' &&\n\t\t\tDEFAULT_VIEWS[ postType ].find(\n\t\t\t\t( { slug } ) => slug === activeView\n\t\t\t)?.view;\n\t\tif ( isCustom === 'false' && layout ) {\n\t\t\treturn {\n\t\t\t\t...defaultView,\n\t\t\t\ttype: layout,\n\t\t\t\tlayout: {\n\t\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ layout ] || {} ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t\treturn defaultView;\n\t}, [ isCustom, activeView, layout, postType ] );\n\tconst [ view, setView ] = useState( selectedDefaultView );\n\n\tuseEffect( () => {\n\t\tif ( selectedDefaultView ) {\n\t\t\tsetView( selectedDefaultView );\n\t\t}\n\t}, [ selectedDefaultView ] );\n\tconst editedViewRecord = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isCustom !== 'true' ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\t\t\tconst dataviewRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\tNumber( activeView )\n\t\t\t);\n\t\t\treturn dataviewRecord;\n\t\t},\n\t\t[ activeView, isCustom ]\n\t);\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst customView = useMemo( () => {\n\t\tconst storedView =\n\t\t\teditedViewRecord?.content &&\n\t\t\tJSON.parse( editedViewRecord?.content );\n\t\tif ( ! storedView ) {\n\t\t\treturn storedView;\n\t\t}\n\n\t\treturn {\n\t\t\t...storedView,\n\t\t\tlayout: {\n\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ storedView?.type ] || {} ),\n\t\t\t},\n\t\t};\n\t}, [ editedViewRecord?.content ] );\n\n\tconst setCustomView = useCallback(\n\t\t( viewToSet ) => {\n\t\t\teditEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\teditedViewRecord?.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: JSON.stringify( viewToSet ),\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[ editEntityRecord, editedViewRecord?.id ]\n\t);\n\n\tconst setDefaultViewAndUpdateUrl = useCallback(\n\t\t( viewToSet ) => {\n\t\t\tif ( viewToSet.type !== view?.type ) {\n\t\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: viewToSet.type,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetView( viewToSet );\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tif ( isCustom === 'false' ) {\n\t\treturn [ view, setDefaultViewAndUpdateUrl ];\n\t} else if ( isCustom === 'true' && customView ) {\n\t\treturn [ customView, setCustomView ];\n\t}\n\t// Loading state where no the view was not found on custom views or default views.\n\treturn [ DEFAULT_VIEWS[ postType ][ 0 ].view, setDefaultViewAndUpdateUrl ];\n}\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{ value: 'draft', label: __( 'Draft' ) },\n\t{ value: 'future', label: __( 'Scheduled' ) },\n\t{ value: 'pending', label: __( 'Pending Review' ) },\n\t{ value: 'private', label: __( 'Private' ) },\n\t{ value: 'publish', label: __( 'Published' ) },\n\t{ value: 'trash', label: __( 'Trash' ) },\n];\nconst DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.\n\nfunction FeaturedImage( { item, viewType } ) {\n\tconst isDisabled = item.status === 'trash';\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst hasMedia = !! item.featured_media;\n\tconst size =\n\t\tviewType === LAYOUT_GRID\n\t\t\t? [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t: [ 'thumbnail', 'medium', 'large', 'full' ];\n\tconst media = hasMedia ? (\n\t\t<Media\n\t\t\tclassName=\"edit-site-page-pages__featured-image\"\n\t\t\tid={ item.featured_media }\n\t\t\tsize={ size }\n\t\t/>\n\t) : null;\n\tconst renderButton = viewType !== LAYOUT_LIST && ! isDisabled;\n\treturn (\n\t\t<div\n\t\t\tclassName={ `edit-site-page-pages__featured-image-wrapper is-layout-${ viewType }` }\n\t\t>\n\t\t\t{ renderButton ? (\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"page-pages-preview-field__button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || __( '(no title)' ) }\n\t\t\t\t>\n\t\t\t\t\t{ media }\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\tmedia\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nexport default function PagePages() {\n\tconst postType = 'page';\n\tconst [ view, setView ] = useView( postType );\n\tconst history = useHistory();\n\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\tif (\n\t\t\t\t( params.isCustom ?? 'false' ) === 'false' &&\n\t\t\t\tview?.type === LAYOUT_LIST\n\t\t\t) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters.forEach( ( filter ) => {\n\t\t\tif (\n\t\t\t\tfilter.field === 'status' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t} else if (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_NONE\n\t\t\t) {\n\t\t\t\tfilters.author_exclude = filter.value;\n\t\t\t}\n\t\t} );\n\t\t// We want to provide a different default item for the status filter\n\t\t// than the REST API provides.\n\t\tif ( ! filters.status || filters.status === '' ) {\n\t\t\tfilters.status = DEFAULT_STATUSES;\n\t\t}\n\n\t\treturn {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...filters,\n\t\t};\n\t}, [ view ] );\n\tconst {\n\t\trecords: pages,\n\t\tisResolving: isLoadingPages,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecords( 'postType', postType, queryArgs );\n\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user', { per_page: -1 } );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst { frontPageId, postsPageId, addNewLabel } = useSelect( ( select ) => {\n\t\tconst { getEntityRecord, getPostType } = select( coreStore );\n\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\treturn {\n\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t\taddNewLabel: getPostType( 'page' )?.labels?.add_new_item,\n\t\t};\n\t} );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\theader: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<FeaturedImage item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst addLink =\n\t\t\t\t\t\t[ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) &&\n\t\t\t\t\t\titem.status !== 'trash';\n\t\t\t\t\tconst title = addLink ? (\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\n\t\t\t\t\tlet suffix = '';\n\t\t\t\t\tif ( item.id === frontPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Front Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( item.id === postsPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\tclassName=\"edit-site-page-pages-title\"\n\t\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 300,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item._embedded?.author[ 0 ]?.name,\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\tSTATUSES.find( ( { value } ) => value === item.status )\n\t\t\t\t\t\t?.label ?? item.status,\n\t\t\t\telements: STATUSES,\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS_ANY ],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst isDraftOrPrivate = [ 'draft', 'private' ].includes(\n\t\t\t\t\t\titem.status\n\t\t\t\t\t);\n\t\t\t\t\tif ( isDraftOrPrivate ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isScheduled = item.status === 'future';\n\t\t\t\t\tif ( isScheduled ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Scheduled: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Pending & Published posts show the modified date if it's newer.\n\t\t\t\t\tconst dateToDisplay =\n\t\t\t\t\t\tgetDate( item.modified ) > getDate( item.date )\n\t\t\t\t\t\t\t? item.modified\n\t\t\t\t\t\t\t: item.date;\n\n\t\t\t\t\tconst isPending = item.status === 'pending';\n\t\t\t\t\tif ( isPending ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isPublished = item.status === 'publish';\n\t\t\t\t\tif ( isPublished ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Published: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Unknow status.\n\t\t\t\t\treturn <time>{ getFormattedDate( item.date ) }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type, frontPageId, postsPageId ]\n\t);\n\n\tconst postTypeActions = usePostActions( 'page' );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...DEFAULT_CONFIG_PER_VIEW_TYPE[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\n\tconst [ showAddPageModal, setShowAddPageModal ] = useState( false );\n\n\tconst openModal = () => setShowAddPageModal( true );\n\tconst closeModal = () => setShowAddPageModal( false );\n\tconst handleNewPage = ( { type, id } ) => {\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tcloseModal();\n\t};\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Pages' ) }\n\t\t\tactions={\n\t\t\t\taddNewLabel && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ addNewLabel }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ showAddPageModal && (\n\t\t\t\t\t\t\t<AddNewPageModal\n\t\t\t\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\t\t\t\tonClose={ closeModal }\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)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ pages || EMPTY_ARRAY }\n\t\t\t\tisLoading={ isLoadingPages || isLoadingAuthors }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Button","__experimentalHStack","HStack","__","sprintf","useEntityRecords","store","coreStore","decodeEntities","createInterpolateElement","useState","useMemo","useCallback","useEffect","dateI18n","getDate","getSettings","privateApis","routerPrivateApis","useSelect","useDispatch","DataViews","editorPrivateApis","Page","default","Link","useLink","DEFAULT_VIEWS","DEFAULT_CONFIG_PER_VIEW_TYPE","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","OPERATOR_IS_ANY","OPERATOR_IS_NONE","AddNewPageModal","Media","unlock","useEditPostAction","usePrevious","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePostActions","useLocation","useHistory","EMPTY_ARRAY","getFormattedDate","dateToDisplay","formats","datetimeAbbreviated","useView","postType","params","activeView","isCustom","layout","history","selectedDefaultView","defaultView","find","slug","view","type","setView","editedViewRecord","select","getEditedEntityRecord","dataviewRecord","Number","editEntityRecord","customView","storedView","content","JSON","parse","setCustomView","viewToSet","id","stringify","setDefaultViewAndUpdateUrl","getLocationWithParams","push","STATUSES","value","label","DEFAULT_STATUSES","FeaturedImage","item","viewType","isDisabled","status","onClick","postId","canvas","hasMedia","featured_media","size","media","className","renderButton","children","title","rendered","getItemId","toString","PagePages","_pages$map","_usePrevious","selection","setSelection","onSelectionChange","items","_params$isCustom","length","undefined","queryArgs","filters","forEach","filter","field","operator","author","author_exclude","per_page","perPage","page","_embed","order","sort","direction","orderby","search","records","pages","isResolving","isLoadingPages","totalItems","totalPages","ids","map","prevIds","deletedIds","includes","postIdWasDeleted","authors","isLoadingAuthors","paginationInfo","frontPageId","postsPageId","addNewLabel","canCreatePage","getEntityRecord","getPostType","canUser","siteSettings","page_on_front","page_for_posts","labels","add_new_item","fields","header","getValue","render","enableSorting","width","addLink","suffix","alignment","justify","maxWidth","enableHiding","_embedded","name","elements","_STATUSES$find$label","filterBy","operators","isDraftOrPrivate","date","span","time","isScheduled","modified","isPending","isPublished","postTypeActions","context","editAction","actions","onChangeView","newView","showAddPageModal","setShowAddPageModal","openModal","closeModal","handleNewPage","variant","__next40pxDefaultSize","onSave","onClose","data","isLoading"],"sources":["@wordpress/edit-site/src/components/page-pages/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { Button, __experimentalHStack as HStack } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { useEntityRecords, store as coreStore } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport {\n\tcreateInterpolateElement,\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseEffect,\n} from '@wordpress/element';\nimport { dateI18n, getDate, getSettings } from '@wordpress/date';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { DataViews } from '@wordpress/dataviews';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport {\n\tDEFAULT_VIEWS,\n\tDEFAULT_CONFIG_PER_VIEW_TYPE,\n} from '../sidebar-dataviews/default-views';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tOPERATOR_IS_ANY,\n\tOPERATOR_IS_NONE,\n} from '../../utils/constants';\n\nimport AddNewPageModal from '../add-new-page';\nimport Media from '../media';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { usePrevious } from '@wordpress/compose';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\nconst EMPTY_ARRAY = [];\n\nconst getFormattedDate = ( dateToDisplay ) =>\n\tdateI18n(\n\t\tgetSettings().formats.datetimeAbbreviated,\n\t\tgetDate( dateToDisplay )\n\t);\n\nfunction useView( postType ) {\n\tconst {\n\t\tparams: { activeView = 'all', isCustom = 'false', layout },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst selectedDefaultView = useMemo( () => {\n\t\tconst defaultView =\n\t\t\tisCustom === 'false' &&\n\t\t\tDEFAULT_VIEWS[ postType ].find(\n\t\t\t\t( { slug } ) => slug === activeView\n\t\t\t)?.view;\n\t\tif ( isCustom === 'false' && layout ) {\n\t\t\treturn {\n\t\t\t\t...defaultView,\n\t\t\t\ttype: layout,\n\t\t\t\tlayout: {\n\t\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ layout ] || {} ),\n\t\t\t\t},\n\t\t\t};\n\t\t}\n\t\treturn defaultView;\n\t}, [ isCustom, activeView, layout, postType ] );\n\tconst [ view, setView ] = useState( selectedDefaultView );\n\n\tuseEffect( () => {\n\t\tif ( selectedDefaultView ) {\n\t\t\tsetView( selectedDefaultView );\n\t\t}\n\t}, [ selectedDefaultView ] );\n\tconst editedViewRecord = useSelect(\n\t\t( select ) => {\n\t\t\tif ( isCustom !== 'true' ) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst { getEditedEntityRecord } = select( coreStore );\n\t\t\tconst dataviewRecord = getEditedEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\tNumber( activeView )\n\t\t\t);\n\t\t\treturn dataviewRecord;\n\t\t},\n\t\t[ activeView, isCustom ]\n\t);\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\n\tconst customView = useMemo( () => {\n\t\tconst storedView =\n\t\t\teditedViewRecord?.content &&\n\t\t\tJSON.parse( editedViewRecord?.content );\n\t\tif ( ! storedView ) {\n\t\t\treturn storedView;\n\t\t}\n\n\t\treturn {\n\t\t\t...storedView,\n\t\t\tlayout: {\n\t\t\t\t...( DEFAULT_CONFIG_PER_VIEW_TYPE[ storedView?.type ] || {} ),\n\t\t\t},\n\t\t};\n\t}, [ editedViewRecord?.content ] );\n\n\tconst setCustomView = useCallback(\n\t\t( viewToSet ) => {\n\t\t\teditEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_dataviews',\n\t\t\t\teditedViewRecord?.id,\n\t\t\t\t{\n\t\t\t\t\tcontent: JSON.stringify( viewToSet ),\n\t\t\t\t}\n\t\t\t);\n\t\t},\n\t\t[ editEntityRecord, editedViewRecord?.id ]\n\t);\n\n\tconst setDefaultViewAndUpdateUrl = useCallback(\n\t\t( viewToSet ) => {\n\t\t\tif ( viewToSet.type !== view?.type ) {\n\t\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: viewToSet.type,\n\t\t\t\t} );\n\t\t\t}\n\t\t\tsetView( viewToSet );\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tif ( isCustom === 'false' ) {\n\t\treturn [ view, setDefaultViewAndUpdateUrl ];\n\t} else if ( isCustom === 'true' && customView ) {\n\t\treturn [ customView, setCustomView ];\n\t}\n\t// Loading state where no the view was not found on custom views or default views.\n\treturn [ DEFAULT_VIEWS[ postType ][ 0 ].view, setDefaultViewAndUpdateUrl ];\n}\n\n// See https://github.com/WordPress/gutenberg/issues/55886\n// We do not support custom statutes at the moment.\nconst STATUSES = [\n\t{ value: 'draft', label: __( 'Draft' ) },\n\t{ value: 'future', label: __( 'Scheduled' ) },\n\t{ value: 'pending', label: __( 'Pending Review' ) },\n\t{ value: 'private', label: __( 'Private' ) },\n\t{ value: 'publish', label: __( 'Published' ) },\n\t{ value: 'trash', label: __( 'Trash' ) },\n];\nconst DEFAULT_STATUSES = 'draft,future,pending,private,publish'; // All but 'trash'.\n\nfunction FeaturedImage( { item, viewType } ) {\n\tconst isDisabled = item.status === 'trash';\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\tconst hasMedia = !! item.featured_media;\n\tconst size =\n\t\tviewType === LAYOUT_GRID\n\t\t\t? [ 'large', 'full', 'medium', 'thumbnail' ]\n\t\t\t: [ 'thumbnail', 'medium', 'large', 'full' ];\n\tconst media = hasMedia ? (\n\t\t<Media\n\t\t\tclassName=\"edit-site-page-pages__featured-image\"\n\t\t\tid={ item.featured_media }\n\t\t\tsize={ size }\n\t\t/>\n\t) : null;\n\tconst renderButton = viewType !== LAYOUT_LIST && ! isDisabled;\n\treturn (\n\t\t<div\n\t\t\tclassName={ `edit-site-page-pages__featured-image-wrapper is-layout-${ viewType }` }\n\t\t>\n\t\t\t{ renderButton ? (\n\t\t\t\t<button\n\t\t\t\t\tclassName=\"page-pages-preview-field__button\"\n\t\t\t\t\ttype=\"button\"\n\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\taria-label={ item.title?.rendered || __( '(no title)' ) }\n\t\t\t\t>\n\t\t\t\t\t{ media }\n\t\t\t\t</button>\n\t\t\t) : (\n\t\t\t\tmedia\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction getItemId( item ) {\n\treturn item.id.toString();\n}\n\nexport default function PagePages() {\n\tconst postType = 'page';\n\tconst [ view, setView ] = useView( postType );\n\tconst history = useHistory();\n\tconst {\n\t\tparams: { postId },\n\t} = useLocation();\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tconst { params } = history.getLocationWithParams();\n\t\t\tif (\n\t\t\t\t( params.isCustom ?? 'false' ) === 'false' &&\n\t\t\t\tview?.type === LAYOUT_LIST\n\t\t\t) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, view?.type ]\n\t);\n\n\tconst queryArgs = useMemo( () => {\n\t\tconst filters = {};\n\t\tview.filters.forEach( ( filter ) => {\n\t\t\tif (\n\t\t\t\tfilter.field === 'status' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.status = filter.value;\n\t\t\t}\n\t\t\tif (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_ANY\n\t\t\t) {\n\t\t\t\tfilters.author = filter.value;\n\t\t\t} else if (\n\t\t\t\tfilter.field === 'author' &&\n\t\t\t\tfilter.operator === OPERATOR_IS_NONE\n\t\t\t) {\n\t\t\t\tfilters.author_exclude = filter.value;\n\t\t\t}\n\t\t} );\n\t\t// We want to provide a different default item for the status filter\n\t\t// than the REST API provides.\n\t\tif ( ! filters.status || filters.status === '' ) {\n\t\t\tfilters.status = DEFAULT_STATUSES;\n\t\t}\n\n\t\treturn {\n\t\t\tper_page: view.perPage,\n\t\t\tpage: view.page,\n\t\t\t_embed: 'author',\n\t\t\torder: view.sort?.direction,\n\t\t\torderby: view.sort?.field,\n\t\t\tsearch: view.search,\n\t\t\t...filters,\n\t\t};\n\t}, [ view ] );\n\tconst {\n\t\trecords: pages,\n\t\tisResolving: isLoadingPages,\n\t\ttotalItems,\n\t\ttotalPages,\n\t} = useEntityRecords( 'postType', postType, queryArgs );\n\n\tconst ids = pages?.map( ( page ) => getItemId( page ) ) ?? [];\n\tconst prevIds = usePrevious( ids ) ?? [];\n\tconst deletedIds = prevIds.filter( ( id ) => ! ids.includes( id ) );\n\tconst postIdWasDeleted = deletedIds.includes( postId );\n\n\tuseEffect( () => {\n\t\tif ( postIdWasDeleted ) {\n\t\t\thistory.push( {\n\t\t\t\t...history.getLocationWithParams().params,\n\t\t\t\tpostId: undefined,\n\t\t\t} );\n\t\t}\n\t}, [ postIdWasDeleted, history ] );\n\n\tconst { records: authors, isResolving: isLoadingAuthors } =\n\t\tuseEntityRecords( 'root', 'user', { per_page: -1 } );\n\n\tconst paginationInfo = useMemo(\n\t\t() => ( {\n\t\t\ttotalItems,\n\t\t\ttotalPages,\n\t\t} ),\n\t\t[ totalItems, totalPages ]\n\t);\n\n\tconst { frontPageId, postsPageId, addNewLabel, canCreatePage } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecord, getPostType, canUser } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst siteSettings = getEntityRecord( 'root', 'site' );\n\t\t\treturn {\n\t\t\t\tfrontPageId: siteSettings?.page_on_front,\n\t\t\t\tpostsPageId: siteSettings?.page_for_posts,\n\t\t\t\taddNewLabel: getPostType( 'page' )?.labels?.add_new_item,\n\t\t\t\tcanCreatePage: canUser( 'create', 'pages' ),\n\t\t\t};\n\t\t}\n\t);\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\tid: 'featured-image',\n\t\t\t\theader: __( 'Featured Image' ),\n\t\t\t\tgetValue: ( { item } ) => item.featured_media,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<FeaturedImage item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst addLink =\n\t\t\t\t\t\t[ LAYOUT_TABLE, LAYOUT_GRID ].includes( view.type ) &&\n\t\t\t\t\t\titem.status !== 'trash';\n\t\t\t\t\tconst title = addLink ? (\n\t\t\t\t\t\t<Link\n\t\t\t\t\t\t\tparams={ {\n\t\t\t\t\t\t\t\tpostId: item.id,\n\t\t\t\t\t\t\t\tpostType: item.type,\n\t\t\t\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</Link>\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<span>\n\t\t\t\t\t\t\t{ decodeEntities( item.title?.rendered ) ||\n\t\t\t\t\t\t\t\t__( '(no title)' ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\n\t\t\t\t\tlet suffix = '';\n\t\t\t\t\tif ( item.id === frontPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Front Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t} else if ( item.id === postsPageId ) {\n\t\t\t\t\t\tsuffix = (\n\t\t\t\t\t\t\t<span className=\"edit-site-page-pages__title-badge\">\n\t\t\t\t\t\t\t\t{ __( 'Posts Page' ) }\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<HStack\n\t\t\t\t\t\t\tclassName=\"edit-site-page-pages-title\"\n\t\t\t\t\t\t\talignment=\"center\"\n\t\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ title }\n\t\t\t\t\t\t\t{ suffix }\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tmaxWidth: 300,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item._embedded?.author[ 0 ]?.name,\n\t\t\t\telements:\n\t\t\t\t\tauthors?.map( ( { id, name } ) => ( {\n\t\t\t\t\t\tvalue: id,\n\t\t\t\t\t\tlabel: name,\n\t\t\t\t\t} ) ) || [],\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Status' ),\n\t\t\t\tid: 'status',\n\t\t\t\tgetValue: ( { item } ) =>\n\t\t\t\t\tSTATUSES.find( ( { value } ) => value === item.status )\n\t\t\t\t\t\t?.label ?? item.status,\n\t\t\t\telements: STATUSES,\n\t\t\t\tenableSorting: false,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS_ANY ],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Date' ),\n\t\t\t\tid: 'date',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\tconst isDraftOrPrivate = [ 'draft', 'private' ].includes(\n\t\t\t\t\t\titem.status\n\t\t\t\t\t);\n\t\t\t\t\tif ( isDraftOrPrivate ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isScheduled = item.status === 'future';\n\t\t\t\t\tif ( isScheduled ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: page creation date */\n\t\t\t\t\t\t\t\t__( '<span>Scheduled: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( item.date )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Pending & Published posts show the modified date if it's newer.\n\t\t\t\t\tconst dateToDisplay =\n\t\t\t\t\t\tgetDate( item.modified ) > getDate( item.date )\n\t\t\t\t\t\t\t? item.modified\n\t\t\t\t\t\t\t: item.date;\n\n\t\t\t\t\tconst isPending = item.status === 'pending';\n\t\t\t\t\tif ( isPending ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Modified: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\tconst isPublished = item.status === 'publish';\n\t\t\t\t\tif ( isPublished ) {\n\t\t\t\t\t\treturn createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t/* translators: %s: the newest of created or modified date for the page */\n\t\t\t\t\t\t\t\t__( '<span>Published: <time>%s</time></span>' ),\n\t\t\t\t\t\t\t\tgetFormattedDate( dateToDisplay )\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tspan: <span />,\n\t\t\t\t\t\t\t\ttime: <time />,\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Unknow status.\n\t\t\t\t\treturn <time>{ getFormattedDate( item.date ) }</time>;\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type, frontPageId, postsPageId ]\n\t);\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: 'page',\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...DEFAULT_CONFIG_PER_VIEW_TYPE[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\n\tconst [ showAddPageModal, setShowAddPageModal ] = useState( false );\n\n\tconst openModal = () => setShowAddPageModal( true );\n\tconst closeModal = () => setShowAddPageModal( false );\n\tconst handleNewPage = ( { type, id } ) => {\n\t\thistory.push( {\n\t\t\tpostId: id,\n\t\t\tpostType: type,\n\t\t\tcanvas: 'edit',\n\t\t} );\n\t\tcloseModal();\n\t};\n\n\treturn (\n\t\t<Page\n\t\t\ttitle={ __( 'Pages' ) }\n\t\t\tactions={\n\t\t\t\taddNewLabel &&\n\t\t\t\tcanCreatePage && (\n\t\t\t\t\t<>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\tonClick={ openModal }\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ addNewLabel }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t{ showAddPageModal && (\n\t\t\t\t\t\t\t<AddNewPageModal\n\t\t\t\t\t\t\t\tonSave={ handleNewPage }\n\t\t\t\t\t\t\t\tonClose={ closeModal }\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)\n\t\t\t}\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ pages || EMPTY_ARRAY }\n\t\t\t\tisLoading={ isLoadingPages || isLoadingAuthors }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tselection={ selection }\n\t\t\t\tsetSelection={ setSelection }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tgetItemId={ getItemId }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -334,8 +334,14 @@ export default function DataviewsPatterns() {
334
334
  }
335
335
  return filterSortAndPaginate(patterns, viewWithoutFilters, fields);
336
336
  }, [patterns, view, fields, type]);
337
- const templatePartActions = usePostActions(TEMPLATE_PART_POST_TYPE);
338
- const patternActions = usePostActions(PATTERN_TYPES.user);
337
+ const templatePartActions = usePostActions({
338
+ postType: TEMPLATE_PART_POST_TYPE,
339
+ context: 'list'
340
+ });
341
+ const patternActions = usePostActions({
342
+ postType: PATTERN_TYPES.user,
343
+ context: 'list'
344
+ });
339
345
  const editAction = useEditPostAction();
340
346
  const actions = useMemo(() => {
341
347
  if (type === TEMPLATE_PART_POST_TYPE) {
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","__experimentalHStack","HStack","Button","Tooltip","Flex","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","lockSmall","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Async","Page","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","OPERATOR_IS","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","useEditPostAction","jsx","_jsx","jsxs","_jsxs","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","className","theme","undefined","title","Preview","viewType","descriptionId","isUserPattern","user","isTemplatePart","isEmpty","blocks","length","backgroundColor","postType","postId","id","name","canvas","style","viewportWidth","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","params","categoryId","categoryIdFromURL","view","setView","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","fields","_fields","header","render","enableSorting","enableHiding","width","push","elements","filterBy","operators","isPrimary","getValue","templatePart","data","paginationInfo","viewWithoutFilters","templatePartActions","patternActions","editAction","actions","filter","Boolean","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { Icon, lockSmall } from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\nimport { useAddedBy } from '../page-templates/hooks';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tbadgeFields: [ 'sync-status' ],\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'pattern (singular)' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x( 'Not synced', 'pattern (singular)' ),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ item.type !== PATTERN_TYPES.theme ? onClick : undefined }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-disabled={ item.type === PATTERN_TYPES.theme }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\tstyle={ { backgroundColor } }\n\t\t>\n\t\t\t<PreviewWrapper\n\t\t\t\titem={ item }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tariaDescribedBy={ item.description ? descriptionId : undefined }\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t</PreviewWrapper>\n\t\t\t{ item.description && (\n\t\t\t\t<div hidden id={ descriptionId }>\n\t\t\t\t\t{ item.description }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Author( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcanvas: 'edit',\n\t} );\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { postType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = postType || PATTERN_TYPES.user;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( type, categoryId, {\n\t\tsearch: view.search,\n\t\tsyncStatus: viewSyncStatus,\n\t} );\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\n\t} );\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => <Title item={ item } />,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\n\t\tif ( type === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={ `edit-site-patterns__field-sync-status-${ item.syncStatus }` }\n\t\t\t\t\t\t>\n\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\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\t\tvalue === item.syncStatus\n\t\t\t\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\t\tvalue ===\n\t\t\t\t\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t).label\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.templatePart.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Author viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\tfilterBy: {\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\twidth: '1%',\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ view.type, type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst templatePartActions = usePostActions( TEMPLATE_PART_POST_TYPE );\n\tconst patternActions = usePostActions( PATTERN_TYPES.user );\n\tconst editAction = useEditPostAction();\n\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [ editAction, ...templatePartActions ].filter( Boolean );\n\t\t}\n\t\treturn [ editAction, ...patternActions ].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","__experimentalHStack","HStack","Button","Tooltip","Flex","__","_x","useState","useMemo","useCallback","useId","useEffect","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","Icon","lockSmall","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Async","Page","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_SYNC_TYPES","PATTERN_DEFAULT_CATEGORY","OPERATOR_IS","usePatternSettings","unlock","usePatterns","PatternsHeader","useLink","useAddedBy","useEditPostAction","jsx","_jsx","jsxs","_jsxs","ExperimentalBlockEditorProvider","useGlobalStyle","usePostActions","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","badgeFields","DEFAULT_VIEW","type","search","page","perPage","hiddenFields","layout","filters","SYNC_FILTERS","value","full","label","description","unsynced","PreviewWrapper","item","onClick","ariaDescribedBy","children","className","theme","undefined","title","Preview","viewType","descriptionId","isUserPattern","user","isTemplatePart","isEmpty","blocks","length","backgroundColor","postType","postId","id","name","canvas","style","viewportWidth","hidden","Author","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","onLoad","alt","src","Title","justify","as","gap","variant","tabIndex","placement","size","DataviewsPatterns","params","categoryId","categoryIdFromURL","view","setView","previousCategoryId","viewSyncStatus","find","field","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","fields","_fields","header","render","enableSorting","enableHiding","width","push","elements","filterBy","operators","isPrimary","getValue","templatePart","data","paginationInfo","viewWithoutFilters","templatePartActions","context","patternActions","editAction","actions","filter","Boolean","onChangeView","newView","settings","hideTitleFromUI","titleId","getItemId","isLoading","supportedLayouts"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalHStack as HStack,\n\tButton,\n\tTooltip,\n\tFlex,\n} from '@wordpress/components';\nimport { __, _x } from '@wordpress/i18n';\nimport {\n\tuseState,\n\tuseMemo,\n\tuseCallback,\n\tuseId,\n\tuseEffect,\n} from '@wordpress/element';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { Icon, lockSmall } from '@wordpress/icons';\nimport { usePrevious } from '@wordpress/compose';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_SYNC_TYPES,\n\tPATTERN_DEFAULT_CATEGORY,\n\tOPERATOR_IS,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns from './use-patterns';\nimport PatternsHeader from './header';\nimport { useLink } from '../routes/link';\nimport { useAddedBy } from '../page-templates/hooks';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tbadgeFields: [ 'sync-status' ],\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\thiddenFields: [],\n\tlayout: {\n\t\t...defaultConfigPerViewType[ LAYOUT_GRID ],\n\t},\n\tfilters: [],\n};\n\nconst SYNC_FILTERS = [\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.full,\n\t\tlabel: _x( 'Synced', 'pattern (singular)' ),\n\t\tdescription: __( 'Patterns that are kept in sync across the site.' ),\n\t},\n\t{\n\t\tvalue: PATTERN_SYNC_TYPES.unsynced,\n\t\tlabel: _x( 'Not synced', 'pattern (singular)' ),\n\t\tdescription: __(\n\t\t\t'Patterns that can be changed freely without affecting the site.'\n\t\t),\n\t},\n];\n\nfunction PreviewWrapper( { item, onClick, ariaDescribedBy, children } ) {\n\treturn (\n\t\t<button\n\t\t\tclassName=\"page-patterns-preview-field__button\"\n\t\t\ttype=\"button\"\n\t\t\tonClick={ item.type !== PATTERN_TYPES.theme ? onClick : undefined }\n\t\t\taria-label={ item.title }\n\t\t\taria-describedby={ ariaDescribedBy }\n\t\t\taria-disabled={ item.type === PATTERN_TYPES.theme }\n\t\t>\n\t\t\t{ children }\n\t\t</button>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst descriptionId = useId();\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst isTemplatePart = item.type === TEMPLATE_PART_POST_TYPE;\n\tconst isEmpty = ! item.blocks?.length;\n\n\tconst [ backgroundColor ] = useGlobalStyle( 'color.background' );\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcanvas: 'edit',\n\t} );\n\n\treturn (\n\t\t<div\n\t\t\tclassName={ `page-patterns-preview-field is-viewtype-${ viewType }` }\n\t\t\tstyle={ { backgroundColor } }\n\t\t>\n\t\t\t<PreviewWrapper\n\t\t\t\titem={ item }\n\t\t\t\tonClick={ onClick }\n\t\t\t\tariaDescribedBy={ item.description ? descriptionId : undefined }\n\t\t\t>\n\t\t\t\t{ isEmpty && isTemplatePart && __( 'Empty template part' ) }\n\t\t\t\t{ isEmpty && ! isTemplatePart && __( 'Empty pattern' ) }\n\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview\n\t\t\t\t\t\t\tblocks={ item.blocks }\n\t\t\t\t\t\t\tviewportWidth={ item.viewportWidth }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t</PreviewWrapper>\n\t\t\t{ item.description && (\n\t\t\t\t<div hidden id={ descriptionId }>\n\t\t\t\t\t{ item.description }\n\t\t\t\t</div>\n\t\t\t) }\n\t\t</div>\n\t);\n}\n\nfunction Author( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Title( { item } ) {\n\tconst isUserPattern = item.type === PATTERN_TYPES.user;\n\tconst { onClick } = useLink( {\n\t\tpostType: item.type,\n\t\tpostId: isUserPattern ? item.id : item.name,\n\t\tcanvas: 'edit',\n\t} );\n\treturn (\n\t\t<HStack alignment=\"center\" justify=\"flex-start\" spacing={ 2 }>\n\t\t\t<Flex\n\t\t\t\tas=\"div\"\n\t\t\t\tgap={ 0 }\n\t\t\t\tjustify=\"left\"\n\t\t\t\tclassName=\"edit-site-patterns__pattern-title\"\n\t\t\t>\n\t\t\t\t{ item.type === PATTERN_TYPES.theme ? (\n\t\t\t\t\titem.title\n\t\t\t\t) : (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tvariant=\"link\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\t// Required for the grid's roving tab index system.\n\t\t\t\t\t\t// See https://github.com/WordPress/gutenberg/pull/51898#discussion_r1243399243.\n\t\t\t\t\t\ttabIndex=\"-1\"\n\t\t\t\t\t>\n\t\t\t\t\t\t{ item.title || item.name }\n\t\t\t\t\t</Button>\n\t\t\t\t) }\n\t\t\t</Flex>\n\t\t\t{ item.type === PATTERN_TYPES.theme && (\n\t\t\t\t<Tooltip\n\t\t\t\t\tplacement=\"top\"\n\t\t\t\t\ttext={ __( 'This pattern cannot be edited.' ) }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tclassName=\"edit-site-patterns__pattern-lock-icon\"\n\t\t\t\t\t\ticon={ lockSmall }\n\t\t\t\t\t\tsize={ 24 }\n\t\t\t\t\t/>\n\t\t\t\t</Tooltip>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tparams: { postType, categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst type = postType || PATTERN_TYPES.user;\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( type, categoryId, {\n\t\tsearch: view.search,\n\t\tsyncStatus: viewSyncStatus,\n\t} );\n\n\tconst { records } = useEntityRecords( 'postType', TEMPLATE_PART_POST_TYPE, {\n\t\tper_page: -1,\n\t} );\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo( () => {\n\t\tconst _fields = [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Preview item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableHiding: false,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Title' ),\n\t\t\t\tid: 'title',\n\t\t\t\trender: ( { item } ) => <Title item={ item } />,\n\t\t\t\tenableHiding: false,\n\t\t\t},\n\t\t];\n\n\t\tif ( type === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Sync status' ),\n\t\t\t\tid: 'sync-status',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\t// User patterns can have their sync statuses checked directly.\n\t\t\t\t\t// Non-user patterns are all unsynced for the time being.\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<span\n\t\t\t\t\t\t\tclassName={ `edit-site-patterns__field-sync-status-${ item.syncStatus }` }\n\t\t\t\t\t\t>\n\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\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\t\tvalue === item.syncStatus\n\t\t\t\t\t\t\t\t\t) ||\n\t\t\t\t\t\t\t\t\tSYNC_FILTERS.find(\n\t\t\t\t\t\t\t\t\t\t( { value } ) =>\n\t\t\t\t\t\t\t\t\t\t\tvalue ===\n\t\t\t\t\t\t\t\t\t\t\tPATTERN_SYNC_TYPES.unsynced\n\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t).label\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\telements: SYNC_FILTERS,\n\t\t\t\tfilterBy: {\n\t\t\t\t\toperators: [ OPERATOR_IS ],\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\tenableSorting: false,\n\t\t\t} );\n\t\t} else if ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.templatePart.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Author viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\tfilterBy: {\n\t\t\t\t\tisPrimary: true,\n\t\t\t\t},\n\t\t\t\twidth: '1%',\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ view.type, type, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif ( previousCategoryId !== categoryId ) {\n\t\t\tsetView( DEFAULT_VIEW );\n\t\t}\n\t}, [ categoryId, previousCategoryId ] );\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\t// Search is managed server-side as well as filters for patterns.\n\t\t// However, the author filter in template parts is done client-side.\n\t\tconst viewWithoutFilters = { ...view };\n\t\tdelete viewWithoutFilters.search;\n\t\tif ( type !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, type ] );\n\n\tconst templatePartActions = usePostActions( {\n\t\tpostType: TEMPLATE_PART_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst patternActions = usePostActions( {\n\t\tpostType: PATTERN_TYPES.user,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\n\tconst actions = useMemo( () => {\n\t\tif ( type === TEMPLATE_PART_POST_TYPE ) {\n\t\t\treturn [ editAction, ...templatePartActions ].filter( Boolean );\n\t\t}\n\t\treturn [ editAction, ...patternActions ].filter( Boolean );\n\t}, [ editAction, type, templatePartActions, patternActions ] );\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\t\t\t}\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView ]\n\t);\n\tconst id = useId();\n\tconst settings = usePatternSettings();\n\t// Wrap everything in a block editor provider.\n\t// This ensures 'styles' that are needed for the previews are synced\n\t// from the site editor store to the block editor store.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<Page\n\t\t\t\ttitle={ __( 'Patterns content' ) }\n\t\t\t\tclassName=\"edit-site-page-patterns-dataviews\"\n\t\t\t\thideTitleFromUI\n\t\t\t>\n\t\t\t\t<PatternsHeader\n\t\t\t\t\tcategoryId={ categoryId }\n\t\t\t\t\ttype={ type }\n\t\t\t\t\ttitleId={ `${ id }-title` }\n\t\t\t\t\tdescriptionId={ `${ id }-description` }\n\t\t\t\t/>\n\t\t\t\t<DataViews\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tfields={ fields }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tsupportedLayouts={ [ LAYOUT_GRID, LAYOUT_TABLE ] }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,OAAOA,IAAI,MAAM,MAAM;;AAEvB;AACA;AACA;AACA,SACCC,oBAAoB,IAAIC,MAAM,EAC9BC,MAAM,EACNC,OAAO,EACPC,IAAI,QACE,uBAAuB;AAC9B,SAASC,EAAE,EAAEC,EAAE,QAAQ,iBAAiB;AACxC,SACCC,QAAQ,EACRC,OAAO,EACPC,WAAW,EACXC,KAAK,EACLC,SAAS,QACH,oBAAoB;AAC3B,SACCC,YAAY,EACZC,WAAW,IAAIC,sBAAsB,QAC/B,yBAAyB;AAChC,SAASC,SAAS,EAAEC,qBAAqB,QAAQ,sBAAsB;AACvE,SAASC,IAAI,EAAEC,SAAS,QAAQ,kBAAkB;AAClD,SAASC,WAAW,QAAQ,oBAAoB;AAChD,SAASC,gBAAgB,QAAQ,sBAAsB;AACvD,SAASP,WAAW,IAAIQ,iBAAiB,QAAQ,mBAAmB;AACpE,SAASR,WAAW,IAAIS,iBAAiB,QAAQ,mBAAmB;;AAEpE;AACA;AACA;AACA,SAASC,KAAK,QAAQ,UAAU;AAChC,OAAOC,IAAI,MAAM,SAAS;AAC1B,SACCC,WAAW,EACXC,YAAY,EACZC,WAAW,EACXC,aAAa,EACbC,uBAAuB,EACvBC,kBAAkB,EAClBC,wBAAwB,EACxBC,WAAW,QACL,uBAAuB;AAC9B,OAAOC,kBAAkB,MAAM,wBAAwB;AACvD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,cAAc,MAAM,UAAU;AACrC,SAASC,OAAO,QAAQ,gBAAgB;AACxC,SAASC,UAAU,QAAQ,yBAAyB;AACpD,SAASC,iBAAiB,QAAQ,sBAAsB;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEzD,MAAM;EAAEC,+BAA+B;EAAEC;AAAe,CAAC,GAAGX,MAAM,CACjEpB,sBACD,CAAC;AACD,MAAM;EAAEgC;AAAe,CAAC,GAAGZ,MAAM,CAAEb,iBAAkB,CAAC;AACtD,MAAM;EAAE0B;AAAY,CAAC,GAAGb,MAAM,CAAEZ,iBAAkB,CAAC;AAEnD,MAAM0B,WAAW,GAAG,EAAE;AACtB,MAAMC,wBAAwB,GAAG;EAChC,CAAEvB,YAAY,GAAI;IACjBwB,YAAY,EAAE;EACf,CAAC;EACD,CAAEzB,WAAW,GAAI;IAChB0B,UAAU,EAAE,SAAS;IACrBD,YAAY,EAAE,OAAO;IACrBE,WAAW,EAAE,CAAE,aAAa;EAC7B;AACD,CAAC;AACD,MAAMC,YAAY,GAAG;EACpBC,IAAI,EAAE7B,WAAW;EACjB8B,MAAM,EAAE,EAAE;EACVC,IAAI,EAAE,CAAC;EACPC,OAAO,EAAE,EAAE;EACXC,YAAY,EAAE,EAAE;EAChBC,MAAM,EAAE;IACP,GAAGV,wBAAwB,CAAExB,WAAW;EACzC,CAAC;EACDmC,OAAO,EAAE;AACV,CAAC;AAED,MAAMC,YAAY,GAAG,CACpB;EACCC,KAAK,EAAEhC,kBAAkB,CAACiC,IAAI;EAC9BC,KAAK,EAAE1D,EAAE,CAAE,QAAQ,EAAE,oBAAqB,CAAC;EAC3C2D,WAAW,EAAE5D,EAAE,CAAE,iDAAkD;AACpE,CAAC,EACD;EACCyD,KAAK,EAAEhC,kBAAkB,CAACoC,QAAQ;EAClCF,KAAK,EAAE1D,EAAE,CAAE,YAAY,EAAE,oBAAqB,CAAC;EAC/C2D,WAAW,EAAE5D,EAAE,CACd,iEACD;AACD,CAAC,CACD;AAED,SAAS8D,cAAcA,CAAE;EAAEC,IAAI;EAAEC,OAAO;EAAEC,eAAe;EAAEC;AAAS,CAAC,EAAG;EACvE,oBACC9B,IAAA;IACC+B,SAAS,EAAC,qCAAqC;IAC/ClB,IAAI,EAAC,QAAQ;IACbe,OAAO,EAAGD,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAAC6C,KAAK,GAAGJ,OAAO,GAAGK,SAAW;IACnE,cAAaN,IAAI,CAACO,KAAO;IACzB,oBAAmBL,eAAiB;IACpC,iBAAgBF,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAAC6C,KAAO;IAAAF,QAAA,EAEjDA;EAAQ,CACH,CAAC;AAEX;AAEA,SAASK,OAAOA,CAAE;EAAER,IAAI;EAAES;AAAS,CAAC,EAAG;EACtC,MAAMC,aAAa,GAAGpE,KAAK,CAAC,CAAC;EAC7B,MAAMqE,aAAa,GAAGX,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAACoD,IAAI;EACtD,MAAMC,cAAc,GAAGb,IAAI,CAACd,IAAI,KAAKzB,uBAAuB;EAC5D,MAAMqD,OAAO,GAAG,CAAEd,IAAI,CAACe,MAAM,EAAEC,MAAM;EAErC,MAAM,CAAEC,eAAe,CAAE,GAAGxC,cAAc,CAAE,kBAAmB,CAAC;EAChE,MAAM;IAAEwB;EAAQ,CAAC,GAAGhC,OAAO,CAAE;IAC5BiD,QAAQ,EAAElB,IAAI,CAACd,IAAI;IACnBiC,MAAM,EAAER,aAAa,GAAGX,IAAI,CAACoB,EAAE,GAAGpB,IAAI,CAACqB,IAAI;IAC3CC,MAAM,EAAE;EACT,CAAE,CAAC;EAEH,oBACC/C,KAAA;IACC6B,SAAS,EAAI,2CAA2CK,QAAU,EAAG;IACrEc,KAAK,EAAG;MAAEN;IAAgB,CAAG;IAAAd,QAAA,gBAE7B5B,KAAA,CAACwB,cAAc;MACdC,IAAI,EAAGA,IAAM;MACbC,OAAO,EAAGA,OAAS;MACnBC,eAAe,EAAGF,IAAI,CAACH,WAAW,GAAGa,aAAa,GAAGJ,SAAW;MAAAH,QAAA,GAE9DW,OAAO,IAAID,cAAc,IAAI5E,EAAE,CAAE,qBAAsB,CAAC,EACxD6E,OAAO,IAAI,CAAED,cAAc,IAAI5E,EAAE,CAAE,eAAgB,CAAC,EACpD,CAAE6E,OAAO,iBACVzC,IAAA,CAAClB,KAAK;QAAAgD,QAAA,eACL9B,IAAA,CAAC7B,YAAY;UACZuE,MAAM,EAAGf,IAAI,CAACe,MAAQ;UACtBS,aAAa,EAAGxB,IAAI,CAACwB;QAAe,CACpC;MAAC,CACI,CACP;IAAA,CACc,CAAC,EACfxB,IAAI,CAACH,WAAW,iBACjBxB,IAAA;MAAKoD,MAAM;MAACL,EAAE,EAAGV,aAAe;MAAAP,QAAA,EAC7BH,IAAI,CAACH;IAAW,CACd,CACL;EAAA,CACG,CAAC;AAER;AAEA,SAAS6B,MAAMA,CAAE;EAAE1B,IAAI;EAAES;AAAS,CAAC,EAAG;EACrC,MAAM,CAAEkB,aAAa,EAAEC,gBAAgB,CAAE,GAAGzF,QAAQ,CAAE,KAAM,CAAC;EAC7D,MAAM;IAAE0F,IAAI;IAAEC,IAAI;IAAEC;EAAS,CAAC,GAAG7D,UAAU,CAAE8B,IAAI,CAACd,IAAI,EAAEc,IAAI,CAACoB,EAAG,CAAC;EACjE,MAAMY,QAAQ,GAAGvB,QAAQ,KAAKlD,WAAW;EAEzC,oBACCgB,KAAA,CAAC1C,MAAM;IAACoG,SAAS,EAAC,MAAM;IAACC,OAAO,EAAG,CAAG;IAAA/B,QAAA,GACnC6B,QAAQ,IAAID,QAAQ,iBACrB1D,IAAA;MACC+B,SAAS,EAAGzE,IAAI,CAAE,qCAAqC,EAAE;QACxD,WAAW,EAAEgG;MACd,CAAE,CAAG;MAAAxB,QAAA,eAEL9B,IAAA;QACC8D,MAAM,EAAGA,CAAA,KAAMP,gBAAgB,CAAE,IAAK,CAAG;QACzCQ,GAAG,EAAC,EAAE;QACNC,GAAG,EAAGN;MAAU,CAChB;IAAC,CACE,CACL,EACCC,QAAQ,IAAI,CAAED,QAAQ,iBACvB1D,IAAA;MAAK+B,SAAS,EAAC,mCAAmC;MAAAD,QAAA,eACjD9B,IAAA,CAACxB,IAAI;QAACiF,IAAI,EAAGA;MAAM,CAAE;IAAC,CAClB,CACL,eACDzD,IAAA;MAAM+B,SAAS,EAAC,mCAAmC;MAAAD,QAAA,EAAG0B;IAAI,CAAQ,CAAC;EAAA,CAC5D,CAAC;AAEX;AAEA,SAASS,KAAKA,CAAE;EAAEtC;AAAK,CAAC,EAAG;EAC1B,MAAMW,aAAa,GAAGX,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAACoD,IAAI;EACtD,MAAM;IAAEX;EAAQ,CAAC,GAAGhC,OAAO,CAAE;IAC5BiD,QAAQ,EAAElB,IAAI,CAACd,IAAI;IACnBiC,MAAM,EAAER,aAAa,GAAGX,IAAI,CAACoB,EAAE,GAAGpB,IAAI,CAACqB,IAAI;IAC3CC,MAAM,EAAE;EACT,CAAE,CAAC;EACH,oBACC/C,KAAA,CAAC1C,MAAM;IAACoG,SAAS,EAAC,QAAQ;IAACM,OAAO,EAAC,YAAY;IAACL,OAAO,EAAG,CAAG;IAAA/B,QAAA,gBAC5D9B,IAAA,CAACrC,IAAI;MACJwG,EAAE,EAAC,KAAK;MACRC,GAAG,EAAG,CAAG;MACTF,OAAO,EAAC,MAAM;MACdnC,SAAS,EAAC,mCAAmC;MAAAD,QAAA,EAE3CH,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAAC6C,KAAK,GAClCL,IAAI,CAACO,KAAK,gBAEVlC,IAAA,CAACvC,MAAM;QACN4G,OAAO,EAAC,MAAM;QACdzC,OAAO,EAAGA;QACV;QACA;QAAA;QACA0C,QAAQ,EAAC,IAAI;QAAAxC,QAAA,EAEXH,IAAI,CAACO,KAAK,IAAIP,IAAI,CAACqB;MAAI,CAClB;IACR,CACI,CAAC,EACLrB,IAAI,CAACd,IAAI,KAAK1B,aAAa,CAAC6C,KAAK,iBAClChC,IAAA,CAACtC,OAAO;MACP6G,SAAS,EAAC,KAAK;MACff,IAAI,EAAG5F,EAAE,CAAE,gCAAiC,CAAG;MAAAkE,QAAA,eAE/C9B,IAAA,CAACxB,IAAI;QACJuD,SAAS,EAAC,uCAAuC;QACjD0B,IAAI,EAAGhF,SAAW;QAClB+F,IAAI,EAAG;MAAI,CACX;IAAC,CACM,CACT;EAAA,CACM,CAAC;AAEX;AAEA,eAAe,SAASC,iBAAiBA,CAAA,EAAG;EAC3C,MAAM;IACLC,MAAM,EAAE;MAAE7B,QAAQ;MAAE8B,UAAU,EAAEC;IAAkB;EACnD,CAAC,GAAGtE,WAAW,CAAC,CAAC;EACjB,MAAMO,IAAI,GAAGgC,QAAQ,IAAI1D,aAAa,CAACoD,IAAI;EAC3C,MAAMoC,UAAU,GAAGC,iBAAiB,IAAItF,wBAAwB;EAChE,MAAM,CAAEuF,IAAI,EAAEC,OAAO,CAAE,GAAGhH,QAAQ,CAAE8C,YAAa,CAAC;EAClD,MAAMmE,kBAAkB,GAAGrG,WAAW,CAAEiG,UAAW,CAAC;EACpD,MAAMK,cAAc,GAAGH,IAAI,CAAC1D,OAAO,EAAE8D,IAAI,CACxC,CAAE;IAAEC;EAAM,CAAC,KAAMA,KAAK,KAAK,aAC5B,CAAC,EAAE7D,KAAK;EACR,MAAM;IAAE8D,QAAQ;IAAEC;EAAY,CAAC,GAAG1F,WAAW,CAAEmB,IAAI,EAAE8D,UAAU,EAAE;IAChE7D,MAAM,EAAE+D,IAAI,CAAC/D,MAAM;IACnBuE,UAAU,EAAEL;EACb,CAAE,CAAC;EAEH,MAAM;IAAEM;EAAQ,CAAC,GAAG3G,gBAAgB,CAAE,UAAU,EAAES,uBAAuB,EAAE;IAC1EmG,QAAQ,EAAE,CAAC;EACZ,CAAE,CAAC;EACH,MAAMC,OAAO,GAAGzH,OAAO,CAAE,MAAM;IAC9B,IAAK,CAAEuH,OAAO,EAAG;MAChB,OAAO/E,WAAW;IACnB;IACA,MAAMkF,UAAU,GAAG,IAAIC,GAAG,CAAC,CAAC;IAC5BJ,OAAO,CAACK,OAAO,CAAIC,QAAQ,IAAM;MAChCH,UAAU,CAACI,GAAG,CAAED,QAAQ,CAACE,WAAY,CAAC;IACvC,CAAE,CAAC;IACH,OAAOC,KAAK,CAACC,IAAI,CAAEP,UAAW,CAAC,CAACQ,GAAG,CAAIC,MAAM,KAAQ;MACpD7E,KAAK,EAAE6E,MAAM;MACb3E,KAAK,EAAE2E;IACR,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEZ,OAAO,CAAG,CAAC;EAEhB,MAAMa,MAAM,GAAGpI,OAAO,CAAE,MAAM;IAC7B,MAAMqI,OAAO,GAAG,CACf;MACCC,MAAM,EAAEzI,EAAE,CAAE,SAAU,CAAC;MACvBmF,EAAE,EAAE,SAAS;MACbuD,MAAM,EAAEA,CAAE;QAAE3E;MAAK,CAAC,kBACjB3B,IAAA,CAACmC,OAAO;QAACR,IAAI,EAAGA,IAAM;QAACS,QAAQ,EAAGyC,IAAI,CAAChE;MAAM,CAAE,CAC/C;MACD0F,aAAa,EAAE,KAAK;MACpBC,YAAY,EAAE,KAAK;MACnBC,KAAK,EAAE;IACR,CAAC,EACD;MACCJ,MAAM,EAAEzI,EAAE,CAAE,OAAQ,CAAC;MACrBmF,EAAE,EAAE,OAAO;MACXuD,MAAM,EAAEA,CAAE;QAAE3E;MAAK,CAAC,kBAAM3B,IAAA,CAACiE,KAAK;QAACtC,IAAI,EAAGA;MAAM,CAAE,CAAC;MAC/C6E,YAAY,EAAE;IACf,CAAC,CACD;IAED,IAAK3F,IAAI,KAAK1B,aAAa,CAACoD,IAAI,EAAG;MAClC6D,OAAO,CAACM,IAAI,CAAE;QACbL,MAAM,EAAEzI,EAAE,CAAE,aAAc,CAAC;QAC3BmF,EAAE,EAAE,aAAa;QACjBuD,MAAM,EAAEA,CAAE;UAAE3E;QAAK,CAAC,KAAM;UACvB;UACA;UACA,oBACC3B,IAAA;YACC+B,SAAS,EAAI,yCAAyCJ,IAAI,CAAC0D,UAAY,EAAG;YAAAvD,QAAA,EAGzE,CACCV,YAAY,CAAC6D,IAAI,CAChB,CAAE;cAAE5D;YAAM,CAAC,KACVA,KAAK,KAAKM,IAAI,CAAC0D,UACjB,CAAC,IACDjE,YAAY,CAAC6D,IAAI,CAChB,CAAE;cAAE5D;YAAM,CAAC,KACVA,KAAK,KACLhC,kBAAkB,CAACoC,QACrB,CAAC,EACAF;UAAK,CAEH,CAAC;QAET,CAAC;QACDoF,QAAQ,EAAEvF,YAAY;QACtBwF,QAAQ,EAAE;UACTC,SAAS,EAAE,CAAEtH,WAAW,CAAE;UAC1BuH,SAAS,EAAE;QACZ,CAAC;QACDP,aAAa,EAAE;MAChB,CAAE,CAAC;IACJ,CAAC,MAAM,IAAK1F,IAAI,KAAKzB,uBAAuB,EAAG;MAC9CgH,OAAO,CAACM,IAAI,CAAE;QACbL,MAAM,EAAEzI,EAAE,CAAE,QAAS,CAAC;QACtBmF,EAAE,EAAE,QAAQ;QACZgE,QAAQ,EAAEA,CAAE;UAAEpF;QAAK,CAAC,KAAMA,IAAI,CAACqF,YAAY,CAAClB,WAAW;QACvDQ,MAAM,EAAEA,CAAE;UAAE3E;QAAK,CAAC,KAAM;UACvB,oBAAO3B,IAAA,CAACqD,MAAM;YAACjB,QAAQ,EAAGyC,IAAI,CAAChE,IAAM;YAACc,IAAI,EAAGA;UAAM,CAAE,CAAC;QACvD,CAAC;QACDgF,QAAQ,EAAEnB,OAAO;QACjBoB,QAAQ,EAAE;UACTE,SAAS,EAAE;QACZ,CAAC;QACDL,KAAK,EAAE;MACR,CAAE,CAAC;IACJ;IAEA,OAAOL,OAAO;EACf,CAAC,EAAE,CAAEvB,IAAI,CAAChE,IAAI,EAAEA,IAAI,EAAE2E,OAAO,CAAG,CAAC;;EAEjC;EACAtH,SAAS,CAAE,MAAM;IAChB,IAAK6G,kBAAkB,KAAKJ,UAAU,EAAG;MACxCG,OAAO,CAAElE,YAAa,CAAC;IACxB;EACD,CAAC,EAAE,CAAE+D,UAAU,EAAEI,kBAAkB,CAAG,CAAC;EACvC,MAAM;IAAEkC,IAAI;IAAEC;EAAe,CAAC,GAAGnJ,OAAO,CAAE,MAAM;IAC/C;IACA;IACA,MAAMoJ,kBAAkB,GAAG;MAAE,GAAGtC;IAAK,CAAC;IACtC,OAAOsC,kBAAkB,CAACrG,MAAM;IAChC,IAAKD,IAAI,KAAKzB,uBAAuB,EAAG;MACvC+H,kBAAkB,CAAChG,OAAO,GAAG,EAAE;IAChC;IACA,OAAO5C,qBAAqB,CAAE4G,QAAQ,EAAEgC,kBAAkB,EAAEhB,MAAO,CAAC;EACrE,CAAC,EAAE,CAAEhB,QAAQ,EAAEN,IAAI,EAAEsB,MAAM,EAAEtF,IAAI,CAAG,CAAC;EAErC,MAAMuG,mBAAmB,GAAG/G,cAAc,CAAE;IAC3CwC,QAAQ,EAAEzD,uBAAuB;IACjCiI,OAAO,EAAE;EACV,CAAE,CAAC;EACH,MAAMC,cAAc,GAAGjH,cAAc,CAAE;IACtCwC,QAAQ,EAAE1D,aAAa,CAACoD,IAAI;IAC5B8E,OAAO,EAAE;EACV,CAAE,CAAC;EACH,MAAME,UAAU,GAAGzH,iBAAiB,CAAC,CAAC;EAEtC,MAAM0H,OAAO,GAAGzJ,OAAO,CAAE,MAAM;IAC9B,IAAK8C,IAAI,KAAKzB,uBAAuB,EAAG;MACvC,OAAO,CAAEmI,UAAU,EAAE,GAAGH,mBAAmB,CAAE,CAACK,MAAM,CAAEC,OAAQ,CAAC;IAChE;IACA,OAAO,CAAEH,UAAU,EAAE,GAAGD,cAAc,CAAE,CAACG,MAAM,CAAEC,OAAQ,CAAC;EAC3D,CAAC,EAAE,CAAEH,UAAU,EAAE1G,IAAI,EAAEuG,mBAAmB,EAAEE,cAAc,CAAG,CAAC;EAC9D,MAAMK,YAAY,GAAG3J,WAAW,CAC7B4J,OAAO,IAAM;IACd,IAAKA,OAAO,CAAC/G,IAAI,KAAKgE,IAAI,CAAChE,IAAI,EAAG;MACjC+G,OAAO,GAAG;QACT,GAAGA,OAAO;QACV1G,MAAM,EAAE;UACP,GAAGV,wBAAwB,CAAEoH,OAAO,CAAC/G,IAAI;QAC1C;MACD,CAAC;IACF;IACAiE,OAAO,CAAE8C,OAAQ,CAAC;EACnB,CAAC,EACD,CAAE/C,IAAI,CAAChE,IAAI,EAAEiE,OAAO,CACrB,CAAC;EACD,MAAM/B,EAAE,GAAG9E,KAAK,CAAC,CAAC;EAClB,MAAM4J,QAAQ,GAAGrI,kBAAkB,CAAC,CAAC;EACrC;EACA;EACA;EACA,oBACCQ,IAAA,CAACG,+BAA+B;IAAC0H,QAAQ,EAAGA,QAAU;IAAA/F,QAAA,eACrD5B,KAAA,CAACnB,IAAI;MACJmD,KAAK,EAAGtE,EAAE,CAAE,kBAAmB,CAAG;MAClCmE,SAAS,EAAC,mCAAmC;MAC7C+F,eAAe;MAAAhG,QAAA,gBAEf9B,IAAA,CAACL,cAAc;QACdgF,UAAU,EAAGA,UAAY;QACzB9D,IAAI,EAAGA,IAAM;QACbkH,OAAO,EAAI,GAAGhF,EAAI,QAAS;QAC3BV,aAAa,EAAI,GAAGU,EAAI;MAAe,CACvC,CAAC,eACF/C,IAAA,CAAC1B,SAAS;QACT4I,cAAc,EAAGA,cAAgB;QACjCf,MAAM,EAAGA,MAAQ;QACjBqB,OAAO,EAAGA,OAAS;QACnBP,IAAI,EAAGA,IAAI,IAAI1G,WAAa;QAC5ByH,SAAS,EAAKrG,IAAI,IAAMA,IAAI,CAACqB,IAAM;QACnCiF,SAAS,EAAG7C,WAAa;QACzBP,IAAI,EAAGA,IAAM;QACb8C,YAAY,EAAGA,YAAc;QAC7BO,gBAAgB,EAAG,CAAElJ,WAAW,EAAEC,YAAY;MAAI,CAClD,CAAC;IAAA,CACG;EAAC,CACyB,CAAC;AAEpC","ignoreList":[]}
@@ -181,8 +181,10 @@ export default function PageTemplates() {
181
181
  } = useLocation();
182
182
  const {
183
183
  activeView = 'all',
184
- layout
184
+ layout,
185
+ postId
185
186
  } = params;
187
+ const [selection, setSelection] = useState([postId]);
186
188
  const defaultView = useMemo(() => {
187
189
  const usedType = layout !== null && layout !== void 0 ? layout : DEFAULT_VIEW.type;
188
190
  return {
@@ -310,7 +312,10 @@ export default function PageTemplates() {
310
312
  } = useMemo(() => {
311
313
  return filterSortAndPaginate(records, view, fields);
312
314
  }, [records, view, fields]);
313
- const postTypeActions = usePostActions(TEMPLATE_POST_TYPE);
315
+ const postTypeActions = usePostActions({
316
+ postType: TEMPLATE_POST_TYPE,
317
+ context: 'list'
318
+ });
314
319
  const editAction = useEditPostAction();
315
320
  const actions = useMemo(() => [editAction, ...postTypeActions], [postTypeActions, editAction]);
316
321
  const onChangeView = useCallback(newView => {
@@ -340,7 +345,9 @@ export default function PageTemplates() {
340
345
  isLoading: isLoadingData,
341
346
  view: view,
342
347
  onChangeView: onChangeView,
343
- onSelectionChange: onSelectionChange
348
+ onSelectionChange: onSelectionChange,
349
+ selection: selection,
350
+ setSelection: setSelection
344
351
  })
345
352
  });
346
353
  }
@@ -1 +1 @@
1
- {"version":3,"names":["clsx","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","Async","Page","default","Link","useLink","AddNewTemplate","useAddedBy","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","usePatternSettings","unlock","useEditPostAction","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePostActions","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","columnFields","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","children","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","className","onLoad","alt","src","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","PageTemplates","activeView","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","enableGlobalSearch","description","variant","elements","width","data","paginationInfo","postTypeActions","editAction","actions","onChangeView","newView","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tcolumnFields: [ 'description' ],\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_GRID ],\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout } = params;\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Template' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t&#8212;\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\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},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( TEMPLATE_POST_TYPE );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["clsx","Icon","__experimentalText","Text","__experimentalHStack","HStack","VisuallyHidden","__","useState","useMemo","useCallback","useEffect","useEntityRecords","decodeEntities","parse","BlockPreview","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","Async","Page","default","Link","useLink","AddNewTemplate","useAddedBy","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","usePatternSettings","unlock","useEditPostAction","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","usePostActions","ExperimentalBlockEditorProvider","useGlobalStyle","useHistory","useLocation","EMPTY_ARRAY","defaultConfigPerViewType","primaryField","mediaField","columnFields","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","hiddenFields","layout","filters","Title","item","viewType","title","rendered","linkProps","params","postId","id","postType","canvas","children","AuthorField","isImageLoaded","setIsImageLoaded","text","icon","imageUrl","withIcon","alignment","spacing","className","onLoad","alt","src","Preview","settings","backgroundColor","blocks","content","raw","onClick","isEmpty","length","style","PageTemplates","activeView","selection","setSelection","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onSelectionChange","items","push","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","author","label","fields","header","render","minWidth","maxWidth","enableSorting","getValue","enableHiding","enableGlobalSearch","description","variant","elements","width","data","paginationInfo","postTypeActions","context","editAction","actions","onChangeView","newView","isLoading"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tIcon,\n\t__experimentalText as Text,\n\t__experimentalHStack as HStack,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { useEntityRecords } from '@wordpress/core-data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { parse } from '@wordpress/blocks';\nimport {\n\tBlockPreview,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\n\n/**\n * Internal dependencies\n */\nimport { Async } from '../async';\nimport Page from '../page';\nimport { default as Link, useLink } from '../routes/link';\nimport AddNewTemplate from '../add-new-template';\nimport { useAddedBy } from './hooks';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\n\nimport usePatternSettings from '../page-patterns/use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\n\nconst { usePostActions } = unlock( editorPrivateApis );\n\nconst { ExperimentalBlockEditorProvider, useGlobalStyle } = unlock(\n\tblockEditorPrivateApis\n);\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultConfigPerViewType = {\n\t[ LAYOUT_TABLE ]: {\n\t\tprimaryField: 'title',\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tmediaField: 'preview',\n\t\tprimaryField: 'title',\n\t\tcolumnFields: [ 'description' ],\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tprimaryField: 'title',\n\t\tmediaField: 'preview',\n\t},\n};\n\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\tsort: {\n\t\tfield: 'title',\n\t\tdirection: 'asc',\n\t},\n\t// All fields are visible by default, so it's\n\t// better to keep track of the hidden ones.\n\thiddenFields: [ 'preview' ],\n\tlayout: defaultConfigPerViewType[ LAYOUT_GRID ],\n\tfilters: [],\n};\n\nfunction Title( { item, viewType } ) {\n\tif ( viewType === LAYOUT_LIST ) {\n\t\treturn decodeEntities( item.title?.rendered ) || __( '(no title)' );\n\t}\n\tconst linkProps = {\n\t\tparams: {\n\t\t\tpostId: item.id,\n\t\t\tpostType: item.type,\n\t\t\tcanvas: 'edit',\n\t\t},\n\t};\n\treturn (\n\t\t<Link { ...linkProps }>\n\t\t\t{ decodeEntities( item.title?.rendered ) || __( '(no title)' ) }\n\t\t</Link>\n\t);\n}\n\nfunction AuthorField( { item, viewType } ) {\n\tconst [ isImageLoaded, setIsImageLoaded ] = useState( false );\n\tconst { text, icon, imageUrl } = useAddedBy( item.type, item.id );\n\tconst withIcon = viewType !== LAYOUT_LIST;\n\n\treturn (\n\t\t<HStack alignment=\"left\" spacing={ 1 }>\n\t\t\t{ withIcon && imageUrl && (\n\t\t\t\t<div\n\t\t\t\t\tclassName={ clsx( 'page-templates-author-field__avatar', {\n\t\t\t\t\t\t'is-loaded': isImageLoaded,\n\t\t\t\t\t} ) }\n\t\t\t\t>\n\t\t\t\t\t<img\n\t\t\t\t\t\tonLoad={ () => setIsImageLoaded( true ) }\n\t\t\t\t\t\talt=\"\"\n\t\t\t\t\t\tsrc={ imageUrl }\n\t\t\t\t\t/>\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t{ withIcon && ! imageUrl && (\n\t\t\t\t<div className=\"page-templates-author-field__icon\">\n\t\t\t\t\t<Icon icon={ icon } />\n\t\t\t\t</div>\n\t\t\t) }\n\t\t\t<span className=\"page-templates-author-field__name\">{ text }</span>\n\t\t</HStack>\n\t);\n}\n\nfunction Preview( { item, viewType } ) {\n\tconst settings = usePatternSettings();\n\tconst [ backgroundColor = 'white' ] = useGlobalStyle( 'color.background' );\n\tconst blocks = useMemo( () => {\n\t\treturn parse( item.content.raw );\n\t}, [ item.content.raw ] );\n\tconst { onClick } = useLink( {\n\t\tpostId: item.id,\n\t\tpostType: item.type,\n\t\tcanvas: 'edit',\n\t} );\n\n\tconst isEmpty = ! blocks?.length;\n\t// Wrap everything in a block editor provider to ensure 'styles' that are needed\n\t// for the previews are synced between the site editor store and the block editor store.\n\t// Additionally we need to have the `__experimentalBlockPatterns` setting in order to\n\t// render patterns inside the previews.\n\t// TODO: Same approach is used in the patterns list and it becomes obvious that some of\n\t// the block editor settings are needed in context where we don't have the block editor.\n\t// Explore how we can solve this in a better way.\n\treturn (\n\t\t<ExperimentalBlockEditorProvider settings={ settings }>\n\t\t\t<div\n\t\t\t\tclassName={ `page-templates-preview-field is-viewtype-${ viewType }` }\n\t\t\t\tstyle={ { backgroundColor } }\n\t\t\t>\n\t\t\t\t{ viewType === LAYOUT_LIST && ! isEmpty && (\n\t\t\t\t\t<Async>\n\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t</Async>\n\t\t\t\t) }\n\t\t\t\t{ viewType !== LAYOUT_LIST && (\n\t\t\t\t\t<button\n\t\t\t\t\t\tclassName=\"page-templates-preview-field__button\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\tonClick={ onClick }\n\t\t\t\t\t\taria-label={ item.title?.rendered || item.title }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ isEmpty && __( 'Empty template' ) }\n\t\t\t\t\t\t{ ! isEmpty && (\n\t\t\t\t\t\t\t<Async>\n\t\t\t\t\t\t\t\t<BlockPreview blocks={ blocks } />\n\t\t\t\t\t\t\t</Async>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</button>\n\t\t\t\t) }\n\t\t\t</div>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n\nexport default function PageTemplates() {\n\tconst { params } = useLocation();\n\tconst { activeView = 'all', layout, postId } = params;\n\tconst [ selection, setSelection ] = useState( [ postId ] );\n\n\tconst defaultView = useMemo( () => {\n\t\tconst usedType = layout ?? DEFAULT_VIEW.type;\n\t\treturn {\n\t\t\t...DEFAULT_VIEW,\n\t\t\ttype: usedType,\n\t\t\tlayout: defaultConfigPerViewType[ usedType ],\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: 'isAny',\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tfilters:\n\t\t\t\tactiveView !== 'all'\n\t\t\t\t\t? [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfield: 'author',\n\t\t\t\t\t\t\t\toperator: OPERATOR_IS_ANY,\n\t\t\t\t\t\t\t\tvalue: [ activeView ],\n\t\t\t\t\t\t\t},\n\t\t\t\t\t ]\n\t\t\t\t\t: [],\n\t\t} ) );\n\t}, [ activeView ] );\n\n\tconst { records, isResolving: isLoadingData } = useEntityRecords(\n\t\t'postType',\n\t\tTEMPLATE_POST_TYPE,\n\t\t{\n\t\t\tper_page: -1,\n\t\t}\n\t);\n\tconst history = useHistory();\n\tconst onSelectionChange = useCallback(\n\t\t( items ) => {\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ].id : undefined,\n\t\t\t\t} );\n\t\t\t}\n\t\t},\n\t\t[ history, params, view?.type ]\n\t);\n\n\tconst authors = useMemo( () => {\n\t\tif ( ! records ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\tconst authorsSet = new Set();\n\t\trecords.forEach( ( template ) => {\n\t\t\tauthorsSet.add( template.author_text );\n\t\t} );\n\t\treturn Array.from( authorsSet ).map( ( author ) => ( {\n\t\t\tvalue: author,\n\t\t\tlabel: author,\n\t\t} ) );\n\t}, [ records ] );\n\n\tconst fields = useMemo(\n\t\t() => [\n\t\t\t{\n\t\t\t\theader: __( 'Preview' ),\n\t\t\t\tid: 'preview',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <Preview item={ item } viewType={ view.type } />;\n\t\t\t\t},\n\t\t\t\tminWidth: 120,\n\t\t\t\tmaxWidth: 120,\n\t\t\t\tenableSorting: false,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Template' ),\n\t\t\t\tid: 'title',\n\t\t\t\tgetValue: ( { item } ) => item.title?.rendered,\n\t\t\t\trender: ( { item } ) => (\n\t\t\t\t\t<Title item={ item } viewType={ view.type } />\n\t\t\t\t),\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tenableHiding: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Description' ),\n\t\t\t\tid: 'description',\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn item.description ? (\n\t\t\t\t\t\t<span className=\"page-templates-description\">\n\t\t\t\t\t\t\t{ decodeEntities( item.description ) }\n\t\t\t\t\t\t</span>\n\t\t\t\t\t) : (\n\t\t\t\t\t\tview.type === LAYOUT_TABLE && (\n\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t<Text variant=\"muted\" aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t&#8212;\n\t\t\t\t\t\t\t\t</Text>\n\t\t\t\t\t\t\t\t<VisuallyHidden>\n\t\t\t\t\t\t\t\t\t{ __( 'No description.' ) }\n\t\t\t\t\t\t\t\t</VisuallyHidden>\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},\n\t\t\t\tmaxWidth: 400,\n\t\t\t\tminWidth: 320,\n\t\t\t\tenableSorting: false,\n\t\t\t\tenableGlobalSearch: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: __( 'Author' ),\n\t\t\t\tid: 'author',\n\t\t\t\tgetValue: ( { item } ) => item.author_text,\n\t\t\t\trender: ( { item } ) => {\n\t\t\t\t\treturn <AuthorField viewType={ view.type } item={ item } />;\n\t\t\t\t},\n\t\t\t\telements: authors,\n\t\t\t\twidth: '1%',\n\t\t\t},\n\t\t],\n\t\t[ authors, view.type ]\n\t);\n\n\tconst { data, paginationInfo } = useMemo( () => {\n\t\treturn filterSortAndPaginate( records, view, fields );\n\t}, [ records, view, fields ] );\n\n\tconst postTypeActions = usePostActions( {\n\t\tpostType: TEMPLATE_POST_TYPE,\n\t\tcontext: 'list',\n\t} );\n\tconst editAction = useEditPostAction();\n\tconst actions = useMemo(\n\t\t() => [ editAction, ...postTypeActions ],\n\t\t[ postTypeActions, editAction ]\n\t);\n\n\tconst onChangeView = useCallback(\n\t\t( newView ) => {\n\t\t\tif ( newView.type !== view.type ) {\n\t\t\t\tnewView = {\n\t\t\t\t\t...newView,\n\t\t\t\t\tlayout: {\n\t\t\t\t\t\t...defaultConfigPerViewType[ newView.type ],\n\t\t\t\t\t},\n\t\t\t\t};\n\n\t\t\t\thistory.push( {\n\t\t\t\t\t...params,\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} );\n\t\t\t}\n\n\t\t\tsetView( newView );\n\t\t},\n\t\t[ view.type, setView, history, params ]\n\t);\n\n\treturn (\n\t\t<Page\n\t\t\tclassName=\"edit-site-page-templates\"\n\t\t\ttitle={ __( 'Templates' ) }\n\t\t\tactions={ <AddNewTemplate /> }\n\t\t>\n\t\t\t<DataViews\n\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\tfields={ fields }\n\t\t\t\tactions={ actions }\n\t\t\t\tdata={ data }\n\t\t\t\tisLoading={ isLoadingData }\n\t\t\t\tview={ view }\n\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\tonSelectionChange={ onSelectionChange }\n\t\t\t\tselection={ selection }\n\t\t\t\tsetSelection={ setSelection }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
@@ -19,7 +19,8 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
19
19
  const {
20
20
  ExperimentalBlockEditorProvider,
21
21
  GlobalStylesContext,
22
- useGlobalStylesOutputWithConfig
22
+ useGlobalStylesOutputWithConfig,
23
+ __unstableBlockStyleVariationOverridesWithConfig
23
24
  } = unlock(blockEditorPrivateApis);
24
25
  const {
25
26
  mergeBaseAndUserConfigs
@@ -56,21 +57,23 @@ function Revisions({
56
57
  className: "edit-site-revisions__iframe",
57
58
  name: "revisions",
58
59
  tabIndex: 0,
59
- children: [/*#__PURE__*/_jsx(EditorStyles, {
60
- styles: editorStyles
61
- }), /*#__PURE__*/_jsx("style", {
60
+ children: [/*#__PURE__*/_jsx("style", {
62
61
  children:
63
62
  // Forming a "block formatting context" to prevent margin collapsing.
64
63
  // @see https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Block_formatting_context
65
64
  `.is-root-container { display: flow-root; }`
66
65
  }), /*#__PURE__*/_jsx(Disabled, {
67
66
  className: "edit-site-revisions__example-preview__content",
68
- children: /*#__PURE__*/_jsx(ExperimentalBlockEditorProvider, {
67
+ children: /*#__PURE__*/_jsxs(ExperimentalBlockEditorProvider, {
69
68
  value: renderedBlocksArray,
70
69
  settings: settings,
71
- children: /*#__PURE__*/_jsx(BlockList, {
70
+ children: [/*#__PURE__*/_jsx(BlockList, {
72
71
  renderAppender: false
73
- })
72
+ }), /*#__PURE__*/_jsx(EditorStyles, {
73
+ styles: editorStyles
74
+ }), /*#__PURE__*/_jsx(__unstableBlockStyleVariationOverridesWithConfig, {
75
+ config: mergedConfig
76
+ })]
74
77
  })
75
78
  })]
76
79
  })