@wordpress/edit-site 6.17.0 → 6.17.1
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.
- package/build/components/page-patterns/index.js +6 -6
- package/build/components/page-patterns/index.js.map +1 -1
- package/build/components/page-templates/index.js +5 -5
- package/build/components/page-templates/index.js.map +1 -1
- package/build-module/components/page-patterns/index.js +2 -2
- package/build-module/components/page-patterns/index.js.map +1 -1
- package/build-module/components/page-templates/index.js +2 -2
- package/build-module/components/page-templates/index.js.map +1 -1
- package/package.json +3 -3
- package/src/components/page-patterns/index.js +1 -2
- package/src/components/page-templates/index.js +1 -2
|
@@ -14,7 +14,6 @@ var _compose = require("@wordpress/compose");
|
|
|
14
14
|
var _coreData = require("@wordpress/core-data");
|
|
15
15
|
var _editor = require("@wordpress/editor");
|
|
16
16
|
var _router = require("@wordpress/router");
|
|
17
|
-
var _fields2 = require("@wordpress/fields");
|
|
18
17
|
var _page = _interopRequireDefault(require("../page"));
|
|
19
18
|
var _constants = require("../../utils/constants");
|
|
20
19
|
var _usePatternSettings = _interopRequireDefault(require("./use-pattern-settings"));
|
|
@@ -22,7 +21,7 @@ var _lockUnlock = require("../../lock-unlock");
|
|
|
22
21
|
var _usePatterns = _interopRequireWildcard(require("./use-patterns"));
|
|
23
22
|
var _header = _interopRequireDefault(require("./header"));
|
|
24
23
|
var _dataviewsActions = require("../dataviews-actions");
|
|
25
|
-
var
|
|
24
|
+
var _fields2 = require("./fields");
|
|
26
25
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
27
26
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
28
27
|
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
@@ -38,7 +37,8 @@ const {
|
|
|
38
37
|
ExperimentalBlockEditorProvider
|
|
39
38
|
} = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
|
|
40
39
|
const {
|
|
41
|
-
usePostActions
|
|
40
|
+
usePostActions,
|
|
41
|
+
patternTitleField
|
|
42
42
|
} = (0, _lockUnlock.unlock)(_editor.privateApis);
|
|
43
43
|
const {
|
|
44
44
|
useLocation,
|
|
@@ -113,12 +113,12 @@ function DataviewsPatterns() {
|
|
|
113
113
|
}));
|
|
114
114
|
}, [records]);
|
|
115
115
|
const fields = (0, _element.useMemo)(() => {
|
|
116
|
-
const _fields = [
|
|
116
|
+
const _fields = [_fields2.previewField, patternTitleField];
|
|
117
117
|
if (postType === _constants.PATTERN_TYPES.user) {
|
|
118
|
-
_fields.push(
|
|
118
|
+
_fields.push(_fields2.patternStatusField);
|
|
119
119
|
} else if (postType === _constants.TEMPLATE_PART_POST_TYPE) {
|
|
120
120
|
_fields.push({
|
|
121
|
-
...
|
|
121
|
+
..._fields2.templatePartAuthorField,
|
|
122
122
|
elements: authors
|
|
123
123
|
});
|
|
124
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","_blockEditor","_dataviews","_compose","_coreData","_editor","_router","_fields2","_page","_interopRequireDefault","_constants","_usePatternSettings","_lockUnlock","_usePatterns","_interopRequireWildcard","_header","_dataviewsActions","_fields3","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","usePostActions","editorPrivateApis","useLocation","useHistory","routerPrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","layout","styles","author","width","LAYOUT_GRID","badgeFields","DEFAULT_VIEW","type","search","page","perPage","titleField","mediaField","fields","filters","DataviewsPatterns","query","postType","categoryId","categoryIdFromURL","history","PATTERN_DEFAULT_CATEGORY","view","setView","useState","previousCategoryId","usePrevious","previousPostType","viewSyncStatus","find","field","value","patterns","isResolving","usePatterns","syncStatus","records","useEntityRecords","TEMPLATE_PART_POST_TYPE","per_page","authors","useMemo","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","previewField","patternTitleField","PATTERN_TYPES","user","push","patternStatusField","templatePartAuthorField","elements","useEffect","prevView","data","paginationInfo","viewWithoutFilters","filterSortAndPaginate","dataWithPermissions","useAugmentPatternsWithPermissions","templatePartActions","context","patternActions","editAction","useEditPostAction","actions","filter","Boolean","id","useId","settings","usePatternSettings","jsx","children","jsxs","title","__","className","hideTitleFromUI","titleId","descriptionId","DataViews","getItemId","item","_item$name","name","isLoading","isItemClickable","theme","onClickItem","navigate","includes","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\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';\nimport { patternTitleField } from '@wordpress/fields';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns, { useAugmentPatternsWithPermissions } from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tlayout: {\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\ttitleField: 'title',\n\tmediaField: 'preview',\n\tfields: [ 'sync-status' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tquery: { postType = 'wp_block', categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst previousPostType = usePrevious( postType );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( postType, 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\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 = [ previewField, patternTitleField ];\n\n\t\tif ( postType === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ postType, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tpreviousCategoryId !== categoryId ||\n\t\t\tpreviousPostType !== postType\n\t\t) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId, previousPostType, postType ] );\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 ( postType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, postType ] );\n\n\tconst dataWithPermissions = useAugmentPatternsWithPermissions( data );\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 ( postType === 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, postType, templatePartActions, patternActions ] );\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={ postType }\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\tkey={ categoryId + postType }\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={ dataWithPermissions || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tisItemClickable={ ( item ) =>\n\t\t\t\t\t\titem.type !== PATTERN_TYPES.theme\n\t\t\t\t\t}\n\t\t\t\t\tonClickItem={ ( item ) => {\n\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t`/${ item.type }/${\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t\t\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t\t\t\t\t].includes( item.type )\n\t\t\t\t\t\t\t\t\t? item.id\n\t\t\t\t\t\t\t\t\t: item.name\n\t\t\t\t\t\t\t}?canvas=edit`\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\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":["_i18n","require","_element","_blockEditor","_dataviews","_compose","_coreData","_editor","_router","_page","_interopRequireDefault","_constants","_usePatternSettings","_lockUnlock","_usePatterns","_interopRequireWildcard","_header","_dataviewsActions","_fields2","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ExperimentalBlockEditorProvider","unlock","blockEditorPrivateApis","usePostActions","patternTitleField","editorPrivateApis","useLocation","useHistory","routerPrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","layout","styles","author","width","LAYOUT_GRID","badgeFields","DEFAULT_VIEW","type","search","page","perPage","titleField","mediaField","fields","filters","DataviewsPatterns","query","postType","categoryId","categoryIdFromURL","history","PATTERN_DEFAULT_CATEGORY","view","setView","useState","previousCategoryId","usePrevious","previousPostType","viewSyncStatus","find","field","value","patterns","isResolving","usePatterns","syncStatus","records","useEntityRecords","TEMPLATE_PART_POST_TYPE","per_page","authors","useMemo","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","previewField","PATTERN_TYPES","user","push","patternStatusField","templatePartAuthorField","elements","useEffect","prevView","data","paginationInfo","viewWithoutFilters","filterSortAndPaginate","dataWithPermissions","useAugmentPatternsWithPermissions","templatePartActions","context","patternActions","editAction","useEditPostAction","actions","filter","Boolean","id","useId","settings","usePatternSettings","jsx","children","jsxs","title","__","className","hideTitleFromUI","titleId","descriptionId","DataViews","getItemId","item","_item$name","name","isLoading","isItemClickable","theme","onClickItem","navigate","includes","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\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 Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns, { useAugmentPatternsWithPermissions } from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions, patternTitleField } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tlayout: {\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\ttitleField: 'title',\n\tmediaField: 'preview',\n\tfields: [ 'sync-status' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tquery: { postType = 'wp_block', categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst previousPostType = usePrevious( postType );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( postType, 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\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 = [ previewField, patternTitleField ];\n\n\t\tif ( postType === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ postType, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tpreviousCategoryId !== categoryId ||\n\t\t\tpreviousPostType !== postType\n\t\t) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId, previousPostType, postType ] );\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 ( postType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, postType ] );\n\n\tconst dataWithPermissions = useAugmentPatternsWithPermissions( data );\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 ( postType === 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, postType, templatePartActions, patternActions ] );\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={ postType }\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\tkey={ categoryId + postType }\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={ dataWithPermissions || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tisItemClickable={ ( item ) =>\n\t\t\t\t\t\titem.type !== PATTERN_TYPES.theme\n\t\t\t\t\t}\n\t\t\t\t\tonClickItem={ ( item ) => {\n\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t`/${ item.type }/${\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t\t\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t\t\t\t\t].includes( item.type )\n\t\t\t\t\t\t\t\t\t? item.id\n\t\t\t\t\t\t\t\t\t: item.name\n\t\t\t\t\t\t\t}?canvas=edit`\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -12,14 +12,13 @@ var _coreData = require("@wordpress/core-data");
|
|
|
12
12
|
var _dataviews = require("@wordpress/dataviews");
|
|
13
13
|
var _router = require("@wordpress/router");
|
|
14
14
|
var _editor = require("@wordpress/editor");
|
|
15
|
-
var _fields = require("@wordpress/fields");
|
|
16
15
|
var _url = require("@wordpress/url");
|
|
17
16
|
var _page = _interopRequireDefault(require("../page"));
|
|
18
17
|
var _addNewTemplate = _interopRequireDefault(require("../add-new-template"));
|
|
19
18
|
var _constants = require("../../utils/constants");
|
|
20
19
|
var _lockUnlock = require("../../lock-unlock");
|
|
21
20
|
var _dataviewsActions = require("../dataviews-actions");
|
|
22
|
-
var
|
|
21
|
+
var _fields = require("./fields");
|
|
23
22
|
var _compose = require("@wordpress/compose");
|
|
24
23
|
var _jsxRuntime = require("react/jsx-runtime");
|
|
25
24
|
/**
|
|
@@ -31,7 +30,8 @@ var _jsxRuntime = require("react/jsx-runtime");
|
|
|
31
30
|
*/
|
|
32
31
|
|
|
33
32
|
const {
|
|
34
|
-
usePostActions
|
|
33
|
+
usePostActions,
|
|
34
|
+
templateTitleField
|
|
35
35
|
} = (0, _lockUnlock.unlock)(_editor.privateApis);
|
|
36
36
|
const {
|
|
37
37
|
useHistory,
|
|
@@ -148,8 +148,8 @@ function PageTemplates() {
|
|
|
148
148
|
label: author
|
|
149
149
|
}));
|
|
150
150
|
}, [records]);
|
|
151
|
-
const fields = (0, _element.useMemo)(() => [
|
|
152
|
-
...
|
|
151
|
+
const fields = (0, _element.useMemo)(() => [_fields.previewField, templateTitleField, _fields.descriptionField, {
|
|
152
|
+
..._fields.authorField,
|
|
153
153
|
elements: authors
|
|
154
154
|
}], [authors]);
|
|
155
155
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_i18n","require","_element","_coreData","_dataviews","_router","_editor","_fields","_url","_page","_interopRequireDefault","_addNewTemplate","_constants","_lockUnlock","_dataviewsActions","_fields2","_compose","_jsxRuntime","usePostActions","unlock","editorPrivateApis","useHistory","useLocation","routerPrivateApis","useEntityRecordsWithPermissions","corePrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","showMedia","layout","styles","author","width","LAYOUT_GRID","LAYOUT_LIST","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","descriptionField","mediaField","fields","filters","PageTemplates","path","query","activeView","postId","selection","setSelection","useState","defaultView","useMemo","usedType","operator","value","view","setView","useEffect","currentView","OPERATOR_IS_ANY","records","isResolving","isLoadingData","TEMPLATE_POST_TYPE","per_page","history","onChangeSelection","useCallback","items","navigate","addQueryArgs","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","previewField","templateTitleField","authorField","elements","data","paginationInfo","filterSortAndPaginate","postTypeActions","postType","context","editAction","useEditPostAction","actions","onChangeView","useEvent","newView","jsx","default","className","title","__","children","DataViews","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { templateTitleField } from '@wordpress/fields';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\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\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\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\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\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\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}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, 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\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\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 = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\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\tkey={ activeView }\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\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_i18n","require","_element","_coreData","_dataviews","_router","_editor","_url","_page","_interopRequireDefault","_addNewTemplate","_constants","_lockUnlock","_dataviewsActions","_fields","_compose","_jsxRuntime","usePostActions","templateTitleField","unlock","editorPrivateApis","useHistory","useLocation","routerPrivateApis","useEntityRecordsWithPermissions","corePrivateApis","EMPTY_ARRAY","defaultLayouts","LAYOUT_TABLE","showMedia","layout","styles","author","width","LAYOUT_GRID","LAYOUT_LIST","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","descriptionField","mediaField","fields","filters","PageTemplates","path","query","activeView","postId","selection","setSelection","useState","defaultView","useMemo","usedType","operator","value","view","setView","useEffect","currentView","OPERATOR_IS_ANY","records","isResolving","isLoadingData","TEMPLATE_POST_TYPE","per_page","history","onChangeSelection","useCallback","items","navigate","addQueryArgs","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","previewField","authorField","elements","data","paginationInfo","filterSortAndPaginate","postTypeActions","postType","context","editAction","useEditPostAction","actions","onChangeView","useEvent","newView","jsx","default","className","title","__","children","DataViews","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions, templateTitleField } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\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\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\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\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\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\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}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, 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\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\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 = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\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\tkey={ activeView }\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\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -10,7 +10,6 @@ import { usePrevious } from '@wordpress/compose';
|
|
|
10
10
|
import { useEntityRecords } from '@wordpress/core-data';
|
|
11
11
|
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
12
12
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
13
|
-
import { patternTitleField } from '@wordpress/fields';
|
|
14
13
|
|
|
15
14
|
/**
|
|
16
15
|
* Internal dependencies
|
|
@@ -28,7 +27,8 @@ const {
|
|
|
28
27
|
ExperimentalBlockEditorProvider
|
|
29
28
|
} = unlock(blockEditorPrivateApis);
|
|
30
29
|
const {
|
|
31
|
-
usePostActions
|
|
30
|
+
usePostActions,
|
|
31
|
+
patternTitleField
|
|
32
32
|
} = unlock(editorPrivateApis);
|
|
33
33
|
const {
|
|
34
34
|
useLocation,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useState","useMemo","useId","useEffect","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","patternTitleField","Page","LAYOUT_GRID","LAYOUT_TABLE","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","usePatternSettings","unlock","usePatterns","useAugmentPatternsWithPermissions","PatternsHeader","useEditPostAction","patternStatusField","previewField","templatePartAuthorField","jsx","_jsx","jsxs","_jsxs","ExperimentalBlockEditorProvider","usePostActions","useLocation","useHistory","EMPTY_ARRAY","defaultLayouts","layout","styles","author","width","badgeFields","DEFAULT_VIEW","type","search","page","perPage","titleField","mediaField","fields","filters","DataviewsPatterns","query","postType","categoryId","categoryIdFromURL","history","view","setView","previousCategoryId","previousPostType","viewSyncStatus","find","field","value","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","user","push","elements","prevView","data","paginationInfo","viewWithoutFilters","dataWithPermissions","templatePartActions","context","patternActions","editAction","actions","filter","Boolean","id","settings","children","title","className","hideTitleFromUI","titleId","descriptionId","getItemId","item","_item$name","name","isLoading","isItemClickable","theme","onClickItem","navigate","includes","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\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';\nimport { patternTitleField } from '@wordpress/fields';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns, { useAugmentPatternsWithPermissions } from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tlayout: {\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\ttitleField: 'title',\n\tmediaField: 'preview',\n\tfields: [ 'sync-status' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tquery: { postType = 'wp_block', categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst previousPostType = usePrevious( postType );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( postType, 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\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 = [ previewField, patternTitleField ];\n\n\t\tif ( postType === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ postType, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tpreviousCategoryId !== categoryId ||\n\t\t\tpreviousPostType !== postType\n\t\t) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId, previousPostType, postType ] );\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 ( postType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, postType ] );\n\n\tconst dataWithPermissions = useAugmentPatternsWithPermissions( data );\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 ( postType === 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, postType, templatePartActions, patternActions ] );\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={ postType }\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\tkey={ categoryId + postType }\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={ dataWithPermissions || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tisItemClickable={ ( item ) =>\n\t\t\t\t\t\titem.type !== PATTERN_TYPES.theme\n\t\t\t\t\t}\n\t\t\t\t\tonClickItem={ ( item ) => {\n\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t`/${ item.type }/${\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t\t\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t\t\t\t\t].includes( item.type )\n\t\t\t\t\t\t\t\t\t? item.id\n\t\t\t\t\t\t\t\t\t: item.name\n\t\t\t\t\t\t\t}?canvas=edit`\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\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":["__","useState","useMemo","useId","useEffect","privateApis","blockEditorPrivateApis","DataViews","filterSortAndPaginate","usePrevious","useEntityRecords","editorPrivateApis","routerPrivateApis","Page","LAYOUT_GRID","LAYOUT_TABLE","PATTERN_TYPES","TEMPLATE_PART_POST_TYPE","PATTERN_DEFAULT_CATEGORY","usePatternSettings","unlock","usePatterns","useAugmentPatternsWithPermissions","PatternsHeader","useEditPostAction","patternStatusField","previewField","templatePartAuthorField","jsx","_jsx","jsxs","_jsxs","ExperimentalBlockEditorProvider","usePostActions","patternTitleField","useLocation","useHistory","EMPTY_ARRAY","defaultLayouts","layout","styles","author","width","badgeFields","DEFAULT_VIEW","type","search","page","perPage","titleField","mediaField","fields","filters","DataviewsPatterns","query","postType","categoryId","categoryIdFromURL","history","view","setView","previousCategoryId","previousPostType","viewSyncStatus","find","field","value","patterns","isResolving","syncStatus","records","per_page","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","_fields","user","push","elements","prevView","data","paginationInfo","viewWithoutFilters","dataWithPermissions","templatePartActions","context","patternActions","editAction","actions","filter","Boolean","id","settings","children","title","className","hideTitleFromUI","titleId","descriptionId","getItemId","item","_item$name","name","isLoading","isItemClickable","theme","onClickItem","navigate","includes","onChangeView"],"sources":["@wordpress/edit-site/src/components/page-patterns/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useId, useEffect } from '@wordpress/element';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\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 Page from '../page';\nimport {\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tPATTERN_TYPES,\n\tTEMPLATE_PART_POST_TYPE,\n\tPATTERN_DEFAULT_CATEGORY,\n} from '../../utils/constants';\nimport usePatternSettings from './use-pattern-settings';\nimport { unlock } from '../../lock-unlock';\nimport usePatterns, { useAugmentPatternsWithPermissions } from './use-patterns';\nimport PatternsHeader from './header';\nimport { useEditPostAction } from '../dataviews-actions';\nimport {\n\tpatternStatusField,\n\tpreviewField,\n\ttemplatePartAuthorField,\n} from './fields';\n\nconst { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );\nconst { usePostActions, patternTitleField } = unlock( editorPrivateApis );\nconst { useLocation, useHistory } = unlock( routerPrivateApis );\n\nconst EMPTY_ARRAY = [];\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tlayout: {\n\t\t\tbadgeFields: [ 'sync-status' ],\n\t\t},\n\t},\n};\nconst DEFAULT_VIEW = {\n\ttype: LAYOUT_GRID,\n\tsearch: '',\n\tpage: 1,\n\tperPage: 20,\n\ttitleField: 'title',\n\tmediaField: 'preview',\n\tfields: [ 'sync-status' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function DataviewsPatterns() {\n\tconst {\n\t\tquery: { postType = 'wp_block', categoryId: categoryIdFromURL },\n\t} = useLocation();\n\tconst history = useHistory();\n\tconst categoryId = categoryIdFromURL || PATTERN_DEFAULT_CATEGORY;\n\tconst [ view, setView ] = useState( DEFAULT_VIEW );\n\tconst previousCategoryId = usePrevious( categoryId );\n\tconst previousPostType = usePrevious( postType );\n\tconst viewSyncStatus = view.filters?.find(\n\t\t( { field } ) => field === 'sync-status'\n\t)?.value;\n\tconst { patterns, isResolving } = usePatterns( postType, 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\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 = [ previewField, patternTitleField ];\n\n\t\tif ( postType === PATTERN_TYPES.user ) {\n\t\t\t_fields.push( patternStatusField );\n\t\t} else if ( postType === TEMPLATE_PART_POST_TYPE ) {\n\t\t\t_fields.push( {\n\t\t\t\t...templatePartAuthorField,\n\t\t\t\telements: authors,\n\t\t\t} );\n\t\t}\n\n\t\treturn _fields;\n\t}, [ postType, authors ] );\n\n\t// Reset the page number when the category changes.\n\tuseEffect( () => {\n\t\tif (\n\t\t\tpreviousCategoryId !== categoryId ||\n\t\t\tpreviousPostType !== postType\n\t\t) {\n\t\t\tsetView( ( prevView ) => ( { ...prevView, page: 1 } ) );\n\t\t}\n\t}, [ categoryId, previousCategoryId, previousPostType, postType ] );\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 ( postType !== TEMPLATE_PART_POST_TYPE ) {\n\t\t\tviewWithoutFilters.filters = [];\n\t\t}\n\t\treturn filterSortAndPaginate( patterns, viewWithoutFilters, fields );\n\t}, [ patterns, view, fields, postType ] );\n\n\tconst dataWithPermissions = useAugmentPatternsWithPermissions( data );\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 ( postType === 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, postType, templatePartActions, patternActions ] );\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={ postType }\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\tkey={ categoryId + postType }\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={ dataWithPermissions || EMPTY_ARRAY }\n\t\t\t\t\tgetItemId={ ( item ) => item.name ?? item.id }\n\t\t\t\t\tisLoading={ isResolving }\n\t\t\t\t\tisItemClickable={ ( item ) =>\n\t\t\t\t\t\titem.type !== PATTERN_TYPES.theme\n\t\t\t\t\t}\n\t\t\t\t\tonClickItem={ ( item ) => {\n\t\t\t\t\t\thistory.navigate(\n\t\t\t\t\t\t\t`/${ item.type }/${\n\t\t\t\t\t\t\t\t[\n\t\t\t\t\t\t\t\t\tPATTERN_TYPES.user,\n\t\t\t\t\t\t\t\t\tTEMPLATE_PART_POST_TYPE,\n\t\t\t\t\t\t\t\t].includes( item.type )\n\t\t\t\t\t\t\t\t\t? item.id\n\t\t\t\t\t\t\t\t\t: item.name\n\t\t\t\t\t\t\t}?canvas=edit`\n\t\t\t\t\t\t);\n\t\t\t\t\t} }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ setView }\n\t\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t\t/>\n\t\t\t</Page>\n\t\t</ExperimentalBlockEditorProvider>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -8,7 +8,6 @@ import { privateApis as corePrivateApis } from '@wordpress/core-data';
|
|
|
8
8
|
import { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';
|
|
9
9
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
10
10
|
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
11
|
-
import { templateTitleField } from '@wordpress/fields';
|
|
12
11
|
import { addQueryArgs } from '@wordpress/url';
|
|
13
12
|
|
|
14
13
|
/**
|
|
@@ -23,7 +22,8 @@ import { authorField, descriptionField, previewField } from './fields';
|
|
|
23
22
|
import { useEvent } from '@wordpress/compose';
|
|
24
23
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
25
24
|
const {
|
|
26
|
-
usePostActions
|
|
25
|
+
usePostActions,
|
|
26
|
+
templateTitleField
|
|
27
27
|
} = unlock(editorPrivateApis);
|
|
28
28
|
const {
|
|
29
29
|
useHistory,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","useState","useMemo","useCallback","useEffect","privateApis","corePrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","templateTitleField","addQueryArgs","Page","AddNewTemplate","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","unlock","useEditPostAction","authorField","descriptionField","previewField","useEvent","jsx","_jsx","usePostActions","useHistory","useLocation","useEntityRecordsWithPermissions","EMPTY_ARRAY","defaultLayouts","showMedia","layout","styles","author","width","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","mediaField","fields","filters","PageTemplates","path","query","activeView","postId","selection","setSelection","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onChangeSelection","items","navigate","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","elements","data","paginationInfo","postTypeActions","postType","context","editAction","actions","onChangeView","newView","className","title","children","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { templateTitleField } from '@wordpress/fields';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\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\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\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\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\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\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}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, 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\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\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 = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\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\tkey={ activeView }\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\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__","useState","useMemo","useCallback","useEffect","privateApis","corePrivateApis","DataViews","filterSortAndPaginate","routerPrivateApis","editorPrivateApis","addQueryArgs","Page","AddNewTemplate","TEMPLATE_POST_TYPE","OPERATOR_IS_ANY","LAYOUT_GRID","LAYOUT_TABLE","LAYOUT_LIST","unlock","useEditPostAction","authorField","descriptionField","previewField","useEvent","jsx","_jsx","usePostActions","templateTitleField","useHistory","useLocation","useEntityRecordsWithPermissions","EMPTY_ARRAY","defaultLayouts","showMedia","layout","styles","author","width","DEFAULT_VIEW","type","search","page","perPage","sort","field","direction","titleField","mediaField","fields","filters","PageTemplates","path","query","activeView","postId","selection","setSelection","defaultView","usedType","operator","value","view","setView","currentView","records","isResolving","isLoadingData","per_page","history","onChangeSelection","items","navigate","length","undefined","authors","authorsSet","Set","forEach","template","add","author_text","Array","from","map","label","elements","data","paginationInfo","postTypeActions","postType","context","editAction","actions","onChangeView","newView","className","title","children","isLoading","isItemClickable","onClickItem","id"],"sources":["@wordpress/edit-site/src/components/page-templates/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useState, useMemo, useCallback, useEffect } from '@wordpress/element';\nimport { privateApis as corePrivateApis } from '@wordpress/core-data';\nimport { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\nimport { privateApis as editorPrivateApis } from '@wordpress/editor';\nimport { addQueryArgs } from '@wordpress/url';\n\n/**\n * Internal dependencies\n */\nimport Page from '../page';\nimport AddNewTemplate from '../add-new-template';\nimport {\n\tTEMPLATE_POST_TYPE,\n\tOPERATOR_IS_ANY,\n\tLAYOUT_GRID,\n\tLAYOUT_TABLE,\n\tLAYOUT_LIST,\n} from '../../utils/constants';\nimport { unlock } from '../../lock-unlock';\nimport { useEditPostAction } from '../dataviews-actions';\nimport { authorField, descriptionField, previewField } from './fields';\nimport { useEvent } from '@wordpress/compose';\n\nconst { usePostActions, templateTitleField } = unlock( editorPrivateApis );\nconst { useHistory, useLocation } = unlock( routerPrivateApis );\nconst { useEntityRecordsWithPermissions } = unlock( corePrivateApis );\n\nconst EMPTY_ARRAY = [];\n\nconst defaultLayouts = {\n\t[ LAYOUT_TABLE ]: {\n\t\tshowMedia: false,\n\t\tlayout: {\n\t\t\tstyles: {\n\t\t\t\tauthor: {\n\t\t\t\t\twidth: '1%',\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\t[ LAYOUT_GRID ]: {\n\t\tshowMedia: true,\n\t},\n\t[ LAYOUT_LIST ]: {\n\t\tshowMedia: false,\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\ttitleField: 'title',\n\tdescriptionField: 'description',\n\tmediaField: 'preview',\n\tfields: [ 'author' ],\n\tfilters: [],\n\t...defaultLayouts[ LAYOUT_GRID ],\n};\n\nexport default function PageTemplates() {\n\tconst { path, query } = useLocation();\n\tconst { activeView = 'all', layout, postId } = query;\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\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\t...defaultLayouts[ usedType ],\n\t\t};\n\t}, [ layout, activeView ] );\n\tconst [ view, setView ] = useState( defaultView );\n\n\t// Sync the layout from the URL to the view state.\n\tuseEffect( () => {\n\t\tsetView( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\ttype: layout ?? DEFAULT_VIEW.type,\n\t\t} ) );\n\t}, [ setView, layout ] );\n\n\t// Sync the active view from the URL to the view state.\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}, [ setView, activeView ] );\n\n\tconst { records, isResolving: isLoadingData } =\n\t\tuseEntityRecordsWithPermissions( 'postType', TEMPLATE_POST_TYPE, {\n\t\t\tper_page: -1,\n\t\t} );\n\tconst history = useHistory();\n\tconst onChangeSelection = useCallback(\n\t\t( items ) => {\n\t\t\tsetSelection( items );\n\t\t\tif ( view?.type === LAYOUT_LIST ) {\n\t\t\t\thistory.navigate(\n\t\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\t\tpostId: items.length === 1 ? items[ 0 ] : undefined,\n\t\t\t\t\t} )\n\t\t\t\t);\n\t\t\t}\n\t\t},\n\t\t[ history, path, 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\tpreviewField,\n\t\t\ttemplateTitleField,\n\t\t\tdescriptionField,\n\t\t\t{\n\t\t\t\t...authorField,\n\t\t\t\telements: authors,\n\t\t\t},\n\t\t],\n\t\t[ authors ]\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 = useEvent( ( newView ) => {\n\t\tsetView( newView );\n\t\tif ( newView.type !== layout ) {\n\t\t\thistory.navigate(\n\t\t\t\taddQueryArgs( path, {\n\t\t\t\t\tlayout: newView.type,\n\t\t\t\t} )\n\t\t\t);\n\t\t}\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\tkey={ activeView }\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\tonChangeSelection={ onChangeSelection }\n\t\t\t\tisItemClickable={ () => true }\n\t\t\t\tonClickItem={ ( { id } ) => {\n\t\t\t\t\thistory.navigate( `/wp_template/${ id }?canvas=edit` );\n\t\t\t\t} }\n\t\t\t\tselection={ selection }\n\t\t\t\tdefaultLayouts={ defaultLayouts }\n\t\t\t/>\n\t\t</Page>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/edit-site",
|
|
3
|
-
"version": "6.17.
|
|
3
|
+
"version": "6.17.1",
|
|
4
4
|
"description": "Edit Site Page module for WordPress.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -46,7 +46,7 @@
|
|
|
46
46
|
"@wordpress/date": "^5.17.0",
|
|
47
47
|
"@wordpress/deprecated": "^4.17.0",
|
|
48
48
|
"@wordpress/dom": "^4.17.0",
|
|
49
|
-
"@wordpress/editor": "^14.17.
|
|
49
|
+
"@wordpress/editor": "^14.17.1",
|
|
50
50
|
"@wordpress/element": "^6.17.0",
|
|
51
51
|
"@wordpress/escape-html": "^3.17.0",
|
|
52
52
|
"@wordpress/fields": "^0.9.0",
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"publishConfig": {
|
|
85
85
|
"access": "public"
|
|
86
86
|
},
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "05adbeff7892ddc5d5a52b816503d722ae7fc3e0"
|
|
88
88
|
}
|
|
@@ -9,7 +9,6 @@ import { usePrevious } from '@wordpress/compose';
|
|
|
9
9
|
import { useEntityRecords } from '@wordpress/core-data';
|
|
10
10
|
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
11
11
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
12
|
-
import { patternTitleField } from '@wordpress/fields';
|
|
13
12
|
|
|
14
13
|
/**
|
|
15
14
|
* Internal dependencies
|
|
@@ -34,7 +33,7 @@ import {
|
|
|
34
33
|
} from './fields';
|
|
35
34
|
|
|
36
35
|
const { ExperimentalBlockEditorProvider } = unlock( blockEditorPrivateApis );
|
|
37
|
-
const { usePostActions } = unlock( editorPrivateApis );
|
|
36
|
+
const { usePostActions, patternTitleField } = unlock( editorPrivateApis );
|
|
38
37
|
const { useLocation, useHistory } = unlock( routerPrivateApis );
|
|
39
38
|
|
|
40
39
|
const EMPTY_ARRAY = [];
|
|
@@ -7,7 +7,6 @@ import { privateApis as corePrivateApis } from '@wordpress/core-data';
|
|
|
7
7
|
import { DataViews, filterSortAndPaginate } from '@wordpress/dataviews';
|
|
8
8
|
import { privateApis as routerPrivateApis } from '@wordpress/router';
|
|
9
9
|
import { privateApis as editorPrivateApis } from '@wordpress/editor';
|
|
10
|
-
import { templateTitleField } from '@wordpress/fields';
|
|
11
10
|
import { addQueryArgs } from '@wordpress/url';
|
|
12
11
|
|
|
13
12
|
/**
|
|
@@ -27,7 +26,7 @@ import { useEditPostAction } from '../dataviews-actions';
|
|
|
27
26
|
import { authorField, descriptionField, previewField } from './fields';
|
|
28
27
|
import { useEvent } from '@wordpress/compose';
|
|
29
28
|
|
|
30
|
-
const { usePostActions } = unlock( editorPrivateApis );
|
|
29
|
+
const { usePostActions, templateTitleField } = unlock( editorPrivateApis );
|
|
31
30
|
const { useHistory, useLocation } = unlock( routerPrivateApis );
|
|
32
31
|
const { useEntityRecordsWithPermissions } = unlock( corePrivateApis );
|
|
33
32
|
|