@wordpress/edit-site 5.20.0 → 5.21.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.
- package/CHANGELOG.md +2 -0
- package/build/components/actions/trash-post.js +48 -0
- package/build/components/actions/trash-post.js.map +1 -0
- package/build/components/add-new-template/add-custom-template-modal-content.js +17 -13
- package/build/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build/components/block-editor/resize-handle.js +2 -1
- package/build/components/block-editor/resize-handle.js.map +1 -1
- package/build/components/create-template-part-modal/index.js +10 -6
- package/build/components/create-template-part-modal/index.js.map +1 -1
- package/build/components/dataviews/dataviews.js +41 -32
- package/build/components/dataviews/dataviews.js.map +1 -1
- package/build/components/dataviews/field-actions.js +30 -0
- package/build/components/dataviews/field-actions.js.map +1 -0
- package/build/components/dataviews/filters.js +61 -0
- package/build/components/dataviews/filters.js.map +1 -0
- package/build/components/dataviews/in-filter.js +51 -0
- package/build/components/dataviews/in-filter.js.map +1 -0
- package/build/components/dataviews/index.js +0 -7
- package/build/components/dataviews/index.js.map +1 -1
- package/build/components/dataviews/pagination.js +75 -27
- package/build/components/dataviews/pagination.js.map +1 -1
- package/build/components/dataviews/text-filter.js +18 -12
- package/build/components/dataviews/text-filter.js.map +1 -1
- package/build/components/dataviews/view-actions.js +94 -56
- package/build/components/dataviews/view-actions.js.map +1 -1
- package/build/components/dataviews/view-grid.js +59 -0
- package/build/components/dataviews/view-grid.js.map +1 -0
- package/build/components/dataviews/view-list.js +283 -0
- package/build/components/dataviews/view-list.js.map +1 -0
- package/build/components/editor/index.js +2 -1
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/context.js +16 -10
- package/build/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +20 -6
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/screen-block.js +1 -2
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/global-styles/screen-root.js +1 -2
- package/build/components/global-styles/screen-root.js.map +1 -1
- package/build/components/global-styles/ui.js +3 -4
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/layout/index.js +10 -2
- package/build/components/layout/index.js.map +1 -1
- package/build/components/media/index.js +34 -0
- package/build/components/media/index.js.map +1 -0
- package/build/components/page-actions/index.js +0 -2
- package/build/components/page-actions/index.js.map +1 -1
- package/build/components/page-pages/index.js +153 -107
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/delete-category-menu-item.js +89 -0
- package/build/components/page-patterns/delete-category-menu-item.js.map +1 -0
- package/build/components/page-patterns/duplicate-menu-item.js +52 -131
- package/build/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build/components/page-patterns/grid-item.js +1 -0
- package/build/components/page-patterns/grid-item.js.map +1 -1
- package/build/components/page-patterns/header.js +25 -3
- package/build/components/page-patterns/header.js.map +1 -1
- package/build/components/page-patterns/rename-category-menu-item.js +49 -0
- package/build/components/page-patterns/rename-category-menu-item.js.map +1 -0
- package/build/components/page-patterns/rename-menu-item.js +1 -1
- package/build/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +1 -0
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/pattern-modal/duplicate.js +65 -0
- package/build/components/pattern-modal/duplicate.js.map +1 -0
- package/build/components/pattern-modal/index.js +24 -0
- package/build/components/pattern-modal/index.js.map +1 -0
- package/build/components/pattern-modal/rename.js +42 -0
- package/build/components/pattern-modal/rename.js.map +1 -0
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
- package/build/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
- package/build/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +29 -0
- package/build/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
- package/build/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
- package/build/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build/hooks/commands/use-common-commands.js +1 -2
- package/build/hooks/commands/use-common-commands.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +49 -0
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/lock-unlock.js +1 -1
- package/build/lock-unlock.js.map +1 -1
- package/build/store/selectors.js +4 -5
- package/build/store/selectors.js.map +1 -1
- package/build-module/components/actions/trash-post.js +41 -0
- package/build-module/components/actions/trash-post.js.map +1 -0
- package/build-module/components/add-new-template/add-custom-template-modal-content.js +16 -12
- package/build-module/components/add-new-template/add-custom-template-modal-content.js.map +1 -1
- package/build-module/components/block-editor/resize-handle.js +2 -1
- package/build-module/components/block-editor/resize-handle.js.map +1 -1
- package/build-module/components/create-template-part-modal/index.js +10 -6
- package/build-module/components/create-template-part-modal/index.js.map +1 -1
- package/build-module/components/dataviews/dataviews.js +40 -31
- package/build-module/components/dataviews/dataviews.js.map +1 -1
- package/build-module/components/dataviews/field-actions.js +22 -0
- package/build-module/components/dataviews/field-actions.js.map +1 -0
- package/build-module/components/dataviews/filters.js +53 -0
- package/build-module/components/dataviews/filters.js.map +1 -0
- package/build-module/components/dataviews/in-filter.js +43 -0
- package/build-module/components/dataviews/in-filter.js.map +1 -0
- package/build-module/components/dataviews/index.js +0 -1
- package/build-module/components/dataviews/index.js.map +1 -1
- package/build-module/components/dataviews/pagination.js +74 -28
- package/build-module/components/dataviews/pagination.js.map +1 -1
- package/build-module/components/dataviews/text-filter.js +19 -13
- package/build-module/components/dataviews/text-filter.js.map +1 -1
- package/build-module/components/dataviews/view-actions.js +95 -54
- package/build-module/components/dataviews/view-actions.js.map +1 -1
- package/build-module/components/dataviews/view-grid.js +51 -0
- package/build-module/components/dataviews/view-grid.js.map +1 -0
- package/build-module/components/dataviews/view-list.js +274 -0
- package/build-module/components/dataviews/view-list.js.map +1 -0
- package/build-module/components/editor/index.js +2 -1
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/context.js +16 -10
- package/build-module/components/global-styles/font-library-modal/context.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +20 -6
- package/build-module/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build-module/components/global-styles/screen-block.js +1 -2
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/global-styles/screen-root.js +1 -2
- package/build-module/components/global-styles/screen-root.js.map +1 -1
- package/build-module/components/global-styles/ui.js +3 -4
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/layout/index.js +11 -3
- package/build-module/components/layout/index.js.map +1 -1
- package/build-module/components/media/index.js +26 -0
- package/build-module/components/media/index.js.map +1 -0
- package/build-module/components/page-actions/index.js +0 -2
- package/build-module/components/page-actions/index.js.map +1 -1
- package/build-module/components/page-pages/index.js +156 -110
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/delete-category-menu-item.js +82 -0
- package/build-module/components/page-patterns/delete-category-menu-item.js.map +1 -0
- package/build-module/components/page-patterns/duplicate-menu-item.js +54 -133
- package/build-module/components/page-patterns/duplicate-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/grid-item.js +1 -0
- package/build-module/components/page-patterns/grid-item.js.map +1 -1
- package/build-module/components/page-patterns/header.js +26 -4
- package/build-module/components/page-patterns/header.js.map +1 -1
- package/build-module/components/page-patterns/rename-category-menu-item.js +42 -0
- package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -0
- package/build-module/components/page-patterns/rename-menu-item.js +1 -1
- package/build-module/components/page-patterns/rename-menu-item.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +1 -0
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/pattern-modal/duplicate.js +57 -0
- package/build-module/components/pattern-modal/duplicate.js.map +1 -0
- package/build-module/components/pattern-modal/index.js +14 -0
- package/build-module/components/pattern-modal/index.js.map +1 -0
- package/build-module/components/pattern-modal/rename.js +34 -0
- package/build-module/components/pattern-modal/rename.js.map +1 -0
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js +3 -0
- package/build-module/components/sidebar-edit-mode/template-panel/last-revision.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -2
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -3
- package/build-module/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +22 -0
- package/build-module/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js +12 -1
- package/build-module/components/sidebar-navigation-screen-template/home-template-details.js.map +1 -1
- package/build-module/hooks/commands/use-common-commands.js +1 -2
- package/build-module/hooks/commands/use-common-commands.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +50 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/lock-unlock.js +1 -1
- package/build-module/lock-unlock.js.map +1 -1
- package/build-module/store/selectors.js +4 -5
- package/build-module/store/selectors.js.map +1 -1
- package/build-style/style-rtl.css +42 -9
- package/build-style/style.css +42 -9
- package/package.json +40 -40
- package/src/components/actions/trash-post.js +55 -0
- package/src/components/add-new-template/add-custom-template-modal-content.js +22 -17
- package/src/components/block-editor/resize-handle.js +1 -0
- package/src/components/create-template-part-modal/index.js +9 -5
- package/src/components/dataviews/README.md +107 -0
- package/src/components/dataviews/dataviews.js +44 -33
- package/src/components/dataviews/field-actions.js +28 -0
- package/src/components/dataviews/filters.js +57 -0
- package/src/components/dataviews/in-filter.js +47 -0
- package/src/components/dataviews/index.js +0 -1
- package/src/components/dataviews/pagination.js +71 -29
- package/src/components/dataviews/style.scss +11 -1
- package/src/components/dataviews/text-filter.js +19 -15
- package/src/components/dataviews/view-actions.js +108 -63
- package/src/components/dataviews/view-grid.js +60 -0
- package/src/components/dataviews/view-list.js +348 -0
- package/src/components/editor/index.js +2 -0
- package/src/components/global-styles/font-library-modal/context.js +17 -11
- package/src/components/global-styles/font-library-modal/font-collection.js +18 -10
- package/src/components/global-styles/screen-block.js +1 -2
- package/src/components/global-styles/screen-root.js +1 -2
- package/src/components/global-styles/style.scss +16 -4
- package/src/components/global-styles/ui.js +1 -2
- package/src/components/layout/index.js +12 -4
- package/src/components/media/index.js +25 -0
- package/src/components/page-actions/index.js +1 -7
- package/src/components/page-pages/index.js +156 -108
- package/src/components/page-pages/style.scss +3 -0
- package/src/components/page-patterns/delete-category-menu-item.js +104 -0
- package/src/components/page-patterns/duplicate-menu-item.js +68 -181
- package/src/components/page-patterns/grid-item.js +1 -0
- package/src/components/page-patterns/header.js +42 -6
- package/src/components/page-patterns/rename-category-menu-item.js +45 -0
- package/src/components/page-patterns/rename-menu-item.js +2 -2
- package/src/components/page-patterns/style.scss +8 -0
- package/src/components/page-patterns/use-patterns.js +5 -0
- package/src/components/pattern-modal/duplicate.js +53 -0
- package/src/components/pattern-modal/index.js +19 -0
- package/src/components/pattern-modal/rename.js +29 -0
- package/src/components/sidebar-edit-mode/template-panel/last-revision.js +4 -0
- package/src/components/sidebar-navigation-screen/style.scss +17 -5
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu-list-item.js +2 -7
- package/src/components/sidebar-navigation-screen-pattern/template-part-navigation-menu.js +2 -8
- package/src/components/sidebar-navigation-screen-pattern/use-navigation-menu-title.js +32 -0
- package/src/components/sidebar-navigation-screen-template/home-template-details.js +21 -7
- package/src/hooks/commands/use-common-commands.js +1 -2
- package/src/hooks/commands/use-edit-mode-commands.js +41 -0
- package/src/lock-unlock.js +1 -1
- package/src/store/selectors.js +9 -10
- package/src/style.scss +1 -0
- package/build/components/dataviews/list-view.js +0 -89
- package/build/components/dataviews/list-view.js.map +0 -1
- package/build-module/components/dataviews/list-view.js +0 -80
- package/build-module/components/dataviews/list-view.js.map +0 -1
- package/src/components/dataviews/list-view.js +0 -106
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { __experimentalGrid as Grid, __experimentalHStack as HStack, __experimentalVStack as VStack, FlexBlock, Placeholder } from '@wordpress/components';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Internal dependencies
|
|
9
|
+
*/
|
|
10
|
+
import FieldActions from './field-actions';
|
|
11
|
+
export function ViewGrid({
|
|
12
|
+
data,
|
|
13
|
+
fields,
|
|
14
|
+
view,
|
|
15
|
+
actions
|
|
16
|
+
}) {
|
|
17
|
+
const mediaField = fields.find(field => field.id === view.layout.mediaField);
|
|
18
|
+
const visibleFields = fields.filter(field => !view.hiddenFields.includes(field.id) && field.id !== view.layout.mediaField);
|
|
19
|
+
return createElement(Grid, {
|
|
20
|
+
gap: 8,
|
|
21
|
+
columns: 2,
|
|
22
|
+
alignment: "top"
|
|
23
|
+
}, data.map((item, index) => {
|
|
24
|
+
return createElement(VStack, {
|
|
25
|
+
key: index
|
|
26
|
+
}, createElement("div", {
|
|
27
|
+
className: "dataviews-view-grid__media"
|
|
28
|
+
}, mediaField?.render({
|
|
29
|
+
item,
|
|
30
|
+
view
|
|
31
|
+
}) || createElement(Placeholder, {
|
|
32
|
+
withIllustration: true,
|
|
33
|
+
style: {
|
|
34
|
+
width: '100%',
|
|
35
|
+
minHeight: '200px'
|
|
36
|
+
}
|
|
37
|
+
})), createElement(HStack, {
|
|
38
|
+
justify: "space-between",
|
|
39
|
+
alignment: "top"
|
|
40
|
+
}, createElement(FlexBlock, null, createElement(VStack, null, visibleFields.map(field => createElement("div", {
|
|
41
|
+
key: field.id
|
|
42
|
+
}, field.render({
|
|
43
|
+
item,
|
|
44
|
+
view
|
|
45
|
+
}))))), createElement(FieldActions, {
|
|
46
|
+
item: item,
|
|
47
|
+
actions: actions
|
|
48
|
+
})));
|
|
49
|
+
}));
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=view-grid.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__experimentalGrid","Grid","__experimentalHStack","HStack","__experimentalVStack","VStack","FlexBlock","Placeholder","FieldActions","ViewGrid","data","fields","view","actions","mediaField","find","field","id","layout","visibleFields","filter","hiddenFields","includes","createElement","gap","columns","alignment","map","item","index","key","className","render","withIllustration","style","width","minHeight","justify"],"sources":["@wordpress/edit-site/src/components/dataviews/view-grid.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalGrid as Grid,\n\t__experimentalHStack as HStack,\n\t__experimentalVStack as VStack,\n\tFlexBlock,\n\tPlaceholder,\n} from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport FieldActions from './field-actions';\n\nexport function ViewGrid( { data, fields, view, actions } ) {\n\tconst mediaField = fields.find(\n\t\t( field ) => field.id === view.layout.mediaField\n\t);\n\tconst visibleFields = fields.filter(\n\t\t( field ) =>\n\t\t\t! view.hiddenFields.includes( field.id ) &&\n\t\t\tfield.id !== view.layout.mediaField\n\t);\n\treturn (\n\t\t<Grid gap={ 8 } columns={ 2 } alignment=\"top\">\n\t\t\t{ data.map( ( item, index ) => {\n\t\t\t\treturn (\n\t\t\t\t\t<VStack key={ index }>\n\t\t\t\t\t\t<div className=\"dataviews-view-grid__media\">\n\t\t\t\t\t\t\t{ mediaField?.render( { item, view } ) || (\n\t\t\t\t\t\t\t\t<Placeholder\n\t\t\t\t\t\t\t\t\twithIllustration\n\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\twidth: '100%',\n\t\t\t\t\t\t\t\t\t\tminHeight: '200px',\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<HStack justify=\"space-between\" alignment=\"top\">\n\t\t\t\t\t\t\t<FlexBlock>\n\t\t\t\t\t\t\t\t<VStack>\n\t\t\t\t\t\t\t\t\t{ visibleFields.map( ( field ) => (\n\t\t\t\t\t\t\t\t\t\t<div key={ field.id }>\n\t\t\t\t\t\t\t\t\t\t\t{ field.render( { item, view } ) }\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t\t</VStack>\n\t\t\t\t\t\t\t</FlexBlock>\n\t\t\t\t\t\t\t<FieldActions item={ item } actions={ actions } />\n\t\t\t\t\t\t</HStack>\n\t\t\t\t\t</VStack>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</Grid>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,kBAAkB,IAAIC,IAAI,EAC1BC,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,EAC9BC,SAAS,EACTC,WAAW,QACL,uBAAuB;;AAE9B;AACA;AACA;AACA,OAAOC,YAAY,MAAM,iBAAiB;AAE1C,OAAO,SAASC,QAAQA,CAAE;EAAEC,IAAI;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAQ,CAAC,EAAG;EAC3D,MAAMC,UAAU,GAAGH,MAAM,CAACI,IAAI,CAC3BC,KAAK,IAAMA,KAAK,CAACC,EAAE,KAAKL,IAAI,CAACM,MAAM,CAACJ,UACvC,CAAC;EACD,MAAMK,aAAa,GAAGR,MAAM,CAACS,MAAM,CAChCJ,KAAK,IACN,CAAEJ,IAAI,CAACS,YAAY,CAACC,QAAQ,CAAEN,KAAK,CAACC,EAAG,CAAC,IACxCD,KAAK,CAACC,EAAE,KAAKL,IAAI,CAACM,MAAM,CAACJ,UAC3B,CAAC;EACD,OACCS,aAAA,CAACtB,IAAI;IAACuB,GAAG,EAAG,CAAG;IAACC,OAAO,EAAG,CAAG;IAACC,SAAS,EAAC;EAAK,GAC1ChB,IAAI,CAACiB,GAAG,CAAE,CAAEC,IAAI,EAAEC,KAAK,KAAM;IAC9B,OACCN,aAAA,CAAClB,MAAM;MAACyB,GAAG,EAAGD;IAAO,GACpBN,aAAA;MAAKQ,SAAS,EAAC;IAA4B,GACxCjB,UAAU,EAAEkB,MAAM,CAAE;MAAEJ,IAAI;MAAEhB;IAAK,CAAE,CAAC,IACrCW,aAAA,CAAChB,WAAW;MACX0B,gBAAgB;MAChBC,KAAK,EAAG;QACPC,KAAK,EAAE,MAAM;QACbC,SAAS,EAAE;MACZ;IAAG,CACH,CAEE,CAAC,EAENb,aAAA,CAACpB,MAAM;MAACkC,OAAO,EAAC,eAAe;MAACX,SAAS,EAAC;IAAK,GAC9CH,aAAA,CAACjB,SAAS,QACTiB,aAAA,CAAClB,MAAM,QACJc,aAAa,CAACQ,GAAG,CAAIX,KAAK,IAC3BO,aAAA;MAAKO,GAAG,EAAGd,KAAK,CAACC;IAAI,GAClBD,KAAK,CAACgB,MAAM,CAAE;MAAEJ,IAAI;MAAEhB;IAAK,CAAE,CAC3B,CACJ,CACK,CACE,CAAC,EACZW,aAAA,CAACf,YAAY;MAACoB,IAAI,EAAGA,IAAM;MAACf,OAAO,EAAGA;IAAS,CAAE,CAC1C,CACD,CAAC;EAEX,CAAE,CACG,CAAC;AAET"}
|
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* External dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { getCoreRowModel, getFilteredRowModel, getSortedRowModel, getPaginationRowModel, useReactTable, flexRender } from '@tanstack/react-table';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* WordPress dependencies
|
|
9
|
+
*/
|
|
10
|
+
import { __ } from '@wordpress/i18n';
|
|
11
|
+
import { chevronDown, chevronUp, unseen, check, arrowUp, arrowDown } from '@wordpress/icons';
|
|
12
|
+
import { Button, Icon, privateApis as componentsPrivateApis, VisuallyHidden } from '@wordpress/components';
|
|
13
|
+
import { useMemo, Children, Fragment } from '@wordpress/element';
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Internal dependencies
|
|
17
|
+
*/
|
|
18
|
+
import { unlock } from '../../lock-unlock';
|
|
19
|
+
import FieldActions from './field-actions';
|
|
20
|
+
const {
|
|
21
|
+
DropdownMenuV2,
|
|
22
|
+
DropdownMenuGroupV2,
|
|
23
|
+
DropdownMenuItemV2,
|
|
24
|
+
DropdownMenuSeparatorV2
|
|
25
|
+
} = unlock(componentsPrivateApis);
|
|
26
|
+
const EMPTY_OBJECT = {};
|
|
27
|
+
const sortingItemsInfo = {
|
|
28
|
+
asc: {
|
|
29
|
+
icon: arrowUp,
|
|
30
|
+
label: __('Sort ascending')
|
|
31
|
+
},
|
|
32
|
+
desc: {
|
|
33
|
+
icon: arrowDown,
|
|
34
|
+
label: __('Sort descending')
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
const sortIcons = {
|
|
38
|
+
asc: chevronUp,
|
|
39
|
+
desc: chevronDown
|
|
40
|
+
};
|
|
41
|
+
function HeaderMenu({
|
|
42
|
+
dataView,
|
|
43
|
+
header
|
|
44
|
+
}) {
|
|
45
|
+
if (header.isPlaceholder) {
|
|
46
|
+
return null;
|
|
47
|
+
}
|
|
48
|
+
const text = flexRender(header.column.columnDef.header, header.getContext());
|
|
49
|
+
const isSortable = !!header.column.getCanSort();
|
|
50
|
+
const isHidable = !!header.column.getCanHide();
|
|
51
|
+
if (!isSortable && !isHidable) {
|
|
52
|
+
return text;
|
|
53
|
+
}
|
|
54
|
+
const sortedDirection = header.column.getIsSorted();
|
|
55
|
+
return createElement(DropdownMenuV2, {
|
|
56
|
+
align: "start",
|
|
57
|
+
trigger: createElement(Button, {
|
|
58
|
+
icon: sortIcons[header.column.getIsSorted()],
|
|
59
|
+
iconPosition: "right",
|
|
60
|
+
text: text,
|
|
61
|
+
style: {
|
|
62
|
+
padding: 0
|
|
63
|
+
}
|
|
64
|
+
})
|
|
65
|
+
}, createElement(WithSeparators, null, isSortable && createElement(DropdownMenuGroupV2, null, Object.entries(sortingItemsInfo).map(([direction, info]) => createElement(DropdownMenuItemV2, {
|
|
66
|
+
key: direction,
|
|
67
|
+
prefix: createElement(Icon, {
|
|
68
|
+
icon: info.icon
|
|
69
|
+
}),
|
|
70
|
+
suffix: sortedDirection === direction && createElement(Icon, {
|
|
71
|
+
icon: check
|
|
72
|
+
}),
|
|
73
|
+
onSelect: event => {
|
|
74
|
+
event.preventDefault();
|
|
75
|
+
if (sortedDirection === direction) {
|
|
76
|
+
dataView.resetSorting();
|
|
77
|
+
} else {
|
|
78
|
+
dataView.setSorting([{
|
|
79
|
+
id: header.column.id,
|
|
80
|
+
desc: direction === 'desc'
|
|
81
|
+
}]);
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}, info.label))), isHidable && createElement(DropdownMenuItemV2, {
|
|
85
|
+
prefix: createElement(Icon, {
|
|
86
|
+
icon: unseen
|
|
87
|
+
}),
|
|
88
|
+
onSelect: event => {
|
|
89
|
+
event.preventDefault();
|
|
90
|
+
header.column.getToggleVisibilityHandler()(event);
|
|
91
|
+
}
|
|
92
|
+
}, __('Hide'))));
|
|
93
|
+
}
|
|
94
|
+
function WithSeparators({
|
|
95
|
+
children
|
|
96
|
+
}) {
|
|
97
|
+
return Children.toArray(children).filter(Boolean).map((child, i) => createElement(Fragment, {
|
|
98
|
+
key: i
|
|
99
|
+
}, i > 0 && createElement(DropdownMenuSeparatorV2, null), child));
|
|
100
|
+
}
|
|
101
|
+
function ViewList({
|
|
102
|
+
view,
|
|
103
|
+
onChangeView,
|
|
104
|
+
fields,
|
|
105
|
+
actions,
|
|
106
|
+
data,
|
|
107
|
+
isLoading = false,
|
|
108
|
+
paginationInfo
|
|
109
|
+
}) {
|
|
110
|
+
const columns = useMemo(() => {
|
|
111
|
+
const _columns = fields.map(field => {
|
|
112
|
+
const {
|
|
113
|
+
render,
|
|
114
|
+
getValue,
|
|
115
|
+
...column
|
|
116
|
+
} = field;
|
|
117
|
+
column.cell = props => render({
|
|
118
|
+
item: props.row.original,
|
|
119
|
+
view
|
|
120
|
+
});
|
|
121
|
+
if (getValue) {
|
|
122
|
+
column.accessorFn = item => getValue({
|
|
123
|
+
item
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return column;
|
|
127
|
+
});
|
|
128
|
+
if (actions?.length) {
|
|
129
|
+
_columns.push({
|
|
130
|
+
header: createElement(VisuallyHidden, null, __('Actions')),
|
|
131
|
+
id: 'actions',
|
|
132
|
+
cell: props => {
|
|
133
|
+
return createElement(FieldActions, {
|
|
134
|
+
item: props.row.original,
|
|
135
|
+
actions: actions
|
|
136
|
+
});
|
|
137
|
+
},
|
|
138
|
+
enableHiding: false
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
return _columns;
|
|
142
|
+
}, [fields, actions, view]);
|
|
143
|
+
const columnVisibility = useMemo(() => {
|
|
144
|
+
if (!view.hiddenFields?.length) {
|
|
145
|
+
return;
|
|
146
|
+
}
|
|
147
|
+
return view.hiddenFields.reduce((accumulator, fieldId) => ({
|
|
148
|
+
...accumulator,
|
|
149
|
+
[fieldId]: false
|
|
150
|
+
}), {});
|
|
151
|
+
}, [view.hiddenFields]);
|
|
152
|
+
const dataView = useReactTable({
|
|
153
|
+
data,
|
|
154
|
+
columns,
|
|
155
|
+
manualSorting: true,
|
|
156
|
+
manualFiltering: true,
|
|
157
|
+
manualPagination: true,
|
|
158
|
+
enableRowSelection: true,
|
|
159
|
+
state: {
|
|
160
|
+
sorting: view.sort ? [{
|
|
161
|
+
id: view.sort.field,
|
|
162
|
+
desc: view.sort.direction === 'desc'
|
|
163
|
+
}] : [],
|
|
164
|
+
globalFilter: view.search,
|
|
165
|
+
pagination: {
|
|
166
|
+
pageIndex: view.page,
|
|
167
|
+
pageSize: view.perPage
|
|
168
|
+
},
|
|
169
|
+
columnVisibility: columnVisibility !== null && columnVisibility !== void 0 ? columnVisibility : EMPTY_OBJECT
|
|
170
|
+
},
|
|
171
|
+
onSortingChange: sortingUpdater => {
|
|
172
|
+
onChangeView(currentView => {
|
|
173
|
+
const sort = typeof sortingUpdater === 'function' ? sortingUpdater(currentView.sort ? [{
|
|
174
|
+
id: currentView.sort.field,
|
|
175
|
+
desc: currentView.sort.direction === 'desc'
|
|
176
|
+
}] : []) : sortingUpdater;
|
|
177
|
+
if (!sort.length) {
|
|
178
|
+
return {
|
|
179
|
+
...currentView,
|
|
180
|
+
sort: {}
|
|
181
|
+
};
|
|
182
|
+
}
|
|
183
|
+
const [{
|
|
184
|
+
id,
|
|
185
|
+
desc
|
|
186
|
+
}] = sort;
|
|
187
|
+
return {
|
|
188
|
+
...currentView,
|
|
189
|
+
sort: {
|
|
190
|
+
field: id,
|
|
191
|
+
direction: desc ? 'desc' : 'asc'
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
});
|
|
195
|
+
},
|
|
196
|
+
onColumnVisibilityChange: columnVisibilityUpdater => {
|
|
197
|
+
onChangeView(currentView => {
|
|
198
|
+
const hiddenFields = Object.entries(columnVisibilityUpdater()).reduce((accumulator, [fieldId, value]) => {
|
|
199
|
+
if (value) {
|
|
200
|
+
return accumulator.filter(id => id !== fieldId);
|
|
201
|
+
}
|
|
202
|
+
return [...accumulator, fieldId];
|
|
203
|
+
}, [...(currentView.hiddenFields || [])]);
|
|
204
|
+
return {
|
|
205
|
+
...currentView,
|
|
206
|
+
hiddenFields
|
|
207
|
+
};
|
|
208
|
+
});
|
|
209
|
+
},
|
|
210
|
+
onGlobalFilterChange: value => {
|
|
211
|
+
onChangeView({
|
|
212
|
+
...view,
|
|
213
|
+
search: value,
|
|
214
|
+
page: 0
|
|
215
|
+
});
|
|
216
|
+
},
|
|
217
|
+
onPaginationChange: paginationUpdater => {
|
|
218
|
+
onChangeView(currentView => {
|
|
219
|
+
const {
|
|
220
|
+
pageIndex,
|
|
221
|
+
pageSize
|
|
222
|
+
} = paginationUpdater({
|
|
223
|
+
pageIndex: currentView.page,
|
|
224
|
+
pageSize: currentView.perPage
|
|
225
|
+
});
|
|
226
|
+
return {
|
|
227
|
+
...view,
|
|
228
|
+
page: pageIndex,
|
|
229
|
+
perPage: pageSize
|
|
230
|
+
};
|
|
231
|
+
});
|
|
232
|
+
},
|
|
233
|
+
getCoreRowModel: getCoreRowModel(),
|
|
234
|
+
getFilteredRowModel: getFilteredRowModel(),
|
|
235
|
+
getSortedRowModel: getSortedRowModel(),
|
|
236
|
+
getPaginationRowModel: getPaginationRowModel(),
|
|
237
|
+
pageCount: paginationInfo.totalPages
|
|
238
|
+
});
|
|
239
|
+
const {
|
|
240
|
+
rows
|
|
241
|
+
} = dataView.getRowModel();
|
|
242
|
+
const hasRows = !!rows?.length;
|
|
243
|
+
if (isLoading) {
|
|
244
|
+
// TODO:Add spinner or progress bar..
|
|
245
|
+
return createElement("h3", null, __('Loading'));
|
|
246
|
+
}
|
|
247
|
+
return createElement("div", {
|
|
248
|
+
className: "dataviews-list-view-wrapper"
|
|
249
|
+
}, hasRows && createElement("table", {
|
|
250
|
+
className: "dataviews-list-view"
|
|
251
|
+
}, createElement("thead", null, dataView.getHeaderGroups().map(headerGroup => createElement("tr", {
|
|
252
|
+
key: headerGroup.id
|
|
253
|
+
}, headerGroup.headers.map(header => createElement("th", {
|
|
254
|
+
key: header.id,
|
|
255
|
+
colSpan: header.colSpan,
|
|
256
|
+
style: {
|
|
257
|
+
width: header.column.columnDef.width || undefined,
|
|
258
|
+
maxWidth: header.column.columnDef.maxWidth || undefined
|
|
259
|
+
}
|
|
260
|
+
}, createElement(HeaderMenu, {
|
|
261
|
+
dataView: dataView,
|
|
262
|
+
header: header
|
|
263
|
+
})))))), createElement("tbody", null, rows.map(row => createElement("tr", {
|
|
264
|
+
key: row.id
|
|
265
|
+
}, row.getVisibleCells().map(cell => createElement("td", {
|
|
266
|
+
key: cell.id,
|
|
267
|
+
style: {
|
|
268
|
+
width: cell.column.columnDef.width || undefined,
|
|
269
|
+
maxWidth: cell.column.columnDef.maxWidth || undefined
|
|
270
|
+
}
|
|
271
|
+
}, flexRender(cell.column.columnDef.cell, cell.getContext()))))))), !hasRows && createElement("p", null, __('no results')));
|
|
272
|
+
}
|
|
273
|
+
export default ViewList;
|
|
274
|
+
//# sourceMappingURL=view-list.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getCoreRowModel","getFilteredRowModel","getSortedRowModel","getPaginationRowModel","useReactTable","flexRender","__","chevronDown","chevronUp","unseen","check","arrowUp","arrowDown","Button","Icon","privateApis","componentsPrivateApis","VisuallyHidden","useMemo","Children","Fragment","unlock","FieldActions","DropdownMenuV2","DropdownMenuGroupV2","DropdownMenuItemV2","DropdownMenuSeparatorV2","EMPTY_OBJECT","sortingItemsInfo","asc","icon","label","desc","sortIcons","HeaderMenu","dataView","header","isPlaceholder","text","column","columnDef","getContext","isSortable","getCanSort","isHidable","getCanHide","sortedDirection","getIsSorted","createElement","align","trigger","iconPosition","style","padding","WithSeparators","Object","entries","map","direction","info","key","prefix","suffix","onSelect","event","preventDefault","resetSorting","setSorting","id","getToggleVisibilityHandler","children","toArray","filter","Boolean","child","i","ViewList","view","onChangeView","fields","actions","data","isLoading","paginationInfo","columns","_columns","field","render","getValue","cell","props","item","row","original","accessorFn","length","push","enableHiding","columnVisibility","hiddenFields","reduce","accumulator","fieldId","manualSorting","manualFiltering","manualPagination","enableRowSelection","state","sorting","sort","globalFilter","search","pagination","pageIndex","page","pageSize","perPage","onSortingChange","sortingUpdater","currentView","onColumnVisibilityChange","columnVisibilityUpdater","value","onGlobalFilterChange","onPaginationChange","paginationUpdater","pageCount","totalPages","rows","getRowModel","hasRows","className","getHeaderGroups","headerGroup","headers","colSpan","width","undefined","maxWidth","getVisibleCells"],"sources":["@wordpress/edit-site/src/components/dataviews/view-list.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tgetCoreRowModel,\n\tgetFilteredRowModel,\n\tgetSortedRowModel,\n\tgetPaginationRowModel,\n\tuseReactTable,\n\tflexRender,\n} from '@tanstack/react-table';\n\n/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport {\n\tchevronDown,\n\tchevronUp,\n\tunseen,\n\tcheck,\n\tarrowUp,\n\tarrowDown,\n} from '@wordpress/icons';\nimport {\n\tButton,\n\tIcon,\n\tprivateApis as componentsPrivateApis,\n\tVisuallyHidden,\n} from '@wordpress/components';\nimport { useMemo, Children, Fragment } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\nimport FieldActions from './field-actions';\n\nconst {\n\tDropdownMenuV2,\n\tDropdownMenuGroupV2,\n\tDropdownMenuItemV2,\n\tDropdownMenuSeparatorV2,\n} = unlock( componentsPrivateApis );\n\nconst EMPTY_OBJECT = {};\nconst sortingItemsInfo = {\n\tasc: { icon: arrowUp, label: __( 'Sort ascending' ) },\n\tdesc: { icon: arrowDown, label: __( 'Sort descending' ) },\n};\nconst sortIcons = { asc: chevronUp, desc: chevronDown };\nfunction HeaderMenu( { dataView, header } ) {\n\tif ( header.isPlaceholder ) {\n\t\treturn null;\n\t}\n\tconst text = flexRender(\n\t\theader.column.columnDef.header,\n\t\theader.getContext()\n\t);\n\tconst isSortable = !! header.column.getCanSort();\n\tconst isHidable = !! header.column.getCanHide();\n\tif ( ! isSortable && ! isHidable ) {\n\t\treturn text;\n\t}\n\tconst sortedDirection = header.column.getIsSorted();\n\treturn (\n\t\t<DropdownMenuV2\n\t\t\talign=\"start\"\n\t\t\ttrigger={\n\t\t\t\t<Button\n\t\t\t\t\ticon={ sortIcons[ header.column.getIsSorted() ] }\n\t\t\t\t\ticonPosition=\"right\"\n\t\t\t\t\ttext={ text }\n\t\t\t\t\tstyle={ { padding: 0 } }\n\t\t\t\t/>\n\t\t\t}\n\t\t>\n\t\t\t<WithSeparators>\n\t\t\t\t{ isSortable && (\n\t\t\t\t\t<DropdownMenuGroupV2>\n\t\t\t\t\t\t{ Object.entries( sortingItemsInfo ).map(\n\t\t\t\t\t\t\t( [ direction, info ] ) => (\n\t\t\t\t\t\t\t\t<DropdownMenuItemV2\n\t\t\t\t\t\t\t\t\tkey={ direction }\n\t\t\t\t\t\t\t\t\tprefix={ <Icon icon={ info.icon } /> }\n\t\t\t\t\t\t\t\t\tsuffix={\n\t\t\t\t\t\t\t\t\t\tsortedDirection === direction && (\n\t\t\t\t\t\t\t\t\t\t\t<Icon icon={ check } />\n\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tonSelect={ ( event ) => {\n\t\t\t\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\t\t\t\tif ( sortedDirection === direction ) {\n\t\t\t\t\t\t\t\t\t\t\tdataView.resetSorting();\n\t\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t\tdataView.setSorting( [\n\t\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\t\tid: header.column.id,\n\t\t\t\t\t\t\t\t\t\t\t\t\tdesc: direction === 'desc',\n\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t] );\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ info.label }\n\t\t\t\t\t\t\t\t</DropdownMenuItemV2>\n\t\t\t\t\t\t\t)\n\t\t\t\t\t\t) }\n\t\t\t\t\t</DropdownMenuGroupV2>\n\t\t\t\t) }\n\t\t\t\t{ isHidable && (\n\t\t\t\t\t<DropdownMenuItemV2\n\t\t\t\t\t\tprefix={ <Icon icon={ unseen } /> }\n\t\t\t\t\t\tonSelect={ ( event ) => {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\theader.column.getToggleVisibilityHandler()( event );\n\t\t\t\t\t\t} }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ __( 'Hide' ) }\n\t\t\t\t\t</DropdownMenuItemV2>\n\t\t\t\t) }\n\t\t\t</WithSeparators>\n\t\t</DropdownMenuV2>\n\t);\n}\n\nfunction WithSeparators( { children } ) {\n\treturn Children.toArray( children )\n\t\t.filter( Boolean )\n\t\t.map( ( child, i ) => (\n\t\t\t<Fragment key={ i }>\n\t\t\t\t{ i > 0 && <DropdownMenuSeparatorV2 /> }\n\t\t\t\t{ child }\n\t\t\t</Fragment>\n\t\t) );\n}\n\nfunction ViewList( {\n\tview,\n\tonChangeView,\n\tfields,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst columns = useMemo( () => {\n\t\tconst _columns = fields.map( ( field ) => {\n\t\t\tconst { render, getValue, ...column } = field;\n\t\t\tcolumn.cell = ( props ) =>\n\t\t\t\trender( { item: props.row.original, view } );\n\t\t\tif ( getValue ) {\n\t\t\t\tcolumn.accessorFn = ( item ) => getValue( { item } );\n\t\t\t}\n\t\t\treturn column;\n\t\t} );\n\t\tif ( actions?.length ) {\n\t\t\t_columns.push( {\n\t\t\t\theader: <VisuallyHidden>{ __( 'Actions' ) }</VisuallyHidden>,\n\t\t\t\tid: 'actions',\n\t\t\t\tcell: ( props ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<FieldActions\n\t\t\t\t\t\t\titem={ props.row.original }\n\t\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t\t/>\n\t\t\t\t\t);\n\t\t\t\t},\n\t\t\t\tenableHiding: false,\n\t\t\t} );\n\t\t}\n\n\t\treturn _columns;\n\t}, [ fields, actions, view ] );\n\n\tconst columnVisibility = useMemo( () => {\n\t\tif ( ! view.hiddenFields?.length ) {\n\t\t\treturn;\n\t\t}\n\t\treturn view.hiddenFields.reduce(\n\t\t\t( accumulator, fieldId ) => ( {\n\t\t\t\t...accumulator,\n\t\t\t\t[ fieldId ]: false,\n\t\t\t} ),\n\t\t\t{}\n\t\t);\n\t}, [ view.hiddenFields ] );\n\n\tconst dataView = useReactTable( {\n\t\tdata,\n\t\tcolumns,\n\t\tmanualSorting: true,\n\t\tmanualFiltering: true,\n\t\tmanualPagination: true,\n\t\tenableRowSelection: true,\n\t\tstate: {\n\t\t\tsorting: view.sort\n\t\t\t\t? [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tid: view.sort.field,\n\t\t\t\t\t\t\tdesc: view.sort.direction === 'desc',\n\t\t\t\t\t\t},\n\t\t\t\t ]\n\t\t\t\t: [],\n\t\t\tglobalFilter: view.search,\n\t\t\tpagination: {\n\t\t\t\tpageIndex: view.page,\n\t\t\t\tpageSize: view.perPage,\n\t\t\t},\n\t\t\tcolumnVisibility: columnVisibility ?? EMPTY_OBJECT,\n\t\t},\n\t\tonSortingChange: ( sortingUpdater ) => {\n\t\t\tonChangeView( ( currentView ) => {\n\t\t\t\tconst sort =\n\t\t\t\t\ttypeof sortingUpdater === 'function'\n\t\t\t\t\t\t? sortingUpdater(\n\t\t\t\t\t\t\t\tcurrentView.sort\n\t\t\t\t\t\t\t\t\t? [\n\t\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\t\tid: currentView.sort.field,\n\t\t\t\t\t\t\t\t\t\t\t\tdesc:\n\t\t\t\t\t\t\t\t\t\t\t\t\tcurrentView.sort\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t.direction === 'desc',\n\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t ]\n\t\t\t\t\t\t\t\t\t: []\n\t\t\t\t\t\t )\n\t\t\t\t\t\t: sortingUpdater;\n\t\t\t\tif ( ! sort.length ) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\t...currentView,\n\t\t\t\t\t\tsort: {},\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\tconst [ { id, desc } ] = sort;\n\t\t\t\treturn {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tsort: { field: id, direction: desc ? 'desc' : 'asc' },\n\t\t\t\t};\n\t\t\t} );\n\t\t},\n\t\tonColumnVisibilityChange: ( columnVisibilityUpdater ) => {\n\t\t\tonChangeView( ( currentView ) => {\n\t\t\t\tconst hiddenFields = Object.entries(\n\t\t\t\t\tcolumnVisibilityUpdater()\n\t\t\t\t).reduce(\n\t\t\t\t\t( accumulator, [ fieldId, value ] ) => {\n\t\t\t\t\t\tif ( value ) {\n\t\t\t\t\t\t\treturn accumulator.filter(\n\t\t\t\t\t\t\t\t( id ) => id !== fieldId\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}\n\t\t\t\t\t\treturn [ ...accumulator, fieldId ];\n\t\t\t\t\t},\n\t\t\t\t\t[ ...( currentView.hiddenFields || [] ) ]\n\t\t\t\t);\n\t\t\t\treturn {\n\t\t\t\t\t...currentView,\n\t\t\t\t\thiddenFields,\n\t\t\t\t};\n\t\t\t} );\n\t\t},\n\t\tonGlobalFilterChange: ( value ) => {\n\t\t\tonChangeView( { ...view, search: value, page: 0 } );\n\t\t},\n\t\tonPaginationChange: ( paginationUpdater ) => {\n\t\t\tonChangeView( ( currentView ) => {\n\t\t\t\tconst { pageIndex, pageSize } = paginationUpdater( {\n\t\t\t\t\tpageIndex: currentView.page,\n\t\t\t\t\tpageSize: currentView.perPage,\n\t\t\t\t} );\n\t\t\t\treturn { ...view, page: pageIndex, perPage: pageSize };\n\t\t\t} );\n\t\t},\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\tgetFilteredRowModel: getFilteredRowModel(),\n\t\tgetSortedRowModel: getSortedRowModel(),\n\t\tgetPaginationRowModel: getPaginationRowModel(),\n\t\tpageCount: paginationInfo.totalPages,\n\t} );\n\n\tconst { rows } = dataView.getRowModel();\n\tconst hasRows = !! rows?.length;\n\tif ( isLoading ) {\n\t\t// TODO:Add spinner or progress bar..\n\t\treturn <h3>{ __( 'Loading' ) }</h3>;\n\t}\n\treturn (\n\t\t<div className=\"dataviews-list-view-wrapper\">\n\t\t\t{ hasRows && (\n\t\t\t\t<table className=\"dataviews-list-view\">\n\t\t\t\t\t<thead>\n\t\t\t\t\t\t{ dataView.getHeaderGroups().map( ( headerGroup ) => (\n\t\t\t\t\t\t\t<tr key={ headerGroup.id }>\n\t\t\t\t\t\t\t\t{ headerGroup.headers.map( ( header ) => (\n\t\t\t\t\t\t\t\t\t<th\n\t\t\t\t\t\t\t\t\t\tkey={ header.id }\n\t\t\t\t\t\t\t\t\t\tcolSpan={ header.colSpan }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t<HeaderMenu\n\t\t\t\t\t\t\t\t\t\t\tdataView={ dataView }\n\t\t\t\t\t\t\t\t\t\t\theader={ header }\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t</th>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</thead>\n\t\t\t\t\t<tbody>\n\t\t\t\t\t\t{ rows.map( ( row ) => (\n\t\t\t\t\t\t\t<tr key={ row.id }>\n\t\t\t\t\t\t\t\t{ row.getVisibleCells().map( ( cell ) => (\n\t\t\t\t\t\t\t\t\t<td\n\t\t\t\t\t\t\t\t\t\tkey={ cell.id }\n\t\t\t\t\t\t\t\t\t\tstyle={ {\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.width ||\n\t\t\t\t\t\t\t\t\t\t\t\tundefined,\n\t\t\t\t\t\t\t\t\t\t\tmaxWidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef\n\t\t\t\t\t\t\t\t\t\t\t\t\t.maxWidth || undefined,\n\t\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{ flexRender(\n\t\t\t\t\t\t\t\t\t\t\tcell.column.columnDef.cell,\n\t\t\t\t\t\t\t\t\t\t\tcell.getContext()\n\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t</td>\n\t\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t\t</tr>\n\t\t\t\t\t\t) ) }\n\t\t\t\t\t</tbody>\n\t\t\t\t</table>\n\t\t\t) }\n\t\t\t{ ! hasRows && <p>{ __( 'no results' ) }</p> }\n\t\t</div>\n\t);\n}\n\nexport default ViewList;\n"],"mappings":"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"}
|
|
@@ -36,6 +36,7 @@ import CanvasLoader from '../canvas-loader';
|
|
|
36
36
|
import { unlock } from '../../lock-unlock';
|
|
37
37
|
import useEditedEntityRecord from '../use-edited-entity-record';
|
|
38
38
|
import { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';
|
|
39
|
+
import PatternModal from '../pattern-modal';
|
|
39
40
|
import { POST_TYPE_LABELS, TEMPLATE_POST_TYPE } from '../../utils/constants';
|
|
40
41
|
const {
|
|
41
42
|
BlockRemovalWarningModal
|
|
@@ -179,7 +180,7 @@ export default function Editor({
|
|
|
179
180
|
notices: createElement(EditorSnackbars, null),
|
|
180
181
|
content: createElement(Fragment, null, createElement(GlobalStylesRenderer, null), isEditMode && createElement(EditorNotices, null), showVisualEditor && editedPost && createElement(Fragment, null, createElement(BlockEditor, null), createElement(BlockRemovalWarningModal, {
|
|
181
182
|
rules: blockRemovalRules
|
|
182
|
-
})), editorMode === 'text' && editedPost && isEditMode && createElement(CodeEditor, null), hasLoadedPost && !editedPost && createElement(Notice, {
|
|
183
|
+
}), createElement(PatternModal, null)), editorMode === 'text' && editedPost && isEditMode && createElement(CodeEditor, null), hasLoadedPost && !editedPost && createElement(Notice, {
|
|
183
184
|
status: "warning",
|
|
184
185
|
isDismissible: false
|
|
185
186
|
}, __("You attempted to edit an item that doesn't exist. Perhaps it was deleted?")), isEditMode && createElement(KeyboardShortcutsEditMode, null)),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["classnames","useMemo","useSelect","useDispatch","Notice","useInstanceId","EntityProvider","store","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","privateApis","blockEditorPrivateApis","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasLoader","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","POST_TYPE_LABELS","TEMPLATE_POST_TYPE","BlockRemovalWarningModal","interfaceLabels","body","sidebar","actions","footer","blockRemovalRules","Editor","listViewToggleElement","isLoading","record","editedPost","getTitle","isLoaded","hasLoadedPost","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","hasPageContentFocus","select","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","_hasPageContentFocus","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreadcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","postType","postId","nonPostFields","queryContext","page","newQueryContext","title","_POST_TYPE_LABELS$edi","loadingProgressId","contentProps","undefined","createElement","Fragment","kind","value","isDistractionFree","enableRegionNavigation","className","notices","content","rules","status","isDismissible","secondarySidebar","Slot","scope","rootLabelText","labels"],"sources":["@wordpress/edit-site/src/components/editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { EntityProvider } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport useTitle from '../routes/use-title';\nimport CanvasLoader from '../canvas-loader';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\nimport { POST_TYPE_LABELS, TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { BlockRemovalWarningModal } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\n// Prevent accidental removal of certain blocks, asking the user for\n// confirmation.\nconst blockRemovalRules = {\n\t'core/query': __( 'Query Loop displays a list of posts or pages.' ),\n\t'core/post-content': __(\n\t\t'Post Content displays the content of a post or page.'\n\t),\n\t'core/post-template': __(\n\t\t'Post Template displays each post or page in a Query Loop.'\n\t),\n};\n\nexport default function Editor( { listViewToggleElement, isLoading } ) {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t\thasPageContentFocus,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreadcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo( () => {\n\t\tconst { postType, postId, ...nonPostFields } = context ?? {};\n\t\treturn {\n\t\t\t...( hasPageContentFocus ? context : nonPostFields ),\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t};\n\t}, [ hasPageContentFocus, context, setEditedPostContext ] );\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\tPOST_TYPE_LABELS[ editedPostType ] ??\n\t\t\t\tPOST_TYPE_LABELS[ TEMPLATE_POST_TYPE ]\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URLQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\tconst loadingProgressId = useInstanceId(\n\t\tCanvasLoader,\n\t\t'edit-site-editor__loading-progress'\n\t);\n\n\tconst contentProps = isLoading\n\t\t? {\n\t\t\t\t'aria-busy': 'true',\n\t\t\t\t'aria-describedby': loadingProgressId,\n\t\t }\n\t\t: undefined;\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasLoader id={ loadingProgressId } /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tisDistractionFree={ true }\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-editor__interface-skeleton',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t\t\t\t\t\t\t'is-loading': isLoading,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t\t\t<BlockRemovalWarningModal\n\t\t\t\t\t\t\t\t\t\t\t\trules={ blockRemovalRules }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontentProps={ contentProps }\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar\n\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement={\n\t\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreadcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={\n\t\t\t\t\t\t\t\t\t\t\thasPageContentFocus\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Page' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Template' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["classnames","useMemo","useSelect","useDispatch","Notice","useInstanceId","EntityProvider","store","preferencesStore","BlockContextProvider","BlockBreadcrumb","blockEditorStore","privateApis","blockEditorPrivateApis","InterfaceSkeleton","ComplementaryArea","interfaceStore","EditorNotices","EditorSnackbars","__","sprintf","SidebarComplementaryAreaFills","BlockEditor","CodeEditor","KeyboardShortcutsEditMode","InserterSidebar","ListViewSidebar","WelcomeGuide","StartTemplateOptions","editSiteStore","GlobalStylesRenderer","useTitle","CanvasLoader","unlock","useEditedEntityRecord","SidebarFixedBottomSlot","PatternModal","POST_TYPE_LABELS","TEMPLATE_POST_TYPE","BlockRemovalWarningModal","interfaceLabels","body","sidebar","actions","footer","blockRemovalRules","Editor","listViewToggleElement","isLoading","record","editedPost","getTitle","isLoaded","hasLoadedPost","id","editedPostId","type","editedPostType","context","editorMode","canvasMode","blockEditorMode","isRightSidebarOpen","isInserterOpen","isListViewOpen","showIconLabels","showBlockBreadcrumbs","hasPageContentFocus","select","getEditedPostContext","getEditorMode","getCanvasMode","isInserterOpened","isListViewOpened","_hasPageContentFocus","__unstableGetEditorMode","getActiveComplementaryArea","name","get","setEditedPostContext","isViewMode","isEditMode","showVisualEditor","shouldShowBlockBreadcrumbs","shouldShowInserter","shouldShowListView","secondarySidebarLabel","blockContext","postType","postId","nonPostFields","queryContext","page","newQueryContext","title","_POST_TYPE_LABELS$edi","loadingProgressId","contentProps","undefined","createElement","Fragment","kind","value","isDistractionFree","enableRegionNavigation","className","notices","content","rules","status","isDismissible","secondarySidebar","Slot","scope","rootLabelText","labels"],"sources":["@wordpress/edit-site/src/components/editor/index.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useMemo } from '@wordpress/element';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { Notice } from '@wordpress/components';\nimport { useInstanceId } from '@wordpress/compose';\nimport { EntityProvider } from '@wordpress/core-data';\nimport { store as preferencesStore } from '@wordpress/preferences';\nimport {\n\tBlockContextProvider,\n\tBlockBreadcrumb,\n\tstore as blockEditorStore,\n\tprivateApis as blockEditorPrivateApis,\n} from '@wordpress/block-editor';\nimport {\n\tInterfaceSkeleton,\n\tComplementaryArea,\n\tstore as interfaceStore,\n} from '@wordpress/interface';\nimport { EditorNotices, EditorSnackbars } from '@wordpress/editor';\nimport { __, sprintf } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport { SidebarComplementaryAreaFills } from '../sidebar-edit-mode';\nimport BlockEditor from '../block-editor';\nimport CodeEditor from '../code-editor';\nimport KeyboardShortcutsEditMode from '../keyboard-shortcuts/edit-mode';\nimport InserterSidebar from '../secondary-sidebar/inserter-sidebar';\nimport ListViewSidebar from '../secondary-sidebar/list-view-sidebar';\nimport WelcomeGuide from '../welcome-guide';\nimport StartTemplateOptions from '../start-template-options';\nimport { store as editSiteStore } from '../../store';\nimport { GlobalStylesRenderer } from '../global-styles-renderer';\nimport useTitle from '../routes/use-title';\nimport CanvasLoader from '../canvas-loader';\nimport { unlock } from '../../lock-unlock';\nimport useEditedEntityRecord from '../use-edited-entity-record';\nimport { SidebarFixedBottomSlot } from '../sidebar-edit-mode/sidebar-fixed-bottom';\nimport PatternModal from '../pattern-modal';\nimport { POST_TYPE_LABELS, TEMPLATE_POST_TYPE } from '../../utils/constants';\n\nconst { BlockRemovalWarningModal } = unlock( blockEditorPrivateApis );\n\nconst interfaceLabels = {\n\t/* translators: accessibility text for the editor content landmark region. */\n\tbody: __( 'Editor content' ),\n\t/* translators: accessibility text for the editor settings landmark region. */\n\tsidebar: __( 'Editor settings' ),\n\t/* translators: accessibility text for the editor publish landmark region. */\n\tactions: __( 'Editor publish' ),\n\t/* translators: accessibility text for the editor footer landmark region. */\n\tfooter: __( 'Editor footer' ),\n};\n\n// Prevent accidental removal of certain blocks, asking the user for\n// confirmation.\nconst blockRemovalRules = {\n\t'core/query': __( 'Query Loop displays a list of posts or pages.' ),\n\t'core/post-content': __(\n\t\t'Post Content displays the content of a post or page.'\n\t),\n\t'core/post-template': __(\n\t\t'Post Template displays each post or page in a Query Loop.'\n\t),\n};\n\nexport default function Editor( { listViewToggleElement, isLoading } ) {\n\tconst {\n\t\trecord: editedPost,\n\t\tgetTitle,\n\t\tisLoaded: hasLoadedPost,\n\t} = useEditedEntityRecord();\n\n\tconst { id: editedPostId, type: editedPostType } = editedPost;\n\n\tconst {\n\t\tcontext,\n\t\teditorMode,\n\t\tcanvasMode,\n\t\tblockEditorMode,\n\t\tisRightSidebarOpen,\n\t\tisInserterOpen,\n\t\tisListViewOpen,\n\t\tshowIconLabels,\n\t\tshowBlockBreadcrumbs,\n\t\thasPageContentFocus,\n\t} = useSelect( ( select ) => {\n\t\tconst {\n\t\t\tgetEditedPostContext,\n\t\t\tgetEditorMode,\n\t\t\tgetCanvasMode,\n\t\t\tisInserterOpened,\n\t\t\tisListViewOpened,\n\t\t\thasPageContentFocus: _hasPageContentFocus,\n\t\t} = unlock( select( editSiteStore ) );\n\t\tconst { __unstableGetEditorMode } = select( blockEditorStore );\n\t\tconst { getActiveComplementaryArea } = select( interfaceStore );\n\n\t\t// The currently selected entity to display.\n\t\t// Typically template or template part in the site editor.\n\t\treturn {\n\t\t\tcontext: getEditedPostContext(),\n\t\t\teditorMode: getEditorMode(),\n\t\t\tcanvasMode: getCanvasMode(),\n\t\t\tblockEditorMode: __unstableGetEditorMode(),\n\t\t\tisInserterOpen: isInserterOpened(),\n\t\t\tisListViewOpen: isListViewOpened(),\n\t\t\tisRightSidebarOpen: getActiveComplementaryArea(\n\t\t\t\teditSiteStore.name\n\t\t\t),\n\t\t\tshowIconLabels: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showIconLabels'\n\t\t\t),\n\t\t\tshowBlockBreadcrumbs: select( preferencesStore ).get(\n\t\t\t\t'core/edit-site',\n\t\t\t\t'showBlockBreadcrumbs'\n\t\t\t),\n\t\t\thasPageContentFocus: _hasPageContentFocus(),\n\t\t};\n\t}, [] );\n\tconst { setEditedPostContext } = useDispatch( editSiteStore );\n\n\tconst isViewMode = canvasMode === 'view';\n\tconst isEditMode = canvasMode === 'edit';\n\tconst showVisualEditor = isViewMode || editorMode === 'visual';\n\tconst shouldShowBlockBreadcrumbs =\n\t\tshowBlockBreadcrumbs &&\n\t\tisEditMode &&\n\t\tshowVisualEditor &&\n\t\tblockEditorMode !== 'zoom-out';\n\tconst shouldShowInserter = isEditMode && showVisualEditor && isInserterOpen;\n\tconst shouldShowListView = isEditMode && showVisualEditor && isListViewOpen;\n\tconst secondarySidebarLabel = isListViewOpen\n\t\t? __( 'List View' )\n\t\t: __( 'Block Library' );\n\tconst blockContext = useMemo( () => {\n\t\tconst { postType, postId, ...nonPostFields } = context ?? {};\n\t\treturn {\n\t\t\t...( hasPageContentFocus ? context : nonPostFields ),\n\t\t\tqueryContext: [\n\t\t\t\tcontext?.queryContext || { page: 1 },\n\t\t\t\t( newQueryContext ) =>\n\t\t\t\t\tsetEditedPostContext( {\n\t\t\t\t\t\t...context,\n\t\t\t\t\t\tqueryContext: {\n\t\t\t\t\t\t\t...context?.queryContext,\n\t\t\t\t\t\t\t...newQueryContext,\n\t\t\t\t\t\t},\n\t\t\t\t\t} ),\n\t\t\t],\n\t\t};\n\t}, [ hasPageContentFocus, context, setEditedPostContext ] );\n\n\tlet title;\n\tif ( hasLoadedPost ) {\n\t\ttitle = sprintf(\n\t\t\t// translators: A breadcrumb trail in browser tab. %1$s: title of template being edited, %2$s: type of template (Template or Template Part).\n\t\t\t__( '%1$s ‹ %2$s ‹ Editor' ),\n\t\t\tgetTitle(),\n\t\t\tPOST_TYPE_LABELS[ editedPostType ] ??\n\t\t\t\tPOST_TYPE_LABELS[ TEMPLATE_POST_TYPE ]\n\t\t);\n\t}\n\n\t// Only announce the title once the editor is ready to prevent \"Replace\"\n\t// action in <URLQueryController> from double-announcing.\n\tuseTitle( hasLoadedPost && title );\n\n\tconst loadingProgressId = useInstanceId(\n\t\tCanvasLoader,\n\t\t'edit-site-editor__loading-progress'\n\t);\n\n\tconst contentProps = isLoading\n\t\t? {\n\t\t\t\t'aria-busy': 'true',\n\t\t\t\t'aria-describedby': loadingProgressId,\n\t\t }\n\t\t: undefined;\n\n\treturn (\n\t\t<>\n\t\t\t{ isLoading ? <CanvasLoader id={ loadingProgressId } /> : null }\n\t\t\t{ isEditMode && <WelcomeGuide /> }\n\t\t\t<EntityProvider kind=\"root\" type=\"site\">\n\t\t\t\t<EntityProvider\n\t\t\t\t\tkind=\"postType\"\n\t\t\t\t\ttype={ editedPostType }\n\t\t\t\t\tid={ editedPostId }\n\t\t\t\t>\n\t\t\t\t\t<BlockContextProvider value={ blockContext }>\n\t\t\t\t\t\t<SidebarComplementaryAreaFills />\n\t\t\t\t\t\t{ isEditMode && <StartTemplateOptions /> }\n\t\t\t\t\t\t<InterfaceSkeleton\n\t\t\t\t\t\t\tisDistractionFree={ true }\n\t\t\t\t\t\t\tenableRegionNavigation={ false }\n\t\t\t\t\t\t\tclassName={ classnames(\n\t\t\t\t\t\t\t\t'edit-site-editor__interface-skeleton',\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t'show-icon-labels': showIconLabels,\n\t\t\t\t\t\t\t\t\t'is-loading': isLoading,\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\tnotices={ <EditorSnackbars /> }\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t<GlobalStylesRenderer />\n\t\t\t\t\t\t\t\t\t{ isEditMode && <EditorNotices /> }\n\t\t\t\t\t\t\t\t\t{ showVisualEditor && editedPost && (\n\t\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t\t<BlockEditor />\n\t\t\t\t\t\t\t\t\t\t\t<BlockRemovalWarningModal\n\t\t\t\t\t\t\t\t\t\t\t\trules={ blockRemovalRules }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t<PatternModal />\n\t\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ editorMode === 'text' &&\n\t\t\t\t\t\t\t\t\t\teditedPost &&\n\t\t\t\t\t\t\t\t\t\tisEditMode && <CodeEditor /> }\n\t\t\t\t\t\t\t\t\t{ hasLoadedPost && ! editedPost && (\n\t\t\t\t\t\t\t\t\t\t<Notice\n\t\t\t\t\t\t\t\t\t\t\tstatus=\"warning\"\n\t\t\t\t\t\t\t\t\t\t\tisDismissible={ false }\n\t\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t\t\t\t\t\t\"You attempted to edit an item that doesn't exist. Perhaps it was deleted?\"\n\t\t\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t\t</Notice>\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t\t{ isEditMode && (\n\t\t\t\t\t\t\t\t\t\t<KeyboardShortcutsEditMode />\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tcontentProps={ contentProps }\n\t\t\t\t\t\t\tsecondarySidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\t( ( shouldShowInserter && (\n\t\t\t\t\t\t\t\t\t<InserterSidebar />\n\t\t\t\t\t\t\t\t) ) ||\n\t\t\t\t\t\t\t\t\t( shouldShowListView && (\n\t\t\t\t\t\t\t\t\t\t<ListViewSidebar\n\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement={\n\t\t\t\t\t\t\t\t\t\t\t\tlistViewToggleElement\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t) ) )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tsidebar={\n\t\t\t\t\t\t\t\tisEditMode &&\n\t\t\t\t\t\t\t\tisRightSidebarOpen && (\n\t\t\t\t\t\t\t\t\t<>\n\t\t\t\t\t\t\t\t\t\t<ComplementaryArea.Slot scope=\"core/edit-site\" />\n\t\t\t\t\t\t\t\t\t\t<SidebarFixedBottomSlot />\n\t\t\t\t\t\t\t\t\t</>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tfooter={\n\t\t\t\t\t\t\t\tshouldShowBlockBreadcrumbs && (\n\t\t\t\t\t\t\t\t\t<BlockBreadcrumb\n\t\t\t\t\t\t\t\t\t\trootLabelText={\n\t\t\t\t\t\t\t\t\t\t\thasPageContentFocus\n\t\t\t\t\t\t\t\t\t\t\t\t? __( 'Page' )\n\t\t\t\t\t\t\t\t\t\t\t\t: __( 'Template' )\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tlabels={ {\n\t\t\t\t\t\t\t\t...interfaceLabels,\n\t\t\t\t\t\t\t\tsecondarySidebar: secondarySidebarLabel,\n\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockContextProvider>\n\t\t\t\t</EntityProvider>\n\t\t\t</EntityProvider>\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
@@ -250,16 +250,22 @@ function FontLibraryProvider({
|
|
|
250
250
|
setFontCollections(response);
|
|
251
251
|
};
|
|
252
252
|
const getFontCollection = async id => {
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
253
|
+
try {
|
|
254
|
+
const hasData = !!collections.find(collection => collection.id === id)?.data;
|
|
255
|
+
if (hasData) return;
|
|
256
|
+
const response = await fetchFontCollection(id);
|
|
257
|
+
const updatedCollections = collections.map(collection => collection.id === id ? {
|
|
258
|
+
...collection,
|
|
259
|
+
data: {
|
|
260
|
+
...response?.data
|
|
261
|
+
}
|
|
262
|
+
} : collection);
|
|
263
|
+
setFontCollections(updatedCollections);
|
|
264
|
+
} catch (e) {
|
|
265
|
+
// eslint-disable-next-line no-console
|
|
266
|
+
console.error(e);
|
|
267
|
+
throw e;
|
|
268
|
+
}
|
|
263
269
|
};
|
|
264
270
|
useEffect(() => {
|
|
265
271
|
getFontCollections();
|