@wordpress/edit-site 5.23.0 → 5.24.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/actions/index.js +56 -38
- package/build/components/actions/index.js.map +1 -1
- package/build/components/block-editor/site-editor-canvas.js +7 -2
- package/build/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build/components/dataviews/add-filter.js +21 -20
- package/build/components/dataviews/add-filter.js.map +1 -1
- package/build/components/dataviews/constants.js +14 -0
- package/build/components/dataviews/constants.js.map +1 -0
- package/build/components/dataviews/dataviews.js +9 -7
- package/build/components/dataviews/dataviews.js.map +1 -1
- package/build/components/dataviews/filter-summary.js +62 -0
- package/build/components/dataviews/filter-summary.js.map +1 -0
- package/build/components/dataviews/filters.js +15 -30
- package/build/components/dataviews/filters.js.map +1 -1
- package/build/components/dataviews/item-actions.js +84 -30
- package/build/components/dataviews/item-actions.js.map +1 -1
- package/build/components/dataviews/pagination.js +4 -0
- package/build/components/dataviews/pagination.js.map +1 -1
- package/build/components/dataviews/view-actions.js +24 -24
- package/build/components/dataviews/view-actions.js.map +1 -1
- package/build/components/dataviews/view-grid.js +48 -25
- package/build/components/dataviews/view-grid.js.map +1 -1
- package/build/components/dataviews/view-list.js +28 -33
- package/build/components/dataviews/view-list.js.map +1 -1
- package/build/components/editor/index.js +23 -27
- package/build/components/editor/index.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/build/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
- package/build/components/global-styles/font-library-modal/utils/index.js +15 -2
- package/build/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build/components/global-styles/header.js +4 -2
- package/build/components/global-styles/header.js.map +1 -1
- package/build/components/global-styles/screen-block-list.js +22 -16
- package/build/components/global-styles/screen-block-list.js.map +1 -1
- package/build/components/global-styles/screen-revisions/index.js +26 -5
- package/build/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build/components/global-styles/screen-revisions/revisions-buttons.js +52 -24
- package/build/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
- package/build/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build/components/global-styles/ui.js +28 -36
- package/build/components/global-styles/ui.js.map +1 -1
- package/build/components/header-edit-mode/document-actions/index.js +21 -16
- package/build/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build/components/header-edit-mode/index.js +2 -1
- package/build/components/header-edit-mode/index.js.map +1 -1
- package/build/components/header-edit-mode/more-menu/index.js +1 -1
- package/build/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build/components/list/added-by.js +43 -54
- package/build/components/list/added-by.js.map +1 -1
- package/build/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +9 -8
- package/build/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
- package/build/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/build/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
- package/build/components/page-content-focus-notifications/index.js +22 -0
- package/build/components/page-content-focus-notifications/index.js.map +1 -0
- package/build/components/page-pages/index.js +9 -15
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/use-patterns.js +1 -1
- package/build/components/page-patterns/use-patterns.js.map +1 -1
- package/build/components/page-templates/dataviews-templates.js +166 -51
- package/build/components/page-templates/dataviews-templates.js.map +1 -1
- package/build/components/preferences-modal/index.js +1 -1
- package/build/components/preferences-modal/index.js.map +1 -1
- package/build/components/save-button/index.js +9 -6
- package/build/components/save-button/index.js.map +1 -1
- package/build/components/save-hub/index.js +14 -0
- package/build/components/save-hub/index.js.map +1 -1
- package/build/components/sidebar-dataviews/custom-dataviews-list.js +3 -1
- package/build/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build/components/sidebar-dataviews/default-views.js +7 -2
- package/build/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build/components/sidebar-edit-mode/index.js +6 -5
- package/build/components/sidebar-edit-mode/index.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js +15 -26
- package/build/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/hooks.js +22 -8
- package/build/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-status.js +8 -5
- package/build/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js +4 -8
- package/build/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js +2 -2
- package/build/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
- package/build/components/sidebar-edit-mode/settings-header/index.js +10 -6
- package/build/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build/components/sidebar-navigation-screen-page/index.js +23 -4
- package/build/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build/components/style-book/index.js +22 -12
- package/build/components/style-book/index.js.map +1 -1
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js +41 -9
- package/build/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build/components/welcome-guide/page.js +2 -2
- package/build/components/welcome-guide/page.js.map +1 -1
- package/build/components/welcome-guide/template.js +6 -3
- package/build/components/welcome-guide/template.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +24 -14
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/store/actions.js +4 -1
- package/build/store/actions.js.map +1 -1
- package/build/store/private-actions.js +2 -27
- package/build/store/private-actions.js.map +1 -1
- package/build/store/private-selectors.js +0 -23
- package/build/store/private-selectors.js.map +1 -1
- package/build/store/reducer.js +1 -40
- package/build/store/reducer.js.map +1 -1
- package/build/store/selectors.js +8 -4
- package/build/store/selectors.js.map +1 -1
- package/build/utils/constants.js +1 -12
- package/build/utils/constants.js.map +1 -1
- package/build-module/components/actions/index.js +55 -36
- package/build-module/components/actions/index.js.map +1 -1
- package/build-module/components/block-editor/site-editor-canvas.js +7 -2
- package/build-module/components/block-editor/site-editor-canvas.js.map +1 -1
- package/build-module/components/dataviews/add-filter.js +21 -20
- package/build-module/components/dataviews/add-filter.js.map +1 -1
- package/build-module/components/dataviews/constants.js +6 -0
- package/build-module/components/dataviews/constants.js.map +1 -0
- package/build-module/components/dataviews/dataviews.js +9 -7
- package/build-module/components/dataviews/dataviews.js.map +1 -1
- package/build-module/components/dataviews/filter-summary.js +55 -0
- package/build-module/components/dataviews/filter-summary.js.map +1 -0
- package/build-module/components/dataviews/filters.js +15 -28
- package/build-module/components/dataviews/filters.js.map +1 -1
- package/build-module/components/dataviews/item-actions.js +84 -30
- package/build-module/components/dataviews/item-actions.js.map +1 -1
- package/build-module/components/dataviews/pagination.js +4 -0
- package/build-module/components/dataviews/pagination.js.map +1 -1
- package/build-module/components/dataviews/view-actions.js +24 -24
- package/build-module/components/dataviews/view-actions.js.map +1 -1
- package/build-module/components/dataviews/view-grid.js +49 -26
- package/build-module/components/dataviews/view-grid.js.map +1 -1
- package/build-module/components/dataviews/view-list.js +28 -33
- package/build-module/components/dataviews/view-list.js.map +1 -1
- package/build-module/components/editor/index.js +26 -30
- package/build-module/components/editor/index.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/utils/index.js +14 -2
- package/build-module/components/global-styles/font-library-modal/utils/index.js.map +1 -1
- package/build-module/components/global-styles/header.js +4 -2
- package/build-module/components/global-styles/header.js.map +1 -1
- package/build-module/components/global-styles/screen-block-list.js +23 -17
- package/build-module/components/global-styles/screen-block-list.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/index.js +27 -6
- package/build-module/components/global-styles/screen-revisions/index.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js +51 -24
- package/build-module/components/global-styles/screen-revisions/revisions-buttons.js.map +1 -1
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js +9 -3
- package/build-module/components/global-styles/screen-revisions/use-global-styles-revisions.js.map +1 -1
- package/build-module/components/global-styles/ui.js +28 -36
- package/build-module/components/global-styles/ui.js.map +1 -1
- package/build-module/components/header-edit-mode/document-actions/index.js +21 -16
- package/build-module/components/header-edit-mode/document-actions/index.js.map +1 -1
- package/build-module/components/header-edit-mode/index.js +2 -1
- package/build-module/components/header-edit-mode/index.js.map +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js +1 -1
- package/build-module/components/header-edit-mode/more-menu/index.js.map +1 -1
- package/build-module/components/list/added-by.js +44 -55
- package/build-module/components/list/added-by.js.map +1 -1
- package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +9 -8
- package/build-module/components/page-content-focus-notifications/back-to-page-notification.js.map +1 -0
- package/build-module/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/build-module/components/page-content-focus-notifications/edit-template-notification.js.map +1 -0
- package/build-module/components/page-content-focus-notifications/index.js +14 -0
- package/build-module/components/page-content-focus-notifications/index.js.map +1 -0
- package/build-module/components/page-pages/index.js +10 -16
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/use-patterns.js +1 -1
- package/build-module/components/page-patterns/use-patterns.js.map +1 -1
- package/build-module/components/page-templates/dataviews-templates.js +168 -53
- package/build-module/components/page-templates/dataviews-templates.js.map +1 -1
- package/build-module/components/preferences-modal/index.js +1 -1
- package/build-module/components/preferences-modal/index.js.map +1 -1
- package/build-module/components/save-button/index.js +11 -8
- package/build-module/components/save-button/index.js.map +1 -1
- package/build-module/components/save-hub/index.js +14 -0
- package/build-module/components/save-hub/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js +3 -1
- package/build-module/components/sidebar-dataviews/custom-dataviews-list.js.map +1 -1
- package/build-module/components/sidebar-dataviews/default-views.js +7 -2
- package/build-module/components/sidebar-dataviews/default-views.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/index.js +6 -5
- package/build-module/components/sidebar-edit-mode/index.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js +16 -27
- package/build-module/components/sidebar-edit-mode/page-panels/edit-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js +21 -7
- package/build-module/components/sidebar-edit-mode/page-panels/hooks.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js +9 -6
- package/build-module/components/sidebar-edit-mode/page-panels/page-status.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js +5 -9
- package/build-module/components/sidebar-edit-mode/page-panels/page-summary.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js +3 -3
- package/build-module/components/sidebar-edit-mode/page-panels/reset-default-template.js.map +1 -1
- package/build-module/components/sidebar-edit-mode/settings-header/index.js +10 -6
- package/build-module/components/sidebar-edit-mode/settings-header/index.js.map +1 -1
- package/build-module/components/sidebar-navigation-screen-page/index.js +23 -4
- package/build-module/components/sidebar-navigation-screen-page/index.js.map +1 -1
- package/build-module/components/style-book/index.js +22 -12
- package/build-module/components/style-book/index.js.map +1 -1
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js +41 -9
- package/build-module/components/sync-state-with-url/use-init-edited-entity-from-url.js.map +1 -1
- package/build-module/components/welcome-guide/page.js +2 -2
- package/build-module/components/welcome-guide/page.js.map +1 -1
- package/build-module/components/welcome-guide/template.js +6 -3
- package/build-module/components/welcome-guide/template.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +24 -14
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/store/actions.js +4 -1
- package/build-module/store/actions.js.map +1 -1
- package/build-module/store/private-actions.js +1 -25
- package/build-module/store/private-actions.js.map +1 -1
- package/build-module/store/private-selectors.js +0 -22
- package/build-module/store/private-selectors.js.map +1 -1
- package/build-module/store/reducer.js +1 -38
- package/build-module/store/reducer.js.map +1 -1
- package/build-module/store/selectors.js +8 -4
- package/build-module/store/selectors.js.map +1 -1
- package/build-module/utils/constants.js +0 -10
- package/build-module/utils/constants.js.map +1 -1
- package/build-style/style-rtl.css +152 -62
- package/build-style/style.css +152 -62
- package/package.json +41 -41
- package/src/components/actions/index.js +76 -48
- package/src/components/block-editor/site-editor-canvas.js +8 -2
- package/src/components/dataviews/README.md +14 -11
- package/src/components/dataviews/add-filter.js +21 -24
- package/src/components/dataviews/constants.js +5 -0
- package/src/components/dataviews/dataviews.js +10 -10
- package/src/components/dataviews/filter-summary.js +79 -0
- package/src/components/dataviews/filters.js +18 -35
- package/src/components/dataviews/item-actions.js +106 -42
- package/src/components/dataviews/pagination.js +4 -0
- package/src/components/dataviews/style.scss +84 -8
- package/src/components/dataviews/view-actions.js +39 -41
- package/src/components/dataviews/view-grid.js +63 -38
- package/src/components/dataviews/view-list.js +50 -57
- package/src/components/editor/index.js +18 -34
- package/src/components/global-styles/font-library-modal/utils/get-intersecting-font-faces.js +1 -1
- package/src/components/global-styles/font-library-modal/utils/index.js +20 -9
- package/src/components/global-styles/font-library-modal/utils/test/getIntersectingFontFaces.spec.js +46 -15
- package/src/components/global-styles/font-library-modal/utils/test/wpKebabCase.spec.js +28 -0
- package/src/components/global-styles/header.js +2 -1
- package/src/components/global-styles/screen-block-list.js +37 -26
- package/src/components/global-styles/screen-revisions/index.js +39 -10
- package/src/components/global-styles/screen-revisions/revisions-buttons.js +65 -45
- package/src/components/global-styles/screen-revisions/style.scss +52 -28
- package/src/components/global-styles/screen-revisions/use-global-styles-revisions.js +15 -6
- package/src/components/global-styles/style.scss +0 -11
- package/src/components/global-styles/ui.js +59 -74
- package/src/components/header-edit-mode/document-actions/index.js +20 -18
- package/src/components/header-edit-mode/index.js +1 -0
- package/src/components/header-edit-mode/more-menu/index.js +1 -1
- package/src/components/list/added-by.js +23 -63
- package/src/components/list/style.scss +11 -13
- package/src/components/{page-content-focus-manager → page-content-focus-notifications}/back-to-page-notification.js +12 -13
- package/src/components/{page-content-focus-manager → page-content-focus-notifications}/edit-template-notification.js +9 -13
- package/src/components/page-content-focus-notifications/index.js +14 -0
- package/src/components/page-pages/index.js +15 -20
- package/src/components/page-patterns/use-patterns.js +1 -1
- package/src/components/page-templates/dataviews-templates.js +169 -48
- package/src/components/page-templates/style.scss +13 -0
- package/src/components/preferences-modal/index.js +1 -1
- package/src/components/save-button/index.js +37 -24
- package/src/components/save-hub/index.js +15 -0
- package/src/components/save-hub/style.scss +7 -0
- package/src/components/sidebar-dataviews/custom-dataviews-list.js +2 -0
- package/src/components/sidebar-dataviews/default-views.js +7 -2
- package/src/components/sidebar-dataviews/style.scss +7 -0
- package/src/components/sidebar-edit-mode/index.js +13 -9
- package/src/components/sidebar-edit-mode/page-panels/edit-template.js +33 -52
- package/src/components/sidebar-edit-mode/page-panels/hooks.js +20 -9
- package/src/components/sidebar-edit-mode/page-panels/page-status.js +6 -6
- package/src/components/sidebar-edit-mode/page-panels/page-summary.js +8 -9
- package/src/components/sidebar-edit-mode/page-panels/reset-default-template.js +3 -3
- package/src/components/sidebar-edit-mode/page-panels/style.scss +9 -19
- package/src/components/sidebar-edit-mode/settings-header/index.js +8 -9
- package/src/components/sidebar-navigation-screen/style.scss +1 -0
- package/src/components/sidebar-navigation-screen-page/index.js +24 -3
- package/src/components/sidebar-navigation-screen-template/style.scss +6 -1
- package/src/components/style-book/index.js +48 -35
- package/src/components/sync-state-with-url/use-init-edited-entity-from-url.js +69 -17
- package/src/components/welcome-guide/page.js +2 -2
- package/src/components/welcome-guide/template.js +4 -2
- package/src/hooks/commands/use-edit-mode-commands.js +22 -16
- package/src/store/actions.js +5 -1
- package/src/store/private-actions.js +1 -24
- package/src/store/private-selectors.js +0 -22
- package/src/store/reducer.js +0 -39
- package/src/store/selectors.js +12 -4
- package/src/store/test/actions.js +3 -32
- package/src/store/test/reducer.js +0 -62
- package/src/store/test/selectors.js +0 -35
- package/src/style.scss +1 -0
- package/src/utils/constants.js +0 -10
- package/build/components/dataviews/in-filter.js +0 -51
- package/build/components/dataviews/in-filter.js.map +0 -1
- package/build/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -63
- package/build/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
- package/build/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
- package/build/components/page-content-focus-manager/index.js +0 -61
- package/build/components/page-content-focus-manager/index.js.map +0 -1
- package/build/components/sidebar-edit-mode/page-panels/publish-date.js +0 -87
- package/build/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
- package/build-module/components/dataviews/in-filter.js +0 -42
- package/build-module/components/dataviews/in-filter.js.map +0 -1
- package/build-module/components/page-content-focus-manager/back-to-page-notification.js.map +0 -1
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -56
- package/build-module/components/page-content-focus-manager/disable-non-page-content-blocks.js.map +0 -1
- package/build-module/components/page-content-focus-manager/edit-template-notification.js.map +0 -1
- package/build-module/components/page-content-focus-manager/index.js +0 -52
- package/build-module/components/page-content-focus-manager/index.js.map +0 -1
- package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js +0 -80
- package/build-module/components/sidebar-edit-mode/page-panels/publish-date.js.map +0 -1
- package/src/components/dataviews/in-filter.js +0 -63
- package/src/components/page-content-focus-manager/disable-non-page-content-blocks.js +0 -57
- package/src/components/page-content-focus-manager/index.js +0 -51
- package/src/components/sidebar-edit-mode/page-panels/publish-date.js +0 -94
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
.dataviews-wrapper {
|
|
2
2
|
width: 100%;
|
|
3
|
-
height: 100
|
|
3
|
+
height: calc(100% - #{$grid-unit-40} * 2);
|
|
4
4
|
overflow: auto;
|
|
5
|
-
padding: $grid-unit-40;
|
|
5
|
+
padding: $grid-unit-40 $grid-unit-40 0;
|
|
6
6
|
|
|
7
7
|
> div {
|
|
8
8
|
min-height: 100%;
|
|
@@ -11,6 +11,15 @@
|
|
|
11
11
|
|
|
12
12
|
.dataviews-pagination {
|
|
13
13
|
margin-top: auto;
|
|
14
|
+
position: sticky;
|
|
15
|
+
bottom: 0;
|
|
16
|
+
background-color: $white;
|
|
17
|
+
padding: $grid-unit-20 0;
|
|
18
|
+
border-top: $border-width solid $gray-200;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.dataviews-filters-options {
|
|
22
|
+
margin: $grid-unit-40 0 $grid-unit-20;
|
|
14
23
|
}
|
|
15
24
|
|
|
16
25
|
.dataviews-list-view {
|
|
@@ -19,6 +28,7 @@
|
|
|
19
28
|
border-color: inherit;
|
|
20
29
|
border-collapse: collapse;
|
|
21
30
|
position: relative;
|
|
31
|
+
|
|
22
32
|
a {
|
|
23
33
|
text-decoration: none;
|
|
24
34
|
}
|
|
@@ -37,16 +47,82 @@
|
|
|
37
47
|
}
|
|
38
48
|
tr {
|
|
39
49
|
border-bottom: 1px solid $gray-100;
|
|
50
|
+
|
|
51
|
+
&:last-child {
|
|
52
|
+
border-bottom: 0;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
thead {
|
|
56
|
+
tr {
|
|
57
|
+
border: 0;
|
|
58
|
+
}
|
|
59
|
+
th {
|
|
60
|
+
position: sticky;
|
|
61
|
+
top: - #{$grid-unit-40}; // Offset the container padding
|
|
62
|
+
background-color: $white;
|
|
63
|
+
box-shadow: inset 0 -#{$border-width} 0 $gray-200;
|
|
64
|
+
}
|
|
40
65
|
}
|
|
41
66
|
}
|
|
42
67
|
|
|
43
|
-
.dataviews-view
|
|
44
|
-
|
|
45
|
-
|
|
68
|
+
.dataviews-grid-view {
|
|
69
|
+
margin-bottom: $grid-unit-30;
|
|
70
|
+
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
|
|
71
|
+
|
|
72
|
+
@include break-xlarge() {
|
|
73
|
+
grid-template-columns: repeat(3, minmax(0, 1fr)) !important; // Todo: eliminate !important dependency
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
@include break-huge() {
|
|
77
|
+
grid-template-columns: repeat(4, minmax(0, 1fr)) !important; // Todo: eliminate !important dependency
|
|
78
|
+
}
|
|
46
79
|
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
80
|
+
.dataviews-view-grid__card {
|
|
81
|
+
h3 { // Todo: A better way to target this
|
|
82
|
+
white-space: nowrap;
|
|
83
|
+
overflow: hidden;
|
|
84
|
+
text-overflow: ellipsis;
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
.dataviews-view-grid__media {
|
|
89
|
+
width: 100%;
|
|
90
|
+
min-height: 200px;
|
|
91
|
+
aspect-ratio: 1/1;
|
|
92
|
+
box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.1);
|
|
93
|
+
border-radius: $radius-block-ui * 2;
|
|
94
|
+
overflow: hidden;
|
|
95
|
+
|
|
96
|
+
> * {
|
|
97
|
+
object-fit: cover;
|
|
98
|
+
width: 100%;
|
|
99
|
+
height: 100%;
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
.dataviews-view-grid__title {
|
|
104
|
+
min-height: $grid-unit-30;
|
|
105
|
+
|
|
106
|
+
a {
|
|
107
|
+
color: $gray-900;
|
|
108
|
+
text-decoration: none;
|
|
109
|
+
font-weight: 500;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
.dataviews-view-grid__fields {
|
|
114
|
+
position: relative;
|
|
115
|
+
font-size: 12px;
|
|
116
|
+
line-height: 16px;
|
|
117
|
+
|
|
118
|
+
.dataviews-view-grid__field {
|
|
119
|
+
.dataviews-view-grid__field-header {
|
|
120
|
+
color: $gray-700;
|
|
121
|
+
}
|
|
122
|
+
.dataviews-view-grid__field-value {
|
|
123
|
+
color: $gray-900;
|
|
124
|
+
}
|
|
125
|
+
}
|
|
50
126
|
}
|
|
51
127
|
}
|
|
52
128
|
|
|
@@ -23,11 +23,11 @@ import { __ } from '@wordpress/i18n';
|
|
|
23
23
|
import { unlock } from '../../lock-unlock';
|
|
24
24
|
|
|
25
25
|
const {
|
|
26
|
-
DropdownMenuV2,
|
|
27
|
-
DropdownMenuGroupV2,
|
|
28
|
-
DropdownMenuItemV2,
|
|
29
|
-
DropdownSubMenuV2,
|
|
30
|
-
DropdownSubMenuTriggerV2,
|
|
26
|
+
DropdownMenuV2: DropdownMenu,
|
|
27
|
+
DropdownMenuGroupV2: DropdownMenuGroup,
|
|
28
|
+
DropdownMenuItemV2: DropdownMenuItem,
|
|
29
|
+
DropdownSubMenuV2: DropdownSubMenu,
|
|
30
|
+
DropdownSubMenuTriggerV2: DropdownSubMenuTrigger,
|
|
31
31
|
} = unlock( componentsPrivateApis );
|
|
32
32
|
|
|
33
33
|
const availableViews = [
|
|
@@ -57,9 +57,9 @@ function ViewTypeMenu( { view, onChangeView, supportedLayouts } ) {
|
|
|
57
57
|
}
|
|
58
58
|
const activeView = _availableViews.find( ( v ) => view.type === v.id );
|
|
59
59
|
return (
|
|
60
|
-
<
|
|
60
|
+
<DropdownSubMenu
|
|
61
61
|
trigger={
|
|
62
|
-
<
|
|
62
|
+
<DropdownSubMenuTrigger
|
|
63
63
|
suffix={
|
|
64
64
|
<>
|
|
65
65
|
{ activeView.label }
|
|
@@ -68,12 +68,12 @@ function ViewTypeMenu( { view, onChangeView, supportedLayouts } ) {
|
|
|
68
68
|
}
|
|
69
69
|
>
|
|
70
70
|
{ __( 'Layout' ) }
|
|
71
|
-
</
|
|
71
|
+
</DropdownSubMenuTrigger>
|
|
72
72
|
}
|
|
73
73
|
>
|
|
74
74
|
{ _availableViews.map( ( availableView ) => {
|
|
75
75
|
return (
|
|
76
|
-
<
|
|
76
|
+
<DropdownMenuItem
|
|
77
77
|
key={ availableView.id }
|
|
78
78
|
prefix={
|
|
79
79
|
availableView.id === view.type && (
|
|
@@ -89,19 +89,19 @@ function ViewTypeMenu( { view, onChangeView, supportedLayouts } ) {
|
|
|
89
89
|
role="menuitemcheckbox"
|
|
90
90
|
>
|
|
91
91
|
{ availableView.label }
|
|
92
|
-
</
|
|
92
|
+
</DropdownMenuItem>
|
|
93
93
|
);
|
|
94
94
|
} ) }
|
|
95
|
-
</
|
|
95
|
+
</DropdownSubMenu>
|
|
96
96
|
);
|
|
97
97
|
}
|
|
98
98
|
|
|
99
99
|
const PAGE_SIZE_VALUES = [ 10, 20, 50, 100 ];
|
|
100
100
|
function PageSizeMenu( { view, onChangeView } ) {
|
|
101
101
|
return (
|
|
102
|
-
<
|
|
102
|
+
<DropdownSubMenu
|
|
103
103
|
trigger={
|
|
104
|
-
<
|
|
104
|
+
<DropdownSubMenuTrigger
|
|
105
105
|
suffix={
|
|
106
106
|
<>
|
|
107
107
|
{ view.perPage }
|
|
@@ -111,12 +111,12 @@ function PageSizeMenu( { view, onChangeView } ) {
|
|
|
111
111
|
>
|
|
112
112
|
{ /* TODO: probably label per view type. */ }
|
|
113
113
|
{ __( 'Rows per page' ) }
|
|
114
|
-
</
|
|
114
|
+
</DropdownSubMenuTrigger>
|
|
115
115
|
}
|
|
116
116
|
>
|
|
117
117
|
{ PAGE_SIZE_VALUES.map( ( size ) => {
|
|
118
118
|
return (
|
|
119
|
-
<
|
|
119
|
+
<DropdownMenuItem
|
|
120
120
|
key={ size }
|
|
121
121
|
prefix={
|
|
122
122
|
view.perPage === size && <Icon icon={ check } />
|
|
@@ -130,10 +130,10 @@ function PageSizeMenu( { view, onChangeView } ) {
|
|
|
130
130
|
role="menuitemcheckbox"
|
|
131
131
|
>
|
|
132
132
|
{ size }
|
|
133
|
-
</
|
|
133
|
+
</DropdownMenuItem>
|
|
134
134
|
);
|
|
135
135
|
} ) }
|
|
136
|
-
</
|
|
136
|
+
</DropdownSubMenu>
|
|
137
137
|
);
|
|
138
138
|
}
|
|
139
139
|
|
|
@@ -145,18 +145,18 @@ function FieldsVisibilityMenu( { view, onChangeView, fields } ) {
|
|
|
145
145
|
return null;
|
|
146
146
|
}
|
|
147
147
|
return (
|
|
148
|
-
<
|
|
148
|
+
<DropdownSubMenu
|
|
149
149
|
trigger={
|
|
150
|
-
<
|
|
150
|
+
<DropdownSubMenuTrigger
|
|
151
151
|
suffix={ <Icon icon={ chevronRightSmall } /> }
|
|
152
152
|
>
|
|
153
153
|
{ __( 'Fields' ) }
|
|
154
|
-
</
|
|
154
|
+
</DropdownSubMenuTrigger>
|
|
155
155
|
}
|
|
156
156
|
>
|
|
157
157
|
{ hidableFields?.map( ( field ) => {
|
|
158
158
|
return (
|
|
159
|
-
<
|
|
159
|
+
<DropdownMenuItem
|
|
160
160
|
key={ field.id }
|
|
161
161
|
prefix={
|
|
162
162
|
! view.hiddenFields?.includes( field.id ) && (
|
|
@@ -179,10 +179,10 @@ function FieldsVisibilityMenu( { view, onChangeView, fields } ) {
|
|
|
179
179
|
role="menuitemcheckbox"
|
|
180
180
|
>
|
|
181
181
|
{ field.header }
|
|
182
|
-
</
|
|
182
|
+
</DropdownMenuItem>
|
|
183
183
|
);
|
|
184
184
|
} ) }
|
|
185
|
-
</
|
|
185
|
+
</DropdownSubMenu>
|
|
186
186
|
);
|
|
187
187
|
}
|
|
188
188
|
|
|
@@ -202,9 +202,9 @@ function SortMenu( { fields, view, onChangeView } ) {
|
|
|
202
202
|
( field ) => field.id === view.sort?.field
|
|
203
203
|
);
|
|
204
204
|
return (
|
|
205
|
-
<
|
|
205
|
+
<DropdownSubMenu
|
|
206
206
|
trigger={
|
|
207
|
-
<
|
|
207
|
+
<DropdownSubMenuTrigger
|
|
208
208
|
suffix={
|
|
209
209
|
<>
|
|
210
210
|
{ currentSortedField?.header }
|
|
@@ -213,20 +213,20 @@ function SortMenu( { fields, view, onChangeView } ) {
|
|
|
213
213
|
}
|
|
214
214
|
>
|
|
215
215
|
{ __( 'Sort by' ) }
|
|
216
|
-
</
|
|
216
|
+
</DropdownSubMenuTrigger>
|
|
217
217
|
}
|
|
218
218
|
>
|
|
219
219
|
{ sortableFields?.map( ( field ) => {
|
|
220
220
|
const sortedDirection = view.sort?.direction;
|
|
221
221
|
return (
|
|
222
|
-
<
|
|
222
|
+
<DropdownSubMenu
|
|
223
223
|
key={ field.id }
|
|
224
224
|
trigger={
|
|
225
|
-
<
|
|
225
|
+
<DropdownSubMenuTrigger
|
|
226
226
|
suffix={ <Icon icon={ chevronRightSmall } /> }
|
|
227
227
|
>
|
|
228
228
|
{ field.header }
|
|
229
|
-
</
|
|
229
|
+
</DropdownSubMenuTrigger>
|
|
230
230
|
}
|
|
231
231
|
side="left"
|
|
232
232
|
>
|
|
@@ -237,7 +237,7 @@ function SortMenu( { fields, view, onChangeView } ) {
|
|
|
237
237
|
sortedDirection === direction &&
|
|
238
238
|
field.id === currentSortedField.id;
|
|
239
239
|
return (
|
|
240
|
-
<
|
|
240
|
+
<DropdownMenuItem
|
|
241
241
|
key={ direction }
|
|
242
242
|
prefix={ <Icon icon={ info.icon } /> }
|
|
243
243
|
suffix={
|
|
@@ -264,14 +264,14 @@ function SortMenu( { fields, view, onChangeView } ) {
|
|
|
264
264
|
} }
|
|
265
265
|
>
|
|
266
266
|
{ info.label }
|
|
267
|
-
</
|
|
267
|
+
</DropdownMenuItem>
|
|
268
268
|
);
|
|
269
269
|
}
|
|
270
270
|
) }
|
|
271
|
-
</
|
|
271
|
+
</DropdownSubMenu>
|
|
272
272
|
);
|
|
273
273
|
} ) }
|
|
274
|
-
</
|
|
274
|
+
</DropdownSubMenu>
|
|
275
275
|
);
|
|
276
276
|
}
|
|
277
277
|
|
|
@@ -284,8 +284,7 @@ export default function ViewActions( {
|
|
|
284
284
|
supportedLayouts,
|
|
285
285
|
} ) {
|
|
286
286
|
return (
|
|
287
|
-
<
|
|
288
|
-
label={ __( 'Actions' ) }
|
|
287
|
+
<DropdownMenu
|
|
289
288
|
trigger={
|
|
290
289
|
<Button
|
|
291
290
|
variant="tertiary"
|
|
@@ -293,12 +292,11 @@ export default function ViewActions( {
|
|
|
293
292
|
icon={
|
|
294
293
|
VIEW_TYPE_ICONS[ view.type ] || VIEW_TYPE_ICONS.list
|
|
295
294
|
}
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
</Button>
|
|
295
|
+
label={ __( 'View options' ) }
|
|
296
|
+
/>
|
|
299
297
|
}
|
|
300
298
|
>
|
|
301
|
-
<
|
|
299
|
+
<DropdownMenuGroup>
|
|
302
300
|
<ViewTypeMenu
|
|
303
301
|
view={ view }
|
|
304
302
|
onChangeView={ onChangeView }
|
|
@@ -315,7 +313,7 @@ export default function ViewActions( {
|
|
|
315
313
|
onChangeView={ onChangeView }
|
|
316
314
|
/>
|
|
317
315
|
<PageSizeMenu view={ view } onChangeView={ onChangeView } />
|
|
318
|
-
</
|
|
319
|
-
</
|
|
316
|
+
</DropdownMenuGroup>
|
|
317
|
+
</DropdownMenu>
|
|
320
318
|
);
|
|
321
319
|
}
|
|
@@ -5,61 +5,86 @@ import {
|
|
|
5
5
|
__experimentalGrid as Grid,
|
|
6
6
|
__experimentalHStack as HStack,
|
|
7
7
|
__experimentalVStack as VStack,
|
|
8
|
-
FlexBlock,
|
|
9
|
-
Placeholder,
|
|
10
8
|
} from '@wordpress/components';
|
|
9
|
+
import { useAsyncList } from '@wordpress/compose';
|
|
11
10
|
|
|
12
11
|
/**
|
|
13
12
|
* Internal dependencies
|
|
14
13
|
*/
|
|
15
14
|
import ItemActions from './item-actions';
|
|
16
15
|
|
|
17
|
-
export function ViewGrid( { data, fields, view, actions } ) {
|
|
16
|
+
export function ViewGrid( { data, fields, view, actions, getItemId } ) {
|
|
18
17
|
const mediaField = fields.find(
|
|
19
18
|
( field ) => field.id === view.layout.mediaField
|
|
20
19
|
);
|
|
20
|
+
const primaryField = fields.find(
|
|
21
|
+
( field ) => field.id === view.layout.primaryField
|
|
22
|
+
);
|
|
21
23
|
const visibleFields = fields.filter(
|
|
22
24
|
( field ) =>
|
|
23
25
|
! view.hiddenFields.includes( field.id ) &&
|
|
24
|
-
|
|
26
|
+
! [ view.layout.mediaField, view.layout.primaryField ].includes(
|
|
27
|
+
field.id
|
|
28
|
+
)
|
|
25
29
|
);
|
|
30
|
+
const shownData = useAsyncList( data, { step: 3 } );
|
|
26
31
|
return (
|
|
27
|
-
<Grid
|
|
28
|
-
{
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
32
|
+
<Grid
|
|
33
|
+
gap={ 8 }
|
|
34
|
+
columns={ 2 }
|
|
35
|
+
alignment="top"
|
|
36
|
+
className="dataviews-grid-view"
|
|
37
|
+
>
|
|
38
|
+
{ shownData.map( ( item, index ) => (
|
|
39
|
+
<VStack
|
|
40
|
+
spacing={ 3 }
|
|
41
|
+
key={ getItemId?.( item ) || index }
|
|
42
|
+
className="dataviews-view-grid__card"
|
|
43
|
+
>
|
|
44
|
+
<div className="dataviews-view-grid__media">
|
|
45
|
+
{ mediaField?.render( { item, view } ) }
|
|
46
|
+
</div>
|
|
47
|
+
<HStack
|
|
48
|
+
className="dataviews-view-grid__title"
|
|
49
|
+
justify="space-between"
|
|
50
|
+
>
|
|
51
|
+
{ primaryField?.render( { item, view } ) }
|
|
52
|
+
<ItemActions
|
|
53
|
+
item={ item }
|
|
54
|
+
actions={ actions }
|
|
55
|
+
isCompact
|
|
56
|
+
/>
|
|
57
|
+
</HStack>
|
|
58
|
+
<VStack
|
|
59
|
+
className="dataviews-view-grid__fields"
|
|
60
|
+
spacing={ 3 }
|
|
61
|
+
>
|
|
62
|
+
{ visibleFields.map( ( field ) => {
|
|
63
|
+
const renderedValue = field.render( {
|
|
64
|
+
item,
|
|
65
|
+
view,
|
|
66
|
+
} );
|
|
67
|
+
if ( ! renderedValue ) {
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
return (
|
|
71
|
+
<VStack
|
|
72
|
+
className="dataviews-view-grid__field"
|
|
73
|
+
key={ field.id }
|
|
74
|
+
spacing={ 1 }
|
|
75
|
+
>
|
|
76
|
+
<div className="dataviews-view-grid__field-header">
|
|
77
|
+
{ field.header }
|
|
78
|
+
</div>
|
|
79
|
+
<div className="dataviews-view-grid__field-value">
|
|
80
|
+
{ field.render( { item, view } ) }
|
|
81
|
+
</div>
|
|
51
82
|
</VStack>
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
<ItemActions
|
|
55
|
-
item={ item }
|
|
56
|
-
actions={ actions }
|
|
57
|
-
/>
|
|
58
|
-
</FlexBlock>
|
|
59
|
-
</HStack>
|
|
83
|
+
);
|
|
84
|
+
} ) }
|
|
60
85
|
</VStack>
|
|
61
|
-
|
|
62
|
-
|
|
86
|
+
</VStack>
|
|
87
|
+
) ) }
|
|
63
88
|
</Grid>
|
|
64
89
|
);
|
|
65
90
|
}
|