@wordpress/edit-site 5.21.0 → 5.22.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/actions/index.js +121 -0
  3. package/build/components/actions/index.js.map +1 -0
  4. package/build/components/block-editor/use-site-editor-settings.js +12 -4
  5. package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
  6. package/build/components/dataviews/dataviews.js +10 -2
  7. package/build/components/dataviews/dataviews.js.map +1 -1
  8. package/build/components/dataviews/filters.js +30 -17
  9. package/build/components/dataviews/filters.js.map +1 -1
  10. package/build/components/dataviews/in-filter.js +5 -7
  11. package/build/components/dataviews/in-filter.js.map +1 -1
  12. package/build/components/dataviews/item-actions.js +62 -0
  13. package/build/components/dataviews/item-actions.js.map +1 -0
  14. package/build/components/dataviews/pagination.js +31 -50
  15. package/build/components/dataviews/pagination.js.map +1 -1
  16. package/build/components/dataviews/{text-filter.js → search.js} +10 -10
  17. package/build/components/dataviews/search.js.map +1 -0
  18. package/build/components/dataviews/view-grid.js +3 -3
  19. package/build/components/dataviews/view-grid.js.map +1 -1
  20. package/build/components/dataviews/view-list.js +2 -2
  21. package/build/components/dataviews/view-list.js.map +1 -1
  22. package/build/components/global-styles/font-library-modal/font-collection.js +1 -1
  23. package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  24. package/build/components/global-styles/screen-block.js +1 -8
  25. package/build/components/global-styles/screen-block.js.map +1 -1
  26. package/build/components/page-pages/default-views.js +62 -0
  27. package/build/components/page-pages/default-views.js.map +1 -0
  28. package/build/components/page-pages/index.js +73 -52
  29. package/build/components/page-pages/index.js.map +1 -1
  30. package/build/components/page-patterns/rename-category-menu-item.js +27 -9
  31. package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
  32. package/build/components/save-button/index.js +4 -2
  33. package/build/components/save-button/index.js.map +1 -1
  34. package/build/components/sidebar/index.js +3 -1
  35. package/build/components/sidebar/index.js.map +1 -1
  36. package/build/components/sidebar-dataviews/index.js +74 -0
  37. package/build/components/sidebar-dataviews/index.js.map +1 -0
  38. package/build/components/sidebar-navigation-screen-page/page-details.js +1 -1
  39. package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  40. package/build/hooks/commands/use-edit-mode-commands.js +3 -2
  41. package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
  42. package/build/utils/use-activate-theme.js +8 -0
  43. package/build/utils/use-activate-theme.js.map +1 -1
  44. package/build-module/components/actions/index.js +108 -0
  45. package/build-module/components/actions/index.js.map +1 -0
  46. package/build-module/components/block-editor/use-site-editor-settings.js +12 -4
  47. package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
  48. package/build-module/components/dataviews/dataviews.js +10 -2
  49. package/build-module/components/dataviews/dataviews.js.map +1 -1
  50. package/build-module/components/dataviews/filters.js +30 -17
  51. package/build-module/components/dataviews/filters.js.map +1 -1
  52. package/build-module/components/dataviews/in-filter.js +5 -7
  53. package/build-module/components/dataviews/in-filter.js.map +1 -1
  54. package/build-module/components/dataviews/item-actions.js +55 -0
  55. package/build-module/components/dataviews/item-actions.js.map +1 -0
  56. package/build-module/components/dataviews/pagination.js +32 -51
  57. package/build-module/components/dataviews/pagination.js.map +1 -1
  58. package/build-module/components/dataviews/{text-filter.js → search.js} +9 -9
  59. package/build-module/components/dataviews/search.js.map +1 -0
  60. package/build-module/components/dataviews/view-grid.js +3 -3
  61. package/build-module/components/dataviews/view-grid.js.map +1 -1
  62. package/build-module/components/dataviews/view-list.js +2 -2
  63. package/build-module/components/dataviews/view-list.js.map +1 -1
  64. package/build-module/components/global-styles/font-library-modal/font-collection.js +1 -1
  65. package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
  66. package/build-module/components/global-styles/screen-block.js +1 -8
  67. package/build-module/components/global-styles/screen-block.js.map +1 -1
  68. package/build-module/components/page-pages/default-views.js +55 -0
  69. package/build-module/components/page-pages/default-views.js.map +1 -0
  70. package/build-module/components/page-pages/index.js +71 -52
  71. package/build-module/components/page-pages/index.js.map +1 -1
  72. package/build-module/components/page-patterns/rename-category-menu-item.js +25 -9
  73. package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
  74. package/build-module/components/save-button/index.js +4 -2
  75. package/build-module/components/save-button/index.js.map +1 -1
  76. package/build-module/components/sidebar/index.js +3 -1
  77. package/build-module/components/sidebar/index.js.map +1 -1
  78. package/build-module/components/sidebar-dataviews/index.js +66 -0
  79. package/build-module/components/sidebar-dataviews/index.js.map +1 -0
  80. package/build-module/components/sidebar-navigation-screen-page/page-details.js +1 -1
  81. package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
  82. package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
  83. package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
  84. package/build-module/utils/use-activate-theme.js +8 -0
  85. package/build-module/utils/use-activate-theme.js.map +1 -1
  86. package/build-style/style-rtl.css +9 -5
  87. package/build-style/style.css +9 -5
  88. package/package.json +40 -40
  89. package/src/components/actions/index.js +123 -0
  90. package/src/components/block-editor/use-site-editor-settings.js +21 -13
  91. package/src/components/dataviews/README.md +134 -47
  92. package/src/components/dataviews/dataviews.js +11 -1
  93. package/src/components/dataviews/filters.js +35 -17
  94. package/src/components/dataviews/in-filter.js +5 -7
  95. package/src/components/dataviews/item-actions.js +69 -0
  96. package/src/components/dataviews/pagination.js +53 -74
  97. package/src/components/dataviews/{text-filter.js → search.js} +7 -7
  98. package/src/components/dataviews/style.scss +10 -5
  99. package/src/components/dataviews/view-grid.js +7 -2
  100. package/src/components/dataviews/view-list.js +2 -2
  101. package/src/components/global-styles/font-library-modal/font-collection.js +1 -1
  102. package/src/components/global-styles/screen-block.js +1 -7
  103. package/src/components/page-pages/default-views.js +60 -0
  104. package/src/components/page-pages/index.js +85 -60
  105. package/src/components/page-patterns/rename-category-menu-item.js +29 -12
  106. package/src/components/save-button/index.js +10 -5
  107. package/src/components/sidebar/index.js +2 -0
  108. package/src/components/sidebar-dataviews/index.js +66 -0
  109. package/src/components/sidebar-navigation-screen-page/page-details.js +3 -1
  110. package/src/hooks/commands/use-edit-mode-commands.js +3 -1
  111. package/src/utils/use-activate-theme.js +5 -0
  112. package/build/components/actions/trash-post.js +0 -48
  113. package/build/components/actions/trash-post.js.map +0 -1
  114. package/build/components/dataviews/field-actions.js +0 -30
  115. package/build/components/dataviews/field-actions.js.map +0 -1
  116. package/build/components/dataviews/text-filter.js.map +0 -1
  117. package/build-module/components/actions/trash-post.js +0 -41
  118. package/build-module/components/actions/trash-post.js.map +0 -1
  119. package/build-module/components/dataviews/field-actions.js +0 -22
  120. package/build-module/components/dataviews/field-actions.js.map +0 -1
  121. package/build-module/components/dataviews/text-filter.js.map +0 -1
  122. package/src/components/actions/trash-post.js +0 -55
  123. package/src/components/dataviews/field-actions.js +0 -28
package/CHANGELOG.md CHANGED
@@ -2,6 +2,8 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 5.22.0 (2023-11-02)
6
+
5
7
  ## 5.21.0 (2023-10-18)
6
8
 
7
9
  ## 5.20.0 (2023-10-05)
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.postRevisionsAction = void 0;
7
+ exports.useEditPostAction = useEditPostAction;
8
+ exports.useTrashPostAction = useTrashPostAction;
9
+ exports.viewPostAction = void 0;
10
+ var _icons = require("@wordpress/icons");
11
+ var _url = require("@wordpress/url");
12
+ var _data = require("@wordpress/data");
13
+ var _htmlEntities = require("@wordpress/html-entities");
14
+ var _coreData = require("@wordpress/core-data");
15
+ var _i18n = require("@wordpress/i18n");
16
+ var _notices = require("@wordpress/notices");
17
+ var _element = require("@wordpress/element");
18
+ var _router = require("@wordpress/router");
19
+ var _lockUnlock = require("../../lock-unlock");
20
+ /**
21
+ * WordPress dependencies
22
+ */
23
+
24
+ /**
25
+ * Internal dependencies
26
+ */
27
+
28
+ const {
29
+ useHistory
30
+ } = (0, _lockUnlock.unlock)(_router.privateApis);
31
+ function useTrashPostAction() {
32
+ const {
33
+ createSuccessNotice,
34
+ createErrorNotice
35
+ } = (0, _data.useDispatch)(_notices.store);
36
+ const {
37
+ deleteEntityRecord
38
+ } = (0, _data.useDispatch)(_coreData.store);
39
+ return (0, _element.useMemo)(() => ({
40
+ id: 'move-to-trash',
41
+ label: (0, _i18n.__)('Move to Trash'),
42
+ isPrimary: true,
43
+ icon: _icons.trash,
44
+ isEligible({
45
+ status
46
+ }) {
47
+ return status !== 'trash';
48
+ },
49
+ async perform(post) {
50
+ try {
51
+ await deleteEntityRecord('postType', post.type, post.id, {}, {
52
+ throwOnError: true
53
+ });
54
+ createSuccessNotice((0, _i18n.sprintf)( /* translators: The page's title. */
55
+ (0, _i18n.__)('"%s" moved to the Trash.'), (0, _htmlEntities.decodeEntities)(post.title.rendered)), {
56
+ type: 'snackbar',
57
+ id: 'edit-site-page-trashed'
58
+ });
59
+ } catch (error) {
60
+ const errorMessage = error.message && error.code !== 'unknown_error' ? error.message : (0, _i18n.__)('An error occurred while moving the page to the trash.');
61
+ createErrorNotice(errorMessage, {
62
+ type: 'snackbar'
63
+ });
64
+ }
65
+ }
66
+ }), [createSuccessNotice, createErrorNotice, deleteEntityRecord]);
67
+ }
68
+ const viewPostAction = {
69
+ id: 'view-post',
70
+ label: (0, _i18n.__)('View'),
71
+ isPrimary: true,
72
+ icon: _icons.external,
73
+ isEligible(post) {
74
+ return post.status !== 'trash';
75
+ },
76
+ perform(post) {
77
+ document.location.href = post.link;
78
+ }
79
+ };
80
+ exports.viewPostAction = viewPostAction;
81
+ function useEditPostAction() {
82
+ const history = useHistory();
83
+ return (0, _element.useMemo)(() => ({
84
+ id: 'edit-post',
85
+ label: (0, _i18n.__)('Edit'),
86
+ isEligible({
87
+ status
88
+ }) {
89
+ return status !== 'trash';
90
+ },
91
+ perform(post) {
92
+ history.push({
93
+ postId: post.id,
94
+ postType: post.type,
95
+ canvas: 'edit'
96
+ });
97
+ }
98
+ }), [history]);
99
+ }
100
+ const postRevisionsAction = {
101
+ id: 'view-post-revisions',
102
+ label: (0, _i18n.__)('View revisions'),
103
+ isPrimary: false,
104
+ isEligible: post => {
105
+ var _post$_links$predeces, _post$_links$version;
106
+ if (post.status === 'trash') {
107
+ return false;
108
+ }
109
+ const lastRevisionId = (_post$_links$predeces = post?._links?.['predecessor-version']?.[0]?.id) !== null && _post$_links$predeces !== void 0 ? _post$_links$predeces : null;
110
+ const revisionsCount = (_post$_links$version = post?._links?.['version-history']?.[0]?.count) !== null && _post$_links$version !== void 0 ? _post$_links$version : 0;
111
+ return lastRevisionId && revisionsCount > 1;
112
+ },
113
+ perform(post) {
114
+ const href = (0, _url.addQueryArgs)('revision.php', {
115
+ revision: post?._links?.['predecessor-version']?.[0]?.id
116
+ });
117
+ document.location.href = href;
118
+ }
119
+ };
120
+ exports.postRevisionsAction = postRevisionsAction;
121
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_icons","require","_url","_data","_htmlEntities","_coreData","_i18n","_notices","_element","_router","_lockUnlock","useHistory","unlock","routerPrivateApis","useTrashPostAction","createSuccessNotice","createErrorNotice","useDispatch","noticesStore","deleteEntityRecord","coreStore","useMemo","id","label","__","isPrimary","icon","trash","isEligible","status","perform","post","type","throwOnError","sprintf","decodeEntities","title","rendered","error","errorMessage","message","code","viewPostAction","external","document","location","href","link","exports","useEditPostAction","history","push","postId","postType","canvas","postRevisionsAction","_post$_links$predeces","_post$_links$version","lastRevisionId","_links","revisionsCount","count","addQueryArgs","revision"],"sources":["@wordpress/edit-site/src/components/actions/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { external, trash } from '@wordpress/icons';\nimport { addQueryArgs } from '@wordpress/url';\nimport { useDispatch } from '@wordpress/data';\nimport { decodeEntities } from '@wordpress/html-entities';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as noticesStore } from '@wordpress/notices';\nimport { useMemo } from '@wordpress/element';\nimport { privateApis as routerPrivateApis } from '@wordpress/router';\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { useHistory } = unlock( routerPrivateApis );\n\nexport function useTrashPostAction() {\n\tconst { createSuccessNotice, createErrorNotice } =\n\t\tuseDispatch( noticesStore );\n\tconst { deleteEntityRecord } = useDispatch( coreStore );\n\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'move-to-trash',\n\t\t\tlabel: __( 'Move to Trash' ),\n\t\t\tisPrimary: true,\n\t\t\ticon: trash,\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tasync perform( post ) {\n\t\t\t\ttry {\n\t\t\t\t\tawait deleteEntityRecord(\n\t\t\t\t\t\t'postType',\n\t\t\t\t\t\tpost.type,\n\t\t\t\t\t\tpost.id,\n\t\t\t\t\t\t{},\n\t\t\t\t\t\t{ throwOnError: true }\n\t\t\t\t\t);\n\t\t\t\t\tcreateSuccessNotice(\n\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t/* translators: The page's title. */\n\t\t\t\t\t\t\t__( '\"%s\" moved to the Trash.' ),\n\t\t\t\t\t\t\tdecodeEntities( post.title.rendered )\n\t\t\t\t\t\t),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: 'snackbar',\n\t\t\t\t\t\t\tid: 'edit-site-page-trashed',\n\t\t\t\t\t\t}\n\t\t\t\t\t);\n\t\t\t\t} catch ( error ) {\n\t\t\t\t\tconst errorMessage =\n\t\t\t\t\t\terror.message && error.code !== 'unknown_error'\n\t\t\t\t\t\t\t? error.message\n\t\t\t\t\t\t\t: __(\n\t\t\t\t\t\t\t\t\t'An error occurred while moving the page to the trash.'\n\t\t\t\t\t\t\t );\n\n\t\t\t\t\tcreateErrorNotice( errorMessage, { type: 'snackbar' } );\n\t\t\t\t}\n\t\t\t},\n\t\t} ),\n\t\t[ createSuccessNotice, createErrorNotice, deleteEntityRecord ]\n\t);\n}\n\nexport const viewPostAction = {\n\tid: 'view-post',\n\tlabel: __( 'View' ),\n\tisPrimary: true,\n\ticon: external,\n\tisEligible( post ) {\n\t\treturn post.status !== 'trash';\n\t},\n\tperform( post ) {\n\t\tdocument.location.href = post.link;\n\t},\n};\n\nexport function useEditPostAction() {\n\tconst history = useHistory();\n\treturn useMemo(\n\t\t() => ( {\n\t\t\tid: 'edit-post',\n\t\t\tlabel: __( 'Edit' ),\n\t\t\tisEligible( { status } ) {\n\t\t\t\treturn status !== 'trash';\n\t\t\t},\n\t\t\tperform( post ) {\n\t\t\t\thistory.push( {\n\t\t\t\t\tpostId: post.id,\n\t\t\t\t\tpostType: post.type,\n\t\t\t\t\tcanvas: 'edit',\n\t\t\t\t} );\n\t\t\t},\n\t\t} ),\n\t\t[ history ]\n\t);\n}\nexport const postRevisionsAction = {\n\tid: 'view-post-revisions',\n\tlabel: __( 'View revisions' ),\n\tisPrimary: false,\n\tisEligible: ( post ) => {\n\t\tif ( post.status === 'trash' ) {\n\t\t\treturn false;\n\t\t}\n\t\tconst lastRevisionId =\n\t\t\tpost?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id ?? null;\n\t\tconst revisionsCount =\n\t\t\tpost?._links?.[ 'version-history' ]?.[ 0 ]?.count ?? 0;\n\t\treturn lastRevisionId && revisionsCount > 1;\n\t},\n\tperform( post ) {\n\t\tconst href = addQueryArgs( 'revision.php', {\n\t\t\trevision: post?._links?.[ 'predecessor-version' ]?.[ 0 ]?.id,\n\t\t} );\n\t\tdocument.location.href = href;\n\t},\n};\n"],"mappings":"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"}
@@ -93,8 +93,13 @@ function useSiteEditorSettings() {
93
93
  const {
94
94
  storedSettings,
95
95
  canvasMode,
96
- templateType
96
+ templateType,
97
+ siteSettings
97
98
  } = (0, _data.useSelect)(select => {
99
+ const {
100
+ canUser,
101
+ getEntityRecord
102
+ } = select(_coreData.store);
98
103
  const {
99
104
  getSettings,
100
105
  getCanvasMode,
@@ -103,7 +108,8 @@ function useSiteEditorSettings() {
103
108
  return {
104
109
  storedSettings: getSettings(setIsInserterOpened),
105
110
  canvasMode: getCanvasMode(),
106
- templateType: getEditedPostType()
111
+ templateType: getEditedPostType(),
112
+ siteSettings: canUser('read', 'settings') ? getEntityRecord('root', 'site') : undefined
107
113
  };
108
114
  }, [setIsInserterOpened]);
109
115
  const settingsBlockPatterns = (_storedSettings$__exp = storedSettings.__experimentalAdditionalBlockPatterns) !== null && _storedSettings$__exp !== void 0 ? _storedSettings$__exp :
@@ -159,8 +165,10 @@ function useSiteEditorSettings() {
159
165
  __experimentalUserPatternCategories: userPatternCategories,
160
166
  focusMode: canvasMode === 'view' && focusMode ? false : focusMode,
161
167
  __experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,
162
- __experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel
168
+ __experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,
169
+ pageOnFront: siteSettings?.page_on_front,
170
+ pageForPosts: siteSettings?.page_for_posts
163
171
  };
164
- }, [storedSettings, blockPatterns, blockPatternCategories, userPatternCategories, canvasMode, archiveLabels.archiveTypeLabel, archiveLabels.archiveNameLabel]);
172
+ }, [storedSettings, blockPatterns, blockPatternCategories, userPatternCategories, canvasMode, archiveLabels.archiveTypeLabel, archiveLabels.archiveNameLabel, siteSettings?.page_on_front, siteSettings?.page_for_posts]);
165
173
  }
166
174
  //# sourceMappingURL=use-site-editor-settings.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_data","require","_element","_coreData","_store","_lockUnlock","_inserterMediaCategories","_interopRequireDefault","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","useSelect","select","getEntityRecords","getTaxonomy","getAuthors","coreStore","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","useDispatch","editSiteStore","storedSettings","canvasMode","templateType","getSettings","getCanvasMode","getEditedPostType","unlock","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","useMemo","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","inserterMediaCategories","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpened ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t] );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_data","require","_element","_coreData","_store","_lockUnlock","_inserterMediaCategories","_interopRequireDefault","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","useSelect","select","getEntityRecords","getTaxonomy","getAuthors","coreStore","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","useDispatch","editSiteStore","storedSettings","canvasMode","templateType","siteSettings","canUser","getEntityRecord","getSettings","getCanvasMode","getEditedPostType","unlock","undefined","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","useMemo","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","inserterMediaCategories","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel","pageOnFront","page_on_front","pageForPosts","page_for_posts"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType, siteSettings } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { canUser, getEntityRecord } = select( coreStore );\n\t\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } =\n\t\t\t\t\tunlock( select( editSiteStore ) );\n\t\t\t\treturn {\n\t\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t\t\tsiteSettings: canUser( 'read', 'settings' )\n\t\t\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t\t\t: undefined,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ setIsInserterOpened ]\n\t\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t\tsiteSettings?.page_on_front,\n\t\tsiteSettings?.page_for_posts,\n\t] );\n}\n"],"mappings":"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"}
@@ -12,6 +12,7 @@ var _viewList = _interopRequireDefault(require("./view-list"));
12
12
  var _pagination = _interopRequireDefault(require("./pagination"));
13
13
  var _viewActions = _interopRequireDefault(require("./view-actions"));
14
14
  var _filters = _interopRequireDefault(require("./filters"));
15
+ var _search = _interopRequireDefault(require("./search"));
15
16
  var _viewGrid = require("./view-grid");
16
17
  /**
17
18
  * WordPress dependencies
@@ -25,6 +26,8 @@ function DataViews({
25
26
  view,
26
27
  onChangeView,
27
28
  fields,
29
+ search = true,
30
+ searchLabel = undefined,
28
31
  actions,
29
32
  data,
30
33
  isLoading = false,
@@ -40,10 +43,15 @@ function DataViews({
40
43
  return (0, _react.createElement)("div", {
41
44
  className: "dataviews-wrapper"
42
45
  }, (0, _react.createElement)(_components.__experimentalVStack, {
43
- spacing: 4
46
+ spacing: 4,
47
+ justify: "flex-start"
44
48
  }, (0, _react.createElement)(_components.__experimentalHStack, null, (0, _react.createElement)(_components.__experimentalHStack, {
45
49
  justify: "start"
46
- }, (0, _react.createElement)(_filters.default, {
50
+ }, search && (0, _react.createElement)(_search.default, {
51
+ label: searchLabel,
52
+ view: view,
53
+ onChangeView: onChangeView
54
+ }), (0, _react.createElement)(_filters.default, {
47
55
  fields: fields,
48
56
  view: view,
49
57
  onChangeView: onChangeView
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_element","_viewList","_interopRequireDefault","_pagination","_viewActions","_filters","_viewGrid","DataViews","view","onChangeView","fields","actions","data","isLoading","paginationInfo","ViewComponent","type","ViewList","ViewGrid","_fields","useMemo","map","field","render","getValue","_react","createElement","className","__experimentalVStack","spacing","__experimentalHStack","justify","default"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,YAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,QAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,SAAA,GAAAP,OAAA;AAhBA;AACA;AACA;;AAOA;AACA;AACA;;AAOe,SAASQ,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGP,IAAI,CAACQ,IAAI,KAAK,MAAM,GAAGC,iBAAQ,GAAGC,kBAAQ;EAChE,MAAMC,OAAO,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC9B,OAAOV,MAAM,CAACW,GAAG,CAAIC,KAAK,KAAQ;MACjC,GAAGA,KAAK;MACRC,MAAM,EAAED,KAAK,CAACC,MAAM,IAAID,KAAK,CAACE;IAC/B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEd,MAAM,CAAG,CAAC;EACf,OACC,IAAAe,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAmB,GACjC,IAAAF,MAAA,CAAAC,aAAA,EAAC5B,WAAA,CAAA8B,oBAAM;IAACC,OAAO,EAAG;EAAG,GACpB,IAAAJ,MAAA,CAAAC,aAAA,EAAC5B,WAAA,CAAAgC,oBAAM,QACN,IAAAL,MAAA,CAAAC,aAAA,EAAC5B,WAAA,CAAAgC,oBAAM;IAACC,OAAO,EAAC;EAAO,GACtB,IAAAN,MAAA,CAAAC,aAAA,EAACrB,QAAA,CAAA2B,OAAO;IACPtB,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CAAC,EACT,IAAAgB,MAAA,CAAAC,aAAA,EAAC5B,WAAA,CAAAgC,oBAAM;IAACC,OAAO,EAAC;EAAK,GACpB,IAAAN,MAAA,CAAAC,aAAA,EAACtB,YAAA,CAAA4B,OAAW;IACXtB,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CACD,CAAC,EACT,IAAAgB,MAAA,CAAAC,aAAA,EAACX,aAAa;IACbL,MAAM,EAAGS,OAAS;IAClBX,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BK,cAAc,EAAGA,cAAgB;IACjCH,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,SAAS,EAAGA;EAAW,CACvB,CAAC,EACF,IAAAY,MAAA,CAAAC,aAAA,EAACvB,WAAA,CAAA6B,OAAU;IACVxB,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BK,cAAc,EAAGA;EAAgB,CACjC,CACM,CACJ,CAAC;AAER"}
1
+ {"version":3,"names":["_components","require","_element","_viewList","_interopRequireDefault","_pagination","_viewActions","_filters","_search","_viewGrid","DataViews","view","onChangeView","fields","search","searchLabel","undefined","actions","data","isLoading","paginationInfo","ViewComponent","type","ViewList","ViewGrid","_fields","useMemo","map","field","render","getValue","_react","createElement","className","__experimentalVStack","spacing","justify","__experimentalHStack","default","label"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport Search from './search';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tsearch = true,\n\tsearchLabel = undefined,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 } justify=\"flex-start\">\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t{ search && (\n\t\t\t\t\t\t\t<Search\n\t\t\t\t\t\t\t\tlabel={ searchLabel }\n\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,QAAA,GAAAD,OAAA;AAKA,IAAAE,SAAA,GAAAC,sBAAA,CAAAH,OAAA;AACA,IAAAI,WAAA,GAAAD,sBAAA,CAAAH,OAAA;AACA,IAAAK,YAAA,GAAAF,sBAAA,CAAAH,OAAA;AACA,IAAAM,QAAA,GAAAH,sBAAA,CAAAH,OAAA;AACA,IAAAO,OAAA,GAAAJ,sBAAA,CAAAH,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AAjBA;AACA;AACA;;AAOA;AACA;AACA;;AAQe,SAASS,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,MAAM,GAAG,IAAI;EACbC,WAAW,GAAGC,SAAS;EACvBC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGV,IAAI,CAACW,IAAI,KAAK,MAAM,GAAGC,iBAAQ,GAAGC,kBAAQ;EAChE,MAAMC,OAAO,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC9B,OAAOb,MAAM,CAACc,GAAG,CAAIC,KAAK,KAAQ;MACjC,GAAGA,KAAK;MACRC,MAAM,EAAED,KAAK,CAACC,MAAM,IAAID,KAAK,CAACE;IAC/B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEjB,MAAM,CAAG,CAAC;EACf,OACC,IAAAkB,MAAA,CAAAC,aAAA;IAAKC,SAAS,EAAC;EAAmB,GACjC,IAAAF,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAkC,oBAAM;IAACC,OAAO,EAAG,CAAG;IAACC,OAAO,EAAC;EAAY,GACzC,IAAAL,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAqC,oBAAM,QACN,IAAAN,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAqC,oBAAM;IAACD,OAAO,EAAC;EAAO,GACpBtB,MAAM,IACP,IAAAiB,MAAA,CAAAC,aAAA,EAACxB,OAAA,CAAA8B,OAAM;IACNC,KAAK,EAAGxB,WAAa;IACrBJ,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACD,EACD,IAAAmB,MAAA,CAAAC,aAAA,EAACzB,QAAA,CAAA+B,OAAO;IACPzB,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CAAC,EACT,IAAAmB,MAAA,CAAAC,aAAA,EAAChC,WAAA,CAAAqC,oBAAM;IAACD,OAAO,EAAC;EAAK,GACpB,IAAAL,MAAA,CAAAC,aAAA,EAAC1B,YAAA,CAAAgC,OAAW;IACXzB,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CACD,CAAC,EACT,IAAAmB,MAAA,CAAAC,aAAA,EAACX,aAAa;IACbR,MAAM,EAAGY,OAAS;IAClBd,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA,cAAgB;IACjCH,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,SAAS,EAAGA;EAAW,CACvB,CAAC,EACF,IAAAY,MAAA,CAAAC,aAAA,EAAC3B,WAAA,CAAAiC,OAAU;IACV3B,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA;EAAgB,CACjC,CACM,CACJ,CAAC;AAER"}
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports.default = Filters;
8
8
  var _react = require("react");
9
9
  var _i18n = require("@wordpress/i18n");
10
- var _textFilter = _interopRequireDefault(require("./text-filter"));
11
10
  var _inFilter = _interopRequireDefault(require("./in-filter"));
12
11
  /**
13
12
  * WordPress dependencies
@@ -22,35 +21,49 @@ function Filters({
22
21
  view,
23
22
  onChangeView
24
23
  }) {
25
- const filters = {};
24
+ const filterIndex = {};
26
25
  fields.forEach(field => {
27
26
  if (!field.filters) {
28
27
  return;
29
28
  }
30
- field.filters.forEach(f => {
31
- filters[f.id] = {
32
- type: f.type
33
- };
29
+ field.filters.forEach(filter => {
30
+ let id = field.id;
31
+ if ('string' === typeof filter) {
32
+ filterIndex[id] = {
33
+ id,
34
+ name: field.header,
35
+ type: filter
36
+ };
37
+ }
38
+ if ('object' === typeof filter) {
39
+ id = filter.id || field.id;
40
+ filterIndex[id] = {
41
+ id,
42
+ name: filter.name || field.header,
43
+ type: filter.type
44
+ };
45
+ }
46
+ if ('enumeration' === filterIndex[id]?.type) {
47
+ const elements = [{
48
+ value: filter.resetValue || '',
49
+ label: filter.resetLabel || (0, _i18n.__)('All')
50
+ }, ...(field.elements || [])];
51
+ filterIndex[id] = {
52
+ ...filterIndex[id],
53
+ elements
54
+ };
55
+ }
34
56
  });
35
57
  });
36
58
  return view.visibleFilters?.map(filterName => {
37
- const filter = filters[filterName];
59
+ const filter = filterIndex[filterName];
38
60
  if (!filter) {
39
61
  return null;
40
62
  }
41
- if (filter.type === 'search') {
42
- return (0, _react.createElement)(_textFilter.default, {
43
- key: filterName,
44
- id: filterName,
45
- view: view,
46
- onChangeView: onChangeView
47
- });
48
- }
49
63
  if (filter.type === 'enumeration') {
50
64
  return (0, _react.createElement)(_inFilter.default, {
51
65
  key: filterName,
52
- id: filterName,
53
- fields: fields,
66
+ filter: filter,
54
67
  view: view,
55
68
  onChangeView: onChangeView
56
69
  });
@@ -1 +1 @@
1
- {"version":3,"names":["_i18n","require","_textFilter","_interopRequireDefault","_inFilter","Filters","fields","view","onChangeView","filters","forEach","field","f","id","type","visibleFilters","map","filterName","filter","_react","createElement","default","key","__"],"sources":["@wordpress/edit-site/src/components/dataviews/filters.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport TextFilter from './text-filter';\nimport InFilter from './in-filter';\n\nexport default function Filters( { fields, view, onChangeView } ) {\n\tconst filters = {};\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( f ) => {\n\t\t\tfilters[ f.id ] = { type: f.type };\n\t\t} );\n\t} );\n\n\treturn (\n\t\tview.visibleFilters?.map( ( filterName ) => {\n\t\t\tconst filter = filters[ filterName ];\n\n\t\t\tif ( ! filter ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( filter.type === 'search' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<TextFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tid={ filterName }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\t\t\tif ( filter.type === 'enumeration' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<InFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tid={ filterName }\n\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn null;\n\t\t} ) || __( 'No filters available' )\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAKA,IAAAC,WAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,SAAA,GAAAD,sBAAA,CAAAF,OAAA;AATA;AACA;AACA;;AAGA;AACA;AACA;;AAIe,SAASI,OAAOA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACjE,MAAMC,OAAO,GAAG,CAAC,CAAC;EAClBH,MAAM,CAACI,OAAO,CAAIC,KAAK,IAAM;IAC5B,IAAK,CAAEA,KAAK,CAACF,OAAO,EAAG;MACtB;IACD;IAEAE,KAAK,CAACF,OAAO,CAACC,OAAO,CAAIE,CAAC,IAAM;MAC/BH,OAAO,CAAEG,CAAC,CAACC,EAAE,CAAE,GAAG;QAAEC,IAAI,EAAEF,CAAC,CAACE;MAAK,CAAC;IACnC,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OACCP,IAAI,CAACQ,cAAc,EAAEC,GAAG,CAAIC,UAAU,IAAM;IAC3C,MAAMC,MAAM,GAAGT,OAAO,CAAEQ,UAAU,CAAE;IAEpC,IAAK,CAAEC,MAAM,EAAG;MACf,OAAO,IAAI;IACZ;IAEA,IAAKA,MAAM,CAACJ,IAAI,KAAK,QAAQ,EAAG;MAC/B,OACC,IAAAK,MAAA,CAAAC,aAAA,EAAClB,WAAA,CAAAmB,OAAU;QACVC,GAAG,EAAGL,UAAY;QAClBJ,EAAE,EAAGI,UAAY;QACjBV,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IACA,IAAKU,MAAM,CAACJ,IAAI,KAAK,aAAa,EAAG;MACpC,OACC,IAAAK,MAAA,CAAAC,aAAA,EAAChB,SAAA,CAAAiB,OAAQ;QACRC,GAAG,EAAGL,UAAY;QAClBJ,EAAE,EAAGI,UAAY;QACjBX,MAAM,EAAGA,MAAQ;QACjBC,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IAEA,OAAO,IAAI;EACZ,CAAE,CAAC,IAAI,IAAAe,QAAE,EAAE,sBAAuB,CAAC;AAErC"}
1
+ {"version":3,"names":["_i18n","require","_inFilter","_interopRequireDefault","Filters","fields","view","onChangeView","filterIndex","forEach","field","filters","filter","id","name","header","type","elements","value","resetValue","label","resetLabel","__","visibleFilters","map","filterName","_react","createElement","default","key"],"sources":["@wordpress/edit-site/src/components/dataviews/filters.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport InFilter from './in-filter';\n\nexport default function Filters( { fields, view, onChangeView } ) {\n\tconst filterIndex = {};\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( filter ) => {\n\t\t\tlet id = field.id;\n\t\t\tif ( 'string' === typeof filter ) {\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: field.header,\n\t\t\t\t\ttype: filter,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'object' === typeof filter ) {\n\t\t\t\tid = filter.id || field.id;\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: filter.name || field.header,\n\t\t\t\t\ttype: filter.type,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'enumeration' === filterIndex[ id ]?.type ) {\n\t\t\t\tconst elements = [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: filter.resetValue || '',\n\t\t\t\t\t\tlabel: filter.resetLabel || __( 'All' ),\n\t\t\t\t\t},\n\t\t\t\t\t...( field.elements || [] ),\n\t\t\t\t];\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\t...filterIndex[ id ],\n\t\t\t\t\telements,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\t} );\n\n\treturn (\n\t\tview.visibleFilters?.map( ( filterName ) => {\n\t\t\tconst filter = filterIndex[ filterName ];\n\n\t\t\tif ( ! filter ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( filter.type === 'enumeration' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<InFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn null;\n\t\t} ) || __( 'No filters available' )\n\t);\n}\n"],"mappings":";;;;;;;;AAGA,IAAAA,KAAA,GAAAC,OAAA;AAKA,IAAAC,SAAA,GAAAC,sBAAA,CAAAF,OAAA;AARA;AACA;AACA;;AAGA;AACA;AACA;;AAGe,SAASG,OAAOA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACjE,MAAMC,WAAW,GAAG,CAAC,CAAC;EACtBH,MAAM,CAACI,OAAO,CAAIC,KAAK,IAAM;IAC5B,IAAK,CAAEA,KAAK,CAACC,OAAO,EAAG;MACtB;IACD;IAEAD,KAAK,CAACC,OAAO,CAACF,OAAO,CAAIG,MAAM,IAAM;MACpC,IAAIC,EAAE,GAAGH,KAAK,CAACG,EAAE;MACjB,IAAK,QAAQ,KAAK,OAAOD,MAAM,EAAG;QACjCJ,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEJ,KAAK,CAACK,MAAM;UAClBC,IAAI,EAAEJ;QACP,CAAC;MACF;MAEA,IAAK,QAAQ,KAAK,OAAOA,MAAM,EAAG;QACjCC,EAAE,GAAGD,MAAM,CAACC,EAAE,IAAIH,KAAK,CAACG,EAAE;QAC1BL,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEF,MAAM,CAACE,IAAI,IAAIJ,KAAK,CAACK,MAAM;UACjCC,IAAI,EAAEJ,MAAM,CAACI;QACd,CAAC;MACF;MAEA,IAAK,aAAa,KAAKR,WAAW,CAAEK,EAAE,CAAE,EAAEG,IAAI,EAAG;QAChD,MAAMC,QAAQ,GAAG,CAChB;UACCC,KAAK,EAAEN,MAAM,CAACO,UAAU,IAAI,EAAE;UAC9BC,KAAK,EAAER,MAAM,CAACS,UAAU,IAAI,IAAAC,QAAE,EAAE,KAAM;QACvC,CAAC,EACD,IAAKZ,KAAK,CAACO,QAAQ,IAAI,EAAE,CAAE,CAC3B;QACDT,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnB,GAAGL,WAAW,CAAEK,EAAE,CAAE;UACpBI;QACD,CAAC;MACF;IACD,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OACCX,IAAI,CAACiB,cAAc,EAAEC,GAAG,CAAIC,UAAU,IAAM;IAC3C,MAAMb,MAAM,GAAGJ,WAAW,CAAEiB,UAAU,CAAE;IAExC,IAAK,CAAEb,MAAM,EAAG;MACf,OAAO,IAAI;IACZ;IAEA,IAAKA,MAAM,CAACI,IAAI,KAAK,aAAa,EAAG;MACpC,OACC,IAAAU,MAAA,CAAAC,aAAA,EAACzB,SAAA,CAAA0B,OAAQ;QACRC,GAAG,EAAGJ,UAAY;QAClBb,MAAM,EAAGA,MAAQ;QACjBN,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IAEA,OAAO,IAAI;EACZ,CAAE,CAAC,IAAI,IAAAe,QAAE,EAAE,sBAAuB,CAAC;AAErC"}
@@ -20,19 +20,17 @@ const {
20
20
  cleanEmptyObject
21
21
  } = (0, _lockUnlock.unlock)(_blockEditor.privateApis);
22
22
  var _default = ({
23
- id,
24
- fields,
23
+ filter,
25
24
  view,
26
25
  onChangeView
27
26
  }) => {
28
- const field = fields.find(f => f.id === id);
29
27
  return (0, _react.createElement)(_components.SelectControl, {
30
- value: view.filters[id],
28
+ value: view.filters[filter.id],
31
29
  prefix: (0, _react.createElement)(_components.__experimentalInputControlPrefixWrapper, {
32
30
  as: "span",
33
31
  className: "dataviews__select-control-prefix"
34
- }, field.header + ':'),
35
- options: field?.elements || [],
32
+ }, filter.name + ':'),
33
+ options: filter.elements,
36
34
  onChange: value => {
37
35
  if (value === '') {
38
36
  value = undefined;
@@ -41,7 +39,7 @@ var _default = ({
41
39
  ...currentView,
42
40
  filters: cleanEmptyObject({
43
41
  ...currentView.filters,
44
- [id]: value
42
+ [filter.id]: value
45
43
  })
46
44
  }));
47
45
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_components","require","_blockEditor","_lockUnlock","cleanEmptyObject","unlock","blockEditorPrivateApis","_default","id","fields","view","onChangeView","field","find","f","_react","createElement","SelectControl","value","filters","prefix","__experimentalInputControlPrefixWrapper","as","className","header","options","elements","onChange","undefined","currentView","exports","default"],"sources":["@wordpress/edit-site/src/components/dataviews/in-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\tSelectControl,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default ( { id, fields, view, onChangeView } ) => {\n\tconst field = fields.find( ( f ) => f.id === id );\n\n\treturn (\n\t\t<SelectControl\n\t\t\tvalue={ view.filters[ id ] }\n\t\t\tprefix={\n\t\t\t\t<InputControlPrefixWrapper\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\tclassName=\"dataviews__select-control-prefix\"\n\t\t\t\t>\n\t\t\t\t\t{ field.header + ':' }\n\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t}\n\t\t\toptions={ field?.elements || [] }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value === '' ) {\n\t\t\t\t\tvalue = undefined;\n\t\t\t\t}\n\n\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tfilters: cleanEmptyObject( {\n\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t[ id ]: value,\n\t\t\t\t\t} ),\n\t\t\t\t} ) );\n\t\t\t} }\n\t\t/>\n\t);\n};\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,YAAA,GAAAD,OAAA;AAKA,IAAAE,WAAA,GAAAF,OAAA;AAZA;AACA;AACA;;AAOA;AACA;AACA;;AAGA,MAAM;EAAEG;AAAiB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAAC,IAAAC,QAAA,GAE/CA,CAAE;EAAEC,EAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,KAAM;EACxD,MAAMC,KAAK,GAAGH,MAAM,CAACI,IAAI,CAAIC,CAAC,IAAMA,CAAC,CAACN,EAAE,KAAKA,EAAG,CAAC;EAEjD,OACC,IAAAO,MAAA,CAAAC,aAAA,EAAChB,WAAA,CAAAiB,aAAa;IACbC,KAAK,EAAGR,IAAI,CAACS,OAAO,CAAEX,EAAE,CAAI;IAC5BY,MAAM,EACL,IAAAL,MAAA,CAAAC,aAAA,EAAChB,WAAA,CAAAqB,uCAAyB;MACzBC,EAAE,EAAC,MAAM;MACTC,SAAS,EAAC;IAAkC,GAE1CX,KAAK,CAACY,MAAM,GAAG,GACS,CAC3B;IACDC,OAAO,EAAGb,KAAK,EAAEc,QAAQ,IAAI,EAAI;IACjCC,QAAQ,EAAKT,KAAK,IAAM;MACvB,IAAKA,KAAK,KAAK,EAAE,EAAG;QACnBA,KAAK,GAAGU,SAAS;MAClB;MAEAjB,YAAY,CAAIkB,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdV,OAAO,EAAEf,gBAAgB,CAAE;UAC1B,GAAGyB,WAAW,CAACV,OAAO;UACtB,CAAEX,EAAE,GAAIU;QACT,CAAE;MACH,CAAC,CAAG,CAAC;IACN;EAAG,CACH,CAAC;AAEJ,CAAC;AAAAY,OAAA,CAAAC,OAAA,GAAAxB,QAAA"}
1
+ {"version":3,"names":["_components","require","_blockEditor","_lockUnlock","cleanEmptyObject","unlock","blockEditorPrivateApis","_default","filter","view","onChangeView","_react","createElement","SelectControl","value","filters","id","prefix","__experimentalInputControlPrefixWrapper","as","className","name","options","elements","onChange","undefined","currentView","exports","default"],"sources":["@wordpress/edit-site/src/components/dataviews/in-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\tSelectControl,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default ( { filter, view, onChangeView } ) => {\n\treturn (\n\t\t<SelectControl\n\t\t\tvalue={ view.filters[ filter.id ] }\n\t\t\tprefix={\n\t\t\t\t<InputControlPrefixWrapper\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\tclassName=\"dataviews__select-control-prefix\"\n\t\t\t\t>\n\t\t\t\t\t{ filter.name + ':' }\n\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t}\n\t\t\toptions={ filter.elements }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value === '' ) {\n\t\t\t\t\tvalue = undefined;\n\t\t\t\t}\n\n\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tfilters: cleanEmptyObject( {\n\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t[ filter.id ]: value,\n\t\t\t\t\t} ),\n\t\t\t\t} ) );\n\t\t\t} }\n\t\t/>\n\t);\n};\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAIA,IAAAC,YAAA,GAAAD,OAAA;AAKA,IAAAE,WAAA,GAAAF,OAAA;AAZA;AACA;AACA;;AAOA;AACA;AACA;;AAGA,MAAM;EAAEG;AAAiB,CAAC,GAAG,IAAAC,kBAAM,EAAEC,wBAAuB,CAAC;AAAC,IAAAC,QAAA,GAE/CA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,KAAM;EACpD,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAa,aAAa;IACbC,KAAK,EAAGL,IAAI,CAACM,OAAO,CAAEP,MAAM,CAACQ,EAAE,CAAI;IACnCC,MAAM,EACL,IAAAN,MAAA,CAAAC,aAAA,EAACZ,WAAA,CAAAkB,uCAAyB;MACzBC,EAAE,EAAC,MAAM;MACTC,SAAS,EAAC;IAAkC,GAE1CZ,MAAM,CAACa,IAAI,GAAG,GACU,CAC3B;IACDC,OAAO,EAAGd,MAAM,CAACe,QAAU;IAC3BC,QAAQ,EAAKV,KAAK,IAAM;MACvB,IAAKA,KAAK,KAAK,EAAE,EAAG;QACnBA,KAAK,GAAGW,SAAS;MAClB;MAEAf,YAAY,CAAIgB,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdX,OAAO,EAAEX,gBAAgB,CAAE;UAC1B,GAAGsB,WAAW,CAACX,OAAO;UACtB,CAAEP,MAAM,CAACQ,EAAE,GAAIF;QAChB,CAAE;MACH,CAAC,CAAG,CAAC;IACN;EAAG,CACH,CAAC;AAEJ,CAAC;AAAAa,OAAA,CAAAC,OAAA,GAAArB,QAAA"}
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = ItemActions;
7
+ var _react = require("react");
8
+ var _components = require("@wordpress/components");
9
+ var _i18n = require("@wordpress/i18n");
10
+ var _element = require("@wordpress/element");
11
+ var _icons = require("@wordpress/icons");
12
+ /**
13
+ * WordPress dependencies
14
+ */
15
+
16
+ function ItemActions({
17
+ item,
18
+ actions
19
+ }) {
20
+ const {
21
+ primaryActions,
22
+ secondaryActions
23
+ } = (0, _element.useMemo)(() => {
24
+ return actions.reduce((accumulator, action) => {
25
+ // If an action is eligible for all items, doesn't need
26
+ // to provide the `isEligible` function.
27
+ if (action.isEligible && !action.isEligible(item)) {
28
+ return accumulator;
29
+ }
30
+ if (action.isPrimary && !!action.icon) {
31
+ accumulator.primaryActions.push(action);
32
+ } else {
33
+ accumulator.secondaryActions.push(action);
34
+ }
35
+ return accumulator;
36
+ }, {
37
+ primaryActions: [],
38
+ secondaryActions: []
39
+ });
40
+ }, [actions, item]);
41
+ if (!primaryActions.length && !secondaryActions.length) {
42
+ return null;
43
+ }
44
+ return (0, _react.createElement)(_components.__experimentalHStack, {
45
+ justify: "flex-end"
46
+ }, !!primaryActions.length && primaryActions.map(action => (0, _react.createElement)(_components.Button, {
47
+ label: action.label,
48
+ key: action.id,
49
+ icon: action.icon,
50
+ onClick: () => action.perform(item),
51
+ isDestructive: action.isDestructive,
52
+ size: "compact"
53
+ })), !!secondaryActions.length && (0, _react.createElement)(_components.DropdownMenu, {
54
+ icon: _icons.moreVertical,
55
+ label: (0, _i18n.__)('Actions')
56
+ }, () => (0, _react.createElement)(_components.MenuGroup, null, secondaryActions.map(action => (0, _react.createElement)(_components.MenuItem, {
57
+ key: action.id,
58
+ onClick: () => action.perform(item),
59
+ isDestructive: action.isDestructive
60
+ }, action.label)))));
61
+ }
62
+ //# sourceMappingURL=item-actions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_components","require","_i18n","_element","_icons","ItemActions","item","actions","primaryActions","secondaryActions","useMemo","reduce","accumulator","action","isEligible","isPrimary","icon","push","length","_react","createElement","__experimentalHStack","justify","map","Button","label","key","id","onClick","perform","isDestructive","size","DropdownMenu","moreVertical","__","MenuGroup","MenuItem"],"sources":["@wordpress/edit-site/src/components/dataviews/item-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tButton,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { moreVertical } from '@wordpress/icons';\n\nexport default function ItemActions( { item, actions } ) {\n\tconst { primaryActions, secondaryActions } = useMemo( () => {\n\t\treturn actions.reduce(\n\t\t\t( accumulator, action ) => {\n\t\t\t\t// If an action is eligible for all items, doesn't need\n\t\t\t\t// to provide the `isEligible` function.\n\t\t\t\tif ( action.isEligible && ! action.isEligible( item ) ) {\n\t\t\t\t\treturn accumulator;\n\t\t\t\t}\n\t\t\t\tif ( action.isPrimary && !! action.icon ) {\n\t\t\t\t\taccumulator.primaryActions.push( action );\n\t\t\t\t} else {\n\t\t\t\t\taccumulator.secondaryActions.push( action );\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{ primaryActions: [], secondaryActions: [] }\n\t\t);\n\t}, [ actions, item ] );\n\tif ( ! primaryActions.length && ! secondaryActions.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<HStack justify=\"flex-end\">\n\t\t\t{ !! primaryActions.length &&\n\t\t\t\tprimaryActions.map( ( action ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={ action.label }\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\ticon={ action.icon }\n\t\t\t\t\t\tonClick={ () => action.perform( item ) }\n\t\t\t\t\t\tisDestructive={ action.isDestructive }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t{ !! secondaryActions.length && (\n\t\t\t\t<DropdownMenu icon={ moreVertical } label={ __( 'Actions' ) }>\n\t\t\t\t\t{ () => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ secondaryActions.map( ( action ) => (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\t\t\tonClick={ () => action.perform( item ) }\n\t\t\t\t\t\t\t\t\tisDestructive={ action.isDestructive }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ action.label }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],"mappings":";;;;;;;AAGA,IAAAA,WAAA,GAAAC,OAAA;AAOA,IAAAC,KAAA,GAAAD,OAAA;AACA,IAAAE,QAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAZA;AACA;AACA;;AAYe,SAASI,WAAWA,CAAE;EAAEC,IAAI;EAAEC;AAAQ,CAAC,EAAG;EACxD,MAAM;IAAEC,cAAc;IAAEC;EAAiB,CAAC,GAAG,IAAAC,gBAAO,EAAE,MAAM;IAC3D,OAAOH,OAAO,CAACI,MAAM,CACpB,CAAEC,WAAW,EAAEC,MAAM,KAAM;MAC1B;MACA;MACA,IAAKA,MAAM,CAACC,UAAU,IAAI,CAAED,MAAM,CAACC,UAAU,CAAER,IAAK,CAAC,EAAG;QACvD,OAAOM,WAAW;MACnB;MACA,IAAKC,MAAM,CAACE,SAAS,IAAI,CAAC,CAAEF,MAAM,CAACG,IAAI,EAAG;QACzCJ,WAAW,CAACJ,cAAc,CAACS,IAAI,CAAEJ,MAAO,CAAC;MAC1C,CAAC,MAAM;QACND,WAAW,CAACH,gBAAgB,CAACQ,IAAI,CAAEJ,MAAO,CAAC;MAC5C;MACA,OAAOD,WAAW;IACnB,CAAC,EACD;MAAEJ,cAAc,EAAE,EAAE;MAAEC,gBAAgB,EAAE;IAAG,CAC5C,CAAC;EACF,CAAC,EAAE,CAAEF,OAAO,EAAED,IAAI,CAAG,CAAC;EACtB,IAAK,CAAEE,cAAc,CAACU,MAAM,IAAI,CAAET,gBAAgB,CAACS,MAAM,EAAG;IAC3D,OAAO,IAAI;EACZ;EACA,OACC,IAAAC,MAAA,CAAAC,aAAA,EAACpB,WAAA,CAAAqB,oBAAM;IAACC,OAAO,EAAC;EAAU,GACvB,CAAC,CAAEd,cAAc,CAACU,MAAM,IACzBV,cAAc,CAACe,GAAG,CAAIV,MAAM,IAC3B,IAAAM,MAAA,CAAAC,aAAA,EAACpB,WAAA,CAAAwB,MAAM;IACNC,KAAK,EAAGZ,MAAM,CAACY,KAAO;IACtBC,GAAG,EAAGb,MAAM,CAACc,EAAI;IACjBX,IAAI,EAAGH,MAAM,CAACG,IAAM;IACpBY,OAAO,EAAGA,CAAA,KAAMf,MAAM,CAACgB,OAAO,CAAEvB,IAAK,CAAG;IACxCwB,aAAa,EAAGjB,MAAM,CAACiB,aAAe;IACtCC,IAAI,EAAC;EAAS,CACd,CACA,CAAC,EACF,CAAC,CAAEtB,gBAAgB,CAACS,MAAM,IAC3B,IAAAC,MAAA,CAAAC,aAAA,EAACpB,WAAA,CAAAgC,YAAY;IAAChB,IAAI,EAAGiB,mBAAc;IAACR,KAAK,EAAG,IAAAS,QAAE,EAAE,SAAU;EAAG,GAC1D,MACD,IAAAf,MAAA,CAAAC,aAAA,EAACpB,WAAA,CAAAmC,SAAS,QACP1B,gBAAgB,CAACc,GAAG,CAAIV,MAAM,IAC/B,IAAAM,MAAA,CAAAC,aAAA,EAACpB,WAAA,CAAAoC,QAAQ;IACRV,GAAG,EAAGb,MAAM,CAACc,EAAI;IACjBC,OAAO,EAAGA,CAAA,KAAMf,MAAM,CAACgB,OAAO,CAAEvB,IAAK,CAAG;IACxCwB,aAAa,EAAGjB,MAAM,CAACiB;EAAe,GAEpCjB,MAAM,CAACY,KACA,CACT,CACQ,CAEC,CAER,CAAC;AAEX"}