@wordpress/edit-site 5.21.0 → 5.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/components/actions/index.js +121 -0
- package/build/components/actions/index.js.map +1 -0
- package/build/components/block-editor/use-site-editor-settings.js +12 -4
- package/build/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build/components/dataviews/dataviews.js +10 -2
- package/build/components/dataviews/dataviews.js.map +1 -1
- package/build/components/dataviews/filters.js +30 -17
- package/build/components/dataviews/filters.js.map +1 -1
- package/build/components/dataviews/in-filter.js +5 -7
- package/build/components/dataviews/in-filter.js.map +1 -1
- package/build/components/dataviews/item-actions.js +62 -0
- package/build/components/dataviews/item-actions.js.map +1 -0
- package/build/components/dataviews/pagination.js +31 -50
- package/build/components/dataviews/pagination.js.map +1 -1
- package/build/components/dataviews/{text-filter.js → search.js} +10 -10
- package/build/components/dataviews/search.js.map +1 -0
- package/build/components/dataviews/view-grid.js +3 -3
- package/build/components/dataviews/view-grid.js.map +1 -1
- package/build/components/dataviews/view-list.js +2 -2
- package/build/components/dataviews/view-list.js.map +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js +1 -1
- package/build/components/global-styles/font-library-modal/font-collection.js.map +1 -1
- package/build/components/global-styles/screen-block.js +1 -8
- package/build/components/global-styles/screen-block.js.map +1 -1
- package/build/components/page-pages/default-views.js +62 -0
- package/build/components/page-pages/default-views.js.map +1 -0
- package/build/components/page-pages/index.js +73 -52
- package/build/components/page-pages/index.js.map +1 -1
- package/build/components/page-patterns/rename-category-menu-item.js +27 -9
- package/build/components/page-patterns/rename-category-menu-item.js.map +1 -1
- package/build/components/save-button/index.js +4 -2
- package/build/components/save-button/index.js.map +1 -1
- package/build/components/sidebar/index.js +3 -1
- package/build/components/sidebar/index.js.map +1 -1
- package/build/components/sidebar-dataviews/index.js +74 -0
- package/build/components/sidebar-dataviews/index.js.map +1 -0
- package/build/components/sidebar-navigation-screen-page/page-details.js +1 -1
- package/build/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build/hooks/commands/use-edit-mode-commands.js +3 -2
- package/build/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build/utils/use-activate-theme.js +8 -0
- package/build/utils/use-activate-theme.js.map +1 -1
- package/build-module/components/actions/index.js +108 -0
- package/build-module/components/actions/index.js.map +1 -0
- package/build-module/components/block-editor/use-site-editor-settings.js +12 -4
- package/build-module/components/block-editor/use-site-editor-settings.js.map +1 -1
- package/build-module/components/dataviews/dataviews.js +10 -2
- package/build-module/components/dataviews/dataviews.js.map +1 -1
- package/build-module/components/dataviews/filters.js +30 -17
- package/build-module/components/dataviews/filters.js.map +1 -1
- package/build-module/components/dataviews/in-filter.js +5 -7
- package/build-module/components/dataviews/in-filter.js.map +1 -1
- package/build-module/components/dataviews/item-actions.js +55 -0
- package/build-module/components/dataviews/item-actions.js.map +1 -0
- package/build-module/components/dataviews/pagination.js +32 -51
- package/build-module/components/dataviews/pagination.js.map +1 -1
- package/build-module/components/dataviews/{text-filter.js → search.js} +9 -9
- package/build-module/components/dataviews/search.js.map +1 -0
- package/build-module/components/dataviews/view-grid.js +3 -3
- package/build-module/components/dataviews/view-grid.js.map +1 -1
- package/build-module/components/dataviews/view-list.js +2 -2
- package/build-module/components/dataviews/view-list.js.map +1 -1
- package/build-module/components/global-styles/font-library-modal/font-collection.js +1 -1
- 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 -8
- package/build-module/components/global-styles/screen-block.js.map +1 -1
- package/build-module/components/page-pages/default-views.js +55 -0
- package/build-module/components/page-pages/default-views.js.map +1 -0
- package/build-module/components/page-pages/index.js +71 -52
- package/build-module/components/page-pages/index.js.map +1 -1
- package/build-module/components/page-patterns/rename-category-menu-item.js +25 -9
- package/build-module/components/page-patterns/rename-category-menu-item.js.map +1 -1
- package/build-module/components/save-button/index.js +4 -2
- package/build-module/components/save-button/index.js.map +1 -1
- package/build-module/components/sidebar/index.js +3 -1
- package/build-module/components/sidebar/index.js.map +1 -1
- package/build-module/components/sidebar-dataviews/index.js +66 -0
- package/build-module/components/sidebar-dataviews/index.js.map +1 -0
- package/build-module/components/sidebar-navigation-screen-page/page-details.js +1 -1
- package/build-module/components/sidebar-navigation-screen-page/page-details.js.map +1 -1
- package/build-module/hooks/commands/use-edit-mode-commands.js +4 -3
- package/build-module/hooks/commands/use-edit-mode-commands.js.map +1 -1
- package/build-module/utils/use-activate-theme.js +8 -0
- package/build-module/utils/use-activate-theme.js.map +1 -1
- package/build-style/style-rtl.css +9 -5
- package/build-style/style.css +9 -5
- package/package.json +40 -40
- package/src/components/actions/index.js +123 -0
- package/src/components/block-editor/use-site-editor-settings.js +21 -13
- package/src/components/dataviews/README.md +134 -47
- package/src/components/dataviews/dataviews.js +11 -1
- package/src/components/dataviews/filters.js +35 -17
- package/src/components/dataviews/in-filter.js +5 -7
- package/src/components/dataviews/item-actions.js +69 -0
- package/src/components/dataviews/pagination.js +53 -74
- package/src/components/dataviews/{text-filter.js → search.js} +7 -7
- package/src/components/dataviews/style.scss +10 -5
- package/src/components/dataviews/view-grid.js +7 -2
- package/src/components/dataviews/view-list.js +2 -2
- package/src/components/global-styles/font-library-modal/font-collection.js +1 -1
- package/src/components/global-styles/screen-block.js +1 -7
- package/src/components/page-pages/default-views.js +60 -0
- package/src/components/page-pages/index.js +85 -60
- package/src/components/page-patterns/rename-category-menu-item.js +29 -12
- package/src/components/save-button/index.js +10 -5
- package/src/components/sidebar/index.js +2 -0
- package/src/components/sidebar-dataviews/index.js +66 -0
- package/src/components/sidebar-navigation-screen-page/page-details.js +3 -1
- package/src/hooks/commands/use-edit-mode-commands.js +3 -1
- package/src/utils/use-activate-theme.js +5 -0
- package/build/components/actions/trash-post.js +0 -48
- package/build/components/actions/trash-post.js.map +0 -1
- package/build/components/dataviews/field-actions.js +0 -30
- package/build/components/dataviews/field-actions.js.map +0 -1
- package/build/components/dataviews/text-filter.js.map +0 -1
- package/build-module/components/actions/trash-post.js +0 -41
- package/build-module/components/actions/trash-post.js.map +0 -1
- package/build-module/components/dataviews/field-actions.js +0 -22
- package/build-module/components/dataviews/field-actions.js.map +0 -1
- package/build-module/components/dataviews/text-filter.js.map +0 -1
- package/src/components/actions/trash-post.js +0 -55
- package/src/components/dataviews/field-actions.js +0 -28
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useDispatch","useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","select","getEntityRecords","getTaxonomy","getAuthors","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","storedSettings","canvasMode","templateType","getSettings","getCanvasMode","getEditedPostType","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } = unlock(\n\t\t\t\tselect( editSiteStore )\n\t\t\t);\n\t\t\treturn {\n\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t};\n\t\t},\n\t\t[ setIsInserterOpened ]\n\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t] );\n}\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,WAAW,EAAEC,SAAS,QAAQ,iBAAiB;AACxD,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD;AACA;AACA;AACA,SAASD,KAAK,IAAIE,aAAa,QAAQ,aAAa;AACpD,SAASC,MAAM,QAAQ,mBAAmB;AAC1C,OAAOC,uBAAuB,MAAM,6BAA6B;AAEjE,SAASC,eAAeA,CAAEC,YAAY,EAAG;EACxC,MAAMC,eAAe,GAAGD,YAAY,EAAEE,KAAK,CAC1C,8EACD,CAAC;EACD,IAAIC,QAAQ;EACZ,IAAIC,IAAI;EACR,IAAIC,QAAQ,GAAG,KAAK;EACpB,IAAIC,UAAU;EACd,IAAKL,eAAe,EAAG;IACtB;IACA,IAAKA,eAAe,CAAE,CAAC,CAAE,EAAG;MAC3BE,QAAQ,GAAGF,eAAe,CAAE,CAAC,CAAE,GAC5BA,eAAe,CAAE,CAAC,CAAE,GACpBA,eAAe,CAAE,CAAC,CAAE;IACxB;IACA;IAAA,KACK,IAAKA,eAAe,CAAE,CAAC,CAAE,EAAG;MAChCE,QAAQ,GAAGF,eAAe,CAAE,CAAC,CAAE,GAC5BA,eAAe,CAAE,CAAC,CAAE,GACpBA,eAAe,CAAE,CAAC,CAAE;MACvBG,IAAI,GAAGH,eAAe,CAAE,CAAC,CAAE;IAC5B;IACAE,QAAQ,GAAGA,QAAQ,KAAK,KAAK,GAAG,UAAU,GAAGA,QAAQ;;IAErD;IACA;EACD,CAAC,MAAM;IACN,MAAMI,aAAa,GAAGP,YAAY,EAAEE,KAAK,CAAE,0BAA2B,CAAC;IACvE,IAAKK,aAAa,EAAG;MACpBF,QAAQ,GAAG,IAAI;MACf,IAAKE,aAAa,CAAE,CAAC,CAAE,EAAG;QACzBD,UAAU,GAAGC,aAAa,CAAE,CAAC,CAAE;MAChC;IACD;EACD;EACA,OAAOf,SAAS,CACbgB,MAAM,IAAM;IACb,MAAM;MAAEC,gBAAgB;MAAEC,WAAW;MAAEC;IAAW,CAAC,GAClDH,MAAM,CAAEb,SAAU,CAAC;IACpB,IAAIiB,gBAAgB;IACpB,IAAIC,gBAAgB;IACpB,IAAKV,QAAQ,EAAG;MACfS,gBAAgB,GACfF,WAAW,CAAEP,QAAS,CAAC,EAAEW,MAAM,EAAEC,aAAa;IAChD;IACA,IAAKX,IAAI,EAAG;MACX,MAAMY,OAAO,GAAGP,gBAAgB,CAAE,UAAU,EAAEN,QAAQ,EAAE;QACvDc,IAAI,EAAEb,IAAI;QACVc,QAAQ,EAAE;MACX,CAAE,CAAC;MACH,IAAKF,OAAO,IAAIA,OAAO,CAAE,CAAC,CAAE,EAAG;QAC9BH,gBAAgB,GAAGG,OAAO,CAAE,CAAC,CAAE,CAACG,IAAI;MACrC;IACD;IACA,IAAKd,QAAQ,EAAG;MACfO,gBAAgB,GAAG,QAAQ;MAC3B,IAAKN,UAAU,EAAG;QACjB,MAAMc,aAAa,GAAGT,UAAU,CAAE;UAAEM,IAAI,EAAEX;QAAW,CAAE,CAAC;QACxD,IAAKc,aAAa,IAAIA,aAAa,CAAE,CAAC,CAAE,EAAG;UAC1CP,gBAAgB,GAAGO,aAAa,CAAE,CAAC,CAAE,CAACD,IAAI;QAC3C;MACD;IACD;IACA,OAAO;MACNP,gBAAgB;MAChBC;IACD,CAAC;EACF,CAAC,EACD,CAAEP,UAAU,EAAED,QAAQ,EAAEF,QAAQ,EAAEC,IAAI,CACvC,CAAC;AACF;AAEA,eAAe,SAASiB,qBAAqBA,CAAA,EAAG;EAAA,IAAAC,qBAAA,EAAAC,sBAAA;EAC/C,MAAM;IAAEC;EAAoB,CAAC,GAAGjC,WAAW,CAAEK,aAAc,CAAC;EAC5D,MAAM;IAAE6B,cAAc;IAAEC,UAAU;IAAEC;EAAa,CAAC,GAAGnC,SAAS,CAC3DgB,MAAM,IAAM;IACb,MAAM;MAAEoB,WAAW;MAAEC,aAAa;MAAEC;IAAkB,CAAC,GAAGjC,MAAM,CAC/DW,MAAM,CAAEZ,aAAc,CACvB,CAAC;IACD,OAAO;MACN6B,cAAc,EAAEG,WAAW,CAAEJ,mBAAoB,CAAC;MAClDE,UAAU,EAAEG,aAAa,CAAC,CAAC;MAC3BF,YAAY,EAAEG,iBAAiB,CAAC;IACjC,CAAC;EACF,CAAC,EACD,CAAEN,mBAAmB,CACtB,CAAC;EAED,MAAMO,qBAAqB,IAAAT,qBAAA,GAC1BG,cAAc,CAACO,qCAAqC,cAAAV,qBAAA,cAAAA,qBAAA;EAAI;EACxDG,cAAc,CAACQ,2BAA2B,CAAC,CAAC;EAC7C,MAAMC,8BAA8B,IAAAX,sBAAA,GACnCE,cAAc,CAACU,8CAA8C,cAAAZ,sBAAA,cAAAA,sBAAA;EAAI;EACjEE,cAAc,CAACW,oCAAoC,CAAC,CAAC;;EAEtD,MAAM;IACLC,iBAAiB;IACjBC,0BAA0B;IAC1BtC,YAAY;IACZuC;EACD,CAAC,GAAG/C,SAAS,CAAIgB,MAAM,IAAM;IAC5B,MAAM;MAAEsB,iBAAiB;MAAEU;IAAgB,CAAC,GAAGhC,MAAM,CAAEZ,aAAc,CAAC;IACtE,MAAM;MAAE6C,qBAAqB;MAAEC;IAAyB,CAAC,GACxDlC,MAAM,CAAEb,SAAU,CAAC;IACpB,MAAMgD,YAAY,GAAGb,iBAAiB,CAAC,CAAC;IACxC,MAAMc,UAAU,GAAGJ,eAAe,CAAC,CAAC;IACpC,MAAMK,OAAO,GAAGJ,qBAAqB,CACpC,UAAU,EACVE,YAAY,EACZC,UACD,CAAC;IACD,OAAO;MACNP,iBAAiB,EAAE7B,MAAM,CAAEb,SAAU,CAAC,CAACmD,gBAAgB,CAAC,CAAC;MACzDR,0BAA0B,EACzB9B,MAAM,CAAEb,SAAU,CAAC,CAACoD,yBAAyB,CAAC,CAAC;MAChD/C,YAAY,EAAE6C,OAAO,CAAC5B,IAAI;MAC1BsB,qBAAqB,EAAEG,wBAAwB,CAAC;IACjD,CAAC;EACF,CAAC,EAAE,EAAG,CAAC;EACP,MAAMM,aAAa,GAAGjD,eAAe,CAAEC,YAAa,CAAC;EAErD,MAAMiD,aAAa,GAAGxD,OAAO,CAC5B,MACC,CACC,IAAKsC,qBAAqB,IAAI,EAAE,CAAE,EAClC,IAAKM,iBAAiB,IAAI,EAAE,CAAE,CAC9B,CACCa,MAAM,CACN,CAAEC,CAAC,EAAEC,KAAK,EAAEC,GAAG,KACdD,KAAK,KAAKC,GAAG,CAACC,SAAS,CAAIC,CAAC,IAAMJ,CAAC,CAAChC,IAAI,KAAKoC,CAAC,CAACpC,IAAK,CACtD,CAAC,CACA+B,MAAM,CAAE,CAAE;IAAEM;EAAU,CAAC,KAAM;IAC7B,OACC,CAAEA,SAAS,IACTC,KAAK,CAACC,OAAO,CAAEF,SAAU,CAAC,IAC3BA,SAAS,CAACG,QAAQ,CAAEhC,YAAa,CAAG;EAEvC,CAAE,CAAC,EACL,CAAEI,qBAAqB,EAAEM,iBAAiB,EAAEV,YAAY,CACzD,CAAC;EAED,MAAMiC,sBAAsB,GAAGnE,OAAO,CACrC,MACC,CACC,IAAKyC,8BAA8B,IAAI,EAAE,CAAE,EAC3C,IAAKI,0BAA0B,IAAI,EAAE,CAAE,CACvC,CAACY,MAAM,CACP,CAAEC,CAAC,EAAEC,KAAK,EAAEC,GAAG,KACdD,KAAK,KAAKC,GAAG,CAACC,SAAS,CAAIC,CAAC,IAAMJ,CAAC,CAAChC,IAAI,KAAKoC,CAAC,CAACpC,IAAK,CACtD,CAAC,EACF,CAAEe,8BAA8B,EAAEI,0BAA0B,CAC7D,CAAC;EACD,OAAO7C,OAAO,CAAE,MAAM;IACrB,MAAM;MACLuC,qCAAqC;MACrCG,8CAA8C;MAC9C0B,SAAS;MACT,GAAGC;IACJ,CAAC,GAAGrC,cAAc;IAElB,OAAO;MACN,GAAGqC,kBAAkB;MACrBhE,uBAAuB;MACvBmC,2BAA2B,EAAEgB,aAAa;MAC1Cb,oCAAoC,EAAEwB,sBAAsB;MAC5DG,mCAAmC,EAAExB,qBAAqB;MAC1DsB,SAAS,EAAEnC,UAAU,KAAK,MAAM,IAAImC,SAAS,GAAG,KAAK,GAAGA,SAAS;MACjEG,mCAAmC,EAAEhB,aAAa,CAACpC,gBAAgB;MACnEqD,mCAAmC,EAAEjB,aAAa,CAACnC;IACpD,CAAC;EACF,CAAC,EAAE,CACFY,cAAc,EACdwB,aAAa,EACbW,sBAAsB,EACtBrB,qBAAqB,EACrBb,UAAU,EACVsB,aAAa,CAACpC,gBAAgB,EAC9BoC,aAAa,CAACnC,gBAAgB,CAC7B,CAAC;AACJ"}
|
|
1
|
+
{"version":3,"names":["useDispatch","useSelect","useMemo","store","coreStore","editSiteStore","unlock","inserterMediaCategories","useArchiveLabel","templateSlug","taxonomyMatches","match","taxonomy","term","isAuthor","authorSlug","authorMatches","select","getEntityRecords","getTaxonomy","getAuthors","archiveTypeLabel","archiveNameLabel","labels","singular_name","records","slug","per_page","name","authorRecords","useSiteEditorSettings","_storedSettings$__exp","_storedSettings$__exp2","setIsInserterOpened","storedSettings","canvasMode","templateType","siteSettings","canUser","getEntityRecord","getSettings","getCanvasMode","getEditedPostType","undefined","settingsBlockPatterns","__experimentalAdditionalBlockPatterns","__experimentalBlockPatterns","settingsBlockPatternCategories","__experimentalAdditionalBlockPatternCategories","__experimentalBlockPatternCategories","restBlockPatterns","restBlockPatternCategories","userPatternCategories","getEditedPostId","getEditedEntityRecord","getUserPatternCategories","usedPostType","usedPostId","_record","getBlockPatterns","getBlockPatternCategories","archiveLabels","blockPatterns","filter","x","index","arr","findIndex","y","postTypes","Array","isArray","includes","blockPatternCategories","focusMode","restStoredSettings","__experimentalUserPatternCategories","__experimentalArchiveTitleTypeLabel","__experimentalArchiveTitleNameLabel","pageOnFront","page_on_front","pageForPosts","page_for_posts"],"sources":["@wordpress/edit-site/src/components/block-editor/use-site-editor-settings.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { useMemo } from '@wordpress/element';\nimport { store as coreStore } from '@wordpress/core-data';\n/**\n * Internal dependencies\n */\nimport { store as editSiteStore } from '../../store';\nimport { unlock } from '../../lock-unlock';\nimport inserterMediaCategories from './inserter-media-categories';\n\nfunction useArchiveLabel( templateSlug ) {\n\tconst taxonomyMatches = templateSlug?.match(\n\t\t/^(category|tag|taxonomy-([^-]+))$|^(((category|tag)|taxonomy-([^-]+))-(.+))$/\n\t);\n\tlet taxonomy;\n\tlet term;\n\tlet isAuthor = false;\n\tlet authorSlug;\n\tif ( taxonomyMatches ) {\n\t\t// If is for a all taxonomies of a type\n\t\tif ( taxonomyMatches[ 1 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 2 ]\n\t\t\t\t? taxonomyMatches[ 2 ]\n\t\t\t\t: taxonomyMatches[ 1 ];\n\t\t}\n\t\t// If is for a all taxonomies of a type\n\t\telse if ( taxonomyMatches[ 3 ] ) {\n\t\t\ttaxonomy = taxonomyMatches[ 6 ]\n\t\t\t\t? taxonomyMatches[ 6 ]\n\t\t\t\t: taxonomyMatches[ 4 ];\n\t\t\tterm = taxonomyMatches[ 7 ];\n\t\t}\n\t\ttaxonomy = taxonomy === 'tag' ? 'post_tag' : taxonomy;\n\n\t\t//getTaxonomy( 'category' );\n\t\t//wp.data.select('core').getEntityRecords( 'taxonomy', 'category', {slug: 'newcat'} );\n\t} else {\n\t\tconst authorMatches = templateSlug?.match( /^(author)$|^author-(.+)$/ );\n\t\tif ( authorMatches ) {\n\t\t\tisAuthor = true;\n\t\t\tif ( authorMatches[ 2 ] ) {\n\t\t\t\tauthorSlug = authorMatches[ 2 ];\n\t\t\t}\n\t\t}\n\t}\n\treturn useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEntityRecords, getTaxonomy, getAuthors } =\n\t\t\t\tselect( coreStore );\n\t\t\tlet archiveTypeLabel;\n\t\t\tlet archiveNameLabel;\n\t\t\tif ( taxonomy ) {\n\t\t\t\tarchiveTypeLabel =\n\t\t\t\t\tgetTaxonomy( taxonomy )?.labels?.singular_name;\n\t\t\t}\n\t\t\tif ( term ) {\n\t\t\t\tconst records = getEntityRecords( 'taxonomy', taxonomy, {\n\t\t\t\t\tslug: term,\n\t\t\t\t\tper_page: 1,\n\t\t\t\t} );\n\t\t\t\tif ( records && records[ 0 ] ) {\n\t\t\t\t\tarchiveNameLabel = records[ 0 ].name;\n\t\t\t\t}\n\t\t\t}\n\t\t\tif ( isAuthor ) {\n\t\t\t\tarchiveTypeLabel = 'Author';\n\t\t\t\tif ( authorSlug ) {\n\t\t\t\t\tconst authorRecords = getAuthors( { slug: authorSlug } );\n\t\t\t\t\tif ( authorRecords && authorRecords[ 0 ] ) {\n\t\t\t\t\t\tarchiveNameLabel = authorRecords[ 0 ].name;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn {\n\t\t\t\tarchiveTypeLabel,\n\t\t\t\tarchiveNameLabel,\n\t\t\t};\n\t\t},\n\t\t[ authorSlug, isAuthor, taxonomy, term ]\n\t);\n}\n\nexport default function useSiteEditorSettings() {\n\tconst { setIsInserterOpened } = useDispatch( editSiteStore );\n\tconst { storedSettings, canvasMode, templateType, siteSettings } =\n\t\tuseSelect(\n\t\t\t( select ) => {\n\t\t\t\tconst { canUser, getEntityRecord } = select( coreStore );\n\t\t\t\tconst { getSettings, getCanvasMode, getEditedPostType } =\n\t\t\t\t\tunlock( select( editSiteStore ) );\n\t\t\t\treturn {\n\t\t\t\t\tstoredSettings: getSettings( setIsInserterOpened ),\n\t\t\t\t\tcanvasMode: getCanvasMode(),\n\t\t\t\t\ttemplateType: getEditedPostType(),\n\t\t\t\t\tsiteSettings: canUser( 'read', 'settings' )\n\t\t\t\t\t\t? getEntityRecord( 'root', 'site' )\n\t\t\t\t\t\t: undefined,\n\t\t\t\t};\n\t\t\t},\n\t\t\t[ setIsInserterOpened ]\n\t\t);\n\n\tconst settingsBlockPatterns =\n\t\tstoredSettings.__experimentalAdditionalBlockPatterns ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatterns; // WP 5.9\n\tconst settingsBlockPatternCategories =\n\t\tstoredSettings.__experimentalAdditionalBlockPatternCategories ?? // WP 6.0\n\t\tstoredSettings.__experimentalBlockPatternCategories; // WP 5.9\n\n\tconst {\n\t\trestBlockPatterns,\n\t\trestBlockPatternCategories,\n\t\ttemplateSlug,\n\t\tuserPatternCategories,\n\t} = useSelect( ( select ) => {\n\t\tconst { getEditedPostType, getEditedPostId } = select( editSiteStore );\n\t\tconst { getEditedEntityRecord, getUserPatternCategories } =\n\t\t\tselect( coreStore );\n\t\tconst usedPostType = getEditedPostType();\n\t\tconst usedPostId = getEditedPostId();\n\t\tconst _record = getEditedEntityRecord(\n\t\t\t'postType',\n\t\t\tusedPostType,\n\t\t\tusedPostId\n\t\t);\n\t\treturn {\n\t\t\trestBlockPatterns: select( coreStore ).getBlockPatterns(),\n\t\t\trestBlockPatternCategories:\n\t\t\t\tselect( coreStore ).getBlockPatternCategories(),\n\t\t\ttemplateSlug: _record.slug,\n\t\t\tuserPatternCategories: getUserPatternCategories(),\n\t\t};\n\t}, [] );\n\tconst archiveLabels = useArchiveLabel( templateSlug );\n\n\tconst blockPatterns = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatterns || [] ),\n\t\t\t\t...( restBlockPatterns || [] ),\n\t\t\t]\n\t\t\t\t.filter(\n\t\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t\t)\n\t\t\t\t.filter( ( { postTypes } ) => {\n\t\t\t\t\treturn (\n\t\t\t\t\t\t! postTypes ||\n\t\t\t\t\t\t( Array.isArray( postTypes ) &&\n\t\t\t\t\t\t\tpostTypes.includes( templateType ) )\n\t\t\t\t\t);\n\t\t\t\t} ),\n\t\t[ settingsBlockPatterns, restBlockPatterns, templateType ]\n\t);\n\n\tconst blockPatternCategories = useMemo(\n\t\t() =>\n\t\t\t[\n\t\t\t\t...( settingsBlockPatternCategories || [] ),\n\t\t\t\t...( restBlockPatternCategories || [] ),\n\t\t\t].filter(\n\t\t\t\t( x, index, arr ) =>\n\t\t\t\t\tindex === arr.findIndex( ( y ) => x.name === y.name )\n\t\t\t),\n\t\t[ settingsBlockPatternCategories, restBlockPatternCategories ]\n\t);\n\treturn useMemo( () => {\n\t\tconst {\n\t\t\t__experimentalAdditionalBlockPatterns,\n\t\t\t__experimentalAdditionalBlockPatternCategories,\n\t\t\tfocusMode,\n\t\t\t...restStoredSettings\n\t\t} = storedSettings;\n\n\t\treturn {\n\t\t\t...restStoredSettings,\n\t\t\tinserterMediaCategories,\n\t\t\t__experimentalBlockPatterns: blockPatterns,\n\t\t\t__experimentalBlockPatternCategories: blockPatternCategories,\n\t\t\t__experimentalUserPatternCategories: userPatternCategories,\n\t\t\tfocusMode: canvasMode === 'view' && focusMode ? false : focusMode,\n\t\t\t__experimentalArchiveTitleTypeLabel: archiveLabels.archiveTypeLabel,\n\t\t\t__experimentalArchiveTitleNameLabel: archiveLabels.archiveNameLabel,\n\t\t\tpageOnFront: siteSettings?.page_on_front,\n\t\t\tpageForPosts: siteSettings?.page_for_posts,\n\t\t};\n\t}, [\n\t\tstoredSettings,\n\t\tblockPatterns,\n\t\tblockPatternCategories,\n\t\tuserPatternCategories,\n\t\tcanvasMode,\n\t\tarchiveLabels.archiveTypeLabel,\n\t\tarchiveLabels.archiveNameLabel,\n\t\tsiteSettings?.page_on_front,\n\t\tsiteSettings?.page_for_posts,\n\t] );\n}\n"],"mappings":"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"}
|
|
@@ -12,11 +12,14 @@ import ViewList from './view-list';
|
|
|
12
12
|
import Pagination from './pagination';
|
|
13
13
|
import ViewActions from './view-actions';
|
|
14
14
|
import Filters from './filters';
|
|
15
|
+
import Search from './search';
|
|
15
16
|
import { ViewGrid } from './view-grid';
|
|
16
17
|
export default function DataViews({
|
|
17
18
|
view,
|
|
18
19
|
onChangeView,
|
|
19
20
|
fields,
|
|
21
|
+
search = true,
|
|
22
|
+
searchLabel = undefined,
|
|
20
23
|
actions,
|
|
21
24
|
data,
|
|
22
25
|
isLoading = false,
|
|
@@ -32,10 +35,15 @@ export default function DataViews({
|
|
|
32
35
|
return createElement("div", {
|
|
33
36
|
className: "dataviews-wrapper"
|
|
34
37
|
}, createElement(VStack, {
|
|
35
|
-
spacing: 4
|
|
38
|
+
spacing: 4,
|
|
39
|
+
justify: "flex-start"
|
|
36
40
|
}, createElement(HStack, null, createElement(HStack, {
|
|
37
41
|
justify: "start"
|
|
38
|
-
}, createElement(
|
|
42
|
+
}, search && createElement(Search, {
|
|
43
|
+
label: searchLabel,
|
|
44
|
+
view: view,
|
|
45
|
+
onChangeView: onChangeView
|
|
46
|
+
}), createElement(Filters, {
|
|
39
47
|
fields: fields,
|
|
40
48
|
view: view,
|
|
41
49
|
onChangeView: onChangeView
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalVStack","VStack","__experimentalHStack","HStack","useMemo","ViewList","Pagination","ViewActions","Filters","ViewGrid","DataViews","view","onChangeView","fields","actions","data","isLoading","paginationInfo","ViewComponent","type","_fields","map","field","render","getValue","createElement","className","spacing","justify"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 }>\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,OAAO,MAAM,WAAW;AAC/B,SAASC,QAAQ,QAAQ,aAAa;AAEtC,eAAe,SAASC,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,
|
|
1
|
+
{"version":3,"names":["__experimentalVStack","VStack","__experimentalHStack","HStack","useMemo","ViewList","Pagination","ViewActions","Filters","Search","ViewGrid","DataViews","view","onChangeView","fields","search","searchLabel","undefined","actions","data","isLoading","paginationInfo","ViewComponent","type","_fields","map","field","render","getValue","createElement","className","spacing","justify","label"],"sources":["@wordpress/edit-site/src/components/dataviews/dataviews.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalVStack as VStack,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { useMemo } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport ViewList from './view-list';\nimport Pagination from './pagination';\nimport ViewActions from './view-actions';\nimport Filters from './filters';\nimport Search from './search';\nimport { ViewGrid } from './view-grid';\n\nexport default function DataViews( {\n\tview,\n\tonChangeView,\n\tfields,\n\tsearch = true,\n\tsearchLabel = undefined,\n\tactions,\n\tdata,\n\tisLoading = false,\n\tpaginationInfo,\n} ) {\n\tconst ViewComponent = view.type === 'list' ? ViewList : ViewGrid;\n\tconst _fields = useMemo( () => {\n\t\treturn fields.map( ( field ) => ( {\n\t\t\t...field,\n\t\t\trender: field.render || field.getValue,\n\t\t} ) );\n\t}, [ fields ] );\n\treturn (\n\t\t<div className=\"dataviews-wrapper\">\n\t\t\t<VStack spacing={ 4 } justify=\"flex-start\">\n\t\t\t\t<HStack>\n\t\t\t\t\t<HStack justify=\"start\">\n\t\t\t\t\t\t{ search && (\n\t\t\t\t\t\t\t<Search\n\t\t\t\t\t\t\t\tlabel={ searchLabel }\n\t\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t) }\n\t\t\t\t\t\t<Filters\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack justify=\"end\">\n\t\t\t\t\t\t<ViewActions\n\t\t\t\t\t\t\tfields={ fields }\n\t\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t\t<ViewComponent\n\t\t\t\t\tfields={ _fields }\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t\tactions={ actions }\n\t\t\t\t\tdata={ data }\n\t\t\t\t\tisLoading={ isLoading }\n\t\t\t\t/>\n\t\t\t\t<Pagination\n\t\t\t\t\tview={ view }\n\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\tpaginationInfo={ paginationInfo }\n\t\t\t\t/>\n\t\t\t</VStack>\n\t\t</div>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,oBAAoB,IAAIC,MAAM,EAC9BC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,OAAO,QAAQ,oBAAoB;;AAE5C;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAClC,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,WAAW,MAAM,gBAAgB;AACxC,OAAOC,OAAO,MAAM,WAAW;AAC/B,OAAOC,MAAM,MAAM,UAAU;AAC7B,SAASC,QAAQ,QAAQ,aAAa;AAEtC,eAAe,SAASC,SAASA,CAAE;EAClCC,IAAI;EACJC,YAAY;EACZC,MAAM;EACNC,MAAM,GAAG,IAAI;EACbC,WAAW,GAAGC,SAAS;EACvBC,OAAO;EACPC,IAAI;EACJC,SAAS,GAAG,KAAK;EACjBC;AACD,CAAC,EAAG;EACH,MAAMC,aAAa,GAAGV,IAAI,CAACW,IAAI,KAAK,MAAM,GAAGlB,QAAQ,GAAGK,QAAQ;EAChE,MAAMc,OAAO,GAAGpB,OAAO,CAAE,MAAM;IAC9B,OAAOU,MAAM,CAACW,GAAG,CAAIC,KAAK,KAAQ;MACjC,GAAGA,KAAK;MACRC,MAAM,EAAED,KAAK,CAACC,MAAM,IAAID,KAAK,CAACE;IAC/B,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEd,MAAM,CAAG,CAAC;EACf,OACCe,aAAA;IAAKC,SAAS,EAAC;EAAmB,GACjCD,aAAA,CAAC5B,MAAM;IAAC8B,OAAO,EAAG,CAAG;IAACC,OAAO,EAAC;EAAY,GACzCH,aAAA,CAAC1B,MAAM,QACN0B,aAAA,CAAC1B,MAAM;IAAC6B,OAAO,EAAC;EAAO,GACpBjB,MAAM,IACPc,aAAA,CAACpB,MAAM;IACNwB,KAAK,EAAGjB,WAAa;IACrBJ,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACD,EACDgB,aAAA,CAACrB,OAAO;IACPM,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CAAC,EACTgB,aAAA,CAAC1B,MAAM;IAAC6B,OAAO,EAAC;EAAK,GACpBH,aAAA,CAACtB,WAAW;IACXO,MAAM,EAAGA,MAAQ;IACjBF,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA;EAAc,CAC7B,CACM,CACD,CAAC,EACTgB,aAAA,CAACP,aAAa;IACbR,MAAM,EAAGU,OAAS;IAClBZ,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA,cAAgB;IACjCH,OAAO,EAAGA,OAAS;IACnBC,IAAI,EAAGA,IAAM;IACbC,SAAS,EAAGA;EAAW,CACvB,CAAC,EACFS,aAAA,CAACvB,UAAU;IACVM,IAAI,EAAGA,IAAM;IACbC,YAAY,EAAGA,YAAc;IAC7BQ,cAAc,EAAGA;EAAgB,CACjC,CACM,CACJ,CAAC;AAER"}
|
|
@@ -7,42 +7,55 @@ import { __ } from '@wordpress/i18n';
|
|
|
7
7
|
/**
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
|
-
import TextFilter from './text-filter';
|
|
11
10
|
import InFilter from './in-filter';
|
|
12
11
|
export default function Filters({
|
|
13
12
|
fields,
|
|
14
13
|
view,
|
|
15
14
|
onChangeView
|
|
16
15
|
}) {
|
|
17
|
-
const
|
|
16
|
+
const filterIndex = {};
|
|
18
17
|
fields.forEach(field => {
|
|
19
18
|
if (!field.filters) {
|
|
20
19
|
return;
|
|
21
20
|
}
|
|
22
|
-
field.filters.forEach(
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
21
|
+
field.filters.forEach(filter => {
|
|
22
|
+
let id = field.id;
|
|
23
|
+
if ('string' === typeof filter) {
|
|
24
|
+
filterIndex[id] = {
|
|
25
|
+
id,
|
|
26
|
+
name: field.header,
|
|
27
|
+
type: filter
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
if ('object' === typeof filter) {
|
|
31
|
+
id = filter.id || field.id;
|
|
32
|
+
filterIndex[id] = {
|
|
33
|
+
id,
|
|
34
|
+
name: filter.name || field.header,
|
|
35
|
+
type: filter.type
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
if ('enumeration' === filterIndex[id]?.type) {
|
|
39
|
+
const elements = [{
|
|
40
|
+
value: filter.resetValue || '',
|
|
41
|
+
label: filter.resetLabel || __('All')
|
|
42
|
+
}, ...(field.elements || [])];
|
|
43
|
+
filterIndex[id] = {
|
|
44
|
+
...filterIndex[id],
|
|
45
|
+
elements
|
|
46
|
+
};
|
|
47
|
+
}
|
|
26
48
|
});
|
|
27
49
|
});
|
|
28
50
|
return view.visibleFilters?.map(filterName => {
|
|
29
|
-
const filter =
|
|
51
|
+
const filter = filterIndex[filterName];
|
|
30
52
|
if (!filter) {
|
|
31
53
|
return null;
|
|
32
54
|
}
|
|
33
|
-
if (filter.type === 'search') {
|
|
34
|
-
return createElement(TextFilter, {
|
|
35
|
-
key: filterName,
|
|
36
|
-
id: filterName,
|
|
37
|
-
view: view,
|
|
38
|
-
onChangeView: onChangeView
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
55
|
if (filter.type === 'enumeration') {
|
|
42
56
|
return createElement(InFilter, {
|
|
43
57
|
key: filterName,
|
|
44
|
-
|
|
45
|
-
fields: fields,
|
|
58
|
+
filter: filter,
|
|
46
59
|
view: view,
|
|
47
60
|
onChangeView: onChangeView
|
|
48
61
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","
|
|
1
|
+
{"version":3,"names":["__","InFilter","Filters","fields","view","onChangeView","filterIndex","forEach","field","filters","filter","id","name","header","type","elements","value","resetValue","label","resetLabel","visibleFilters","map","filterName","createElement","key"],"sources":["@wordpress/edit-site/src/components/dataviews/filters.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport InFilter from './in-filter';\n\nexport default function Filters( { fields, view, onChangeView } ) {\n\tconst filterIndex = {};\n\tfields.forEach( ( field ) => {\n\t\tif ( ! field.filters ) {\n\t\t\treturn;\n\t\t}\n\n\t\tfield.filters.forEach( ( filter ) => {\n\t\t\tlet id = field.id;\n\t\t\tif ( 'string' === typeof filter ) {\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: field.header,\n\t\t\t\t\ttype: filter,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'object' === typeof filter ) {\n\t\t\t\tid = filter.id || field.id;\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\tid,\n\t\t\t\t\tname: filter.name || field.header,\n\t\t\t\t\ttype: filter.type,\n\t\t\t\t};\n\t\t\t}\n\n\t\t\tif ( 'enumeration' === filterIndex[ id ]?.type ) {\n\t\t\t\tconst elements = [\n\t\t\t\t\t{\n\t\t\t\t\t\tvalue: filter.resetValue || '',\n\t\t\t\t\t\tlabel: filter.resetLabel || __( 'All' ),\n\t\t\t\t\t},\n\t\t\t\t\t...( field.elements || [] ),\n\t\t\t\t];\n\t\t\t\tfilterIndex[ id ] = {\n\t\t\t\t\t...filterIndex[ id ],\n\t\t\t\t\telements,\n\t\t\t\t};\n\t\t\t}\n\t\t} );\n\t} );\n\n\treturn (\n\t\tview.visibleFilters?.map( ( filterName ) => {\n\t\t\tconst filter = filterIndex[ filterName ];\n\n\t\t\tif ( ! filter ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\tif ( filter.type === 'enumeration' ) {\n\t\t\t\treturn (\n\t\t\t\t\t<InFilter\n\t\t\t\t\t\tkey={ filterName }\n\t\t\t\t\t\tfilter={ filter }\n\t\t\t\t\t\tview={ view }\n\t\t\t\t\t\tonChangeView={ onChangeView }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t}\n\n\t\t\treturn null;\n\t\t} ) || __( 'No filters available' )\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;;AAEpC;AACA;AACA;AACA,OAAOC,QAAQ,MAAM,aAAa;AAElC,eAAe,SAASC,OAAOA,CAAE;EAAEC,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EACjE,MAAMC,WAAW,GAAG,CAAC,CAAC;EACtBH,MAAM,CAACI,OAAO,CAAIC,KAAK,IAAM;IAC5B,IAAK,CAAEA,KAAK,CAACC,OAAO,EAAG;MACtB;IACD;IAEAD,KAAK,CAACC,OAAO,CAACF,OAAO,CAAIG,MAAM,IAAM;MACpC,IAAIC,EAAE,GAAGH,KAAK,CAACG,EAAE;MACjB,IAAK,QAAQ,KAAK,OAAOD,MAAM,EAAG;QACjCJ,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEJ,KAAK,CAACK,MAAM;UAClBC,IAAI,EAAEJ;QACP,CAAC;MACF;MAEA,IAAK,QAAQ,KAAK,OAAOA,MAAM,EAAG;QACjCC,EAAE,GAAGD,MAAM,CAACC,EAAE,IAAIH,KAAK,CAACG,EAAE;QAC1BL,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnBA,EAAE;UACFC,IAAI,EAAEF,MAAM,CAACE,IAAI,IAAIJ,KAAK,CAACK,MAAM;UACjCC,IAAI,EAAEJ,MAAM,CAACI;QACd,CAAC;MACF;MAEA,IAAK,aAAa,KAAKR,WAAW,CAAEK,EAAE,CAAE,EAAEG,IAAI,EAAG;QAChD,MAAMC,QAAQ,GAAG,CAChB;UACCC,KAAK,EAAEN,MAAM,CAACO,UAAU,IAAI,EAAE;UAC9BC,KAAK,EAAER,MAAM,CAACS,UAAU,IAAInB,EAAE,CAAE,KAAM;QACvC,CAAC,EACD,IAAKQ,KAAK,CAACO,QAAQ,IAAI,EAAE,CAAE,CAC3B;QACDT,WAAW,CAAEK,EAAE,CAAE,GAAG;UACnB,GAAGL,WAAW,CAAEK,EAAE,CAAE;UACpBI;QACD,CAAC;MACF;IACD,CAAE,CAAC;EACJ,CAAE,CAAC;EAEH,OACCX,IAAI,CAACgB,cAAc,EAAEC,GAAG,CAAIC,UAAU,IAAM;IAC3C,MAAMZ,MAAM,GAAGJ,WAAW,CAAEgB,UAAU,CAAE;IAExC,IAAK,CAAEZ,MAAM,EAAG;MACf,OAAO,IAAI;IACZ;IAEA,IAAKA,MAAM,CAACI,IAAI,KAAK,aAAa,EAAG;MACpC,OACCS,aAAA,CAACtB,QAAQ;QACRuB,GAAG,EAAGF,UAAY;QAClBZ,MAAM,EAAGA,MAAQ;QACjBN,IAAI,EAAGA,IAAM;QACbC,YAAY,EAAGA;MAAc,CAC7B,CAAC;IAEJ;IAEA,OAAO,IAAI;EACZ,CAAE,CAAC,IAAIL,EAAE,CAAE,sBAAuB,CAAC;AAErC"}
|
|
@@ -13,19 +13,17 @@ const {
|
|
|
13
13
|
cleanEmptyObject
|
|
14
14
|
} = unlock(blockEditorPrivateApis);
|
|
15
15
|
export default (({
|
|
16
|
-
|
|
17
|
-
fields,
|
|
16
|
+
filter,
|
|
18
17
|
view,
|
|
19
18
|
onChangeView
|
|
20
19
|
}) => {
|
|
21
|
-
const field = fields.find(f => f.id === id);
|
|
22
20
|
return createElement(SelectControl, {
|
|
23
|
-
value: view.filters[id],
|
|
21
|
+
value: view.filters[filter.id],
|
|
24
22
|
prefix: createElement(InputControlPrefixWrapper, {
|
|
25
23
|
as: "span",
|
|
26
24
|
className: "dataviews__select-control-prefix"
|
|
27
|
-
},
|
|
28
|
-
options:
|
|
25
|
+
}, filter.name + ':'),
|
|
26
|
+
options: filter.elements,
|
|
29
27
|
onChange: value => {
|
|
30
28
|
if (value === '') {
|
|
31
29
|
value = undefined;
|
|
@@ -34,7 +32,7 @@ export default (({
|
|
|
34
32
|
...currentView,
|
|
35
33
|
filters: cleanEmptyObject({
|
|
36
34
|
...currentView.filters,
|
|
37
|
-
[id]: value
|
|
35
|
+
[filter.id]: value
|
|
38
36
|
})
|
|
39
37
|
}));
|
|
40
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalInputControlPrefixWrapper","InputControlPrefixWrapper","SelectControl","privateApis","blockEditorPrivateApis","unlock","cleanEmptyObject","
|
|
1
|
+
{"version":3,"names":["__experimentalInputControlPrefixWrapper","InputControlPrefixWrapper","SelectControl","privateApis","blockEditorPrivateApis","unlock","cleanEmptyObject","filter","view","onChangeView","createElement","value","filters","id","prefix","as","className","name","options","elements","onChange","undefined","currentView"],"sources":["@wordpress/edit-site/src/components/dataviews/in-filter.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\t__experimentalInputControlPrefixWrapper as InputControlPrefixWrapper,\n\tSelectControl,\n} from '@wordpress/components';\nimport { privateApis as blockEditorPrivateApis } from '@wordpress/block-editor';\n\n/**\n * Internal dependencies\n */\nimport { unlock } from '../../lock-unlock';\n\nconst { cleanEmptyObject } = unlock( blockEditorPrivateApis );\n\nexport default ( { filter, view, onChangeView } ) => {\n\treturn (\n\t\t<SelectControl\n\t\t\tvalue={ view.filters[ filter.id ] }\n\t\t\tprefix={\n\t\t\t\t<InputControlPrefixWrapper\n\t\t\t\t\tas=\"span\"\n\t\t\t\t\tclassName=\"dataviews__select-control-prefix\"\n\t\t\t\t>\n\t\t\t\t\t{ filter.name + ':' }\n\t\t\t\t</InputControlPrefixWrapper>\n\t\t\t}\n\t\t\toptions={ filter.elements }\n\t\t\tonChange={ ( value ) => {\n\t\t\t\tif ( value === '' ) {\n\t\t\t\t\tvalue = undefined;\n\t\t\t\t}\n\n\t\t\t\tonChangeView( ( currentView ) => ( {\n\t\t\t\t\t...currentView,\n\t\t\t\t\tfilters: cleanEmptyObject( {\n\t\t\t\t\t\t...currentView.filters,\n\t\t\t\t\t\t[ filter.id ]: value,\n\t\t\t\t\t} ),\n\t\t\t\t} ) );\n\t\t\t} }\n\t\t/>\n\t);\n};\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,uCAAuC,IAAIC,yBAAyB,EACpEC,aAAa,QACP,uBAAuB;AAC9B,SAASC,WAAW,IAAIC,sBAAsB,QAAQ,yBAAyB;;AAE/E;AACA;AACA;AACA,SAASC,MAAM,QAAQ,mBAAmB;AAE1C,MAAM;EAAEC;AAAiB,CAAC,GAAGD,MAAM,CAAED,sBAAuB,CAAC;AAE7D,gBAAe,CAAE;EAAEG,MAAM;EAAEC,IAAI;EAAEC;AAAa,CAAC,KAAM;EACpD,OACCC,aAAA,CAACR,aAAa;IACbS,KAAK,EAAGH,IAAI,CAACI,OAAO,CAAEL,MAAM,CAACM,EAAE,CAAI;IACnCC,MAAM,EACLJ,aAAA,CAACT,yBAAyB;MACzBc,EAAE,EAAC,MAAM;MACTC,SAAS,EAAC;IAAkC,GAE1CT,MAAM,CAACU,IAAI,GAAG,GACU,CAC3B;IACDC,OAAO,EAAGX,MAAM,CAACY,QAAU;IAC3BC,QAAQ,EAAKT,KAAK,IAAM;MACvB,IAAKA,KAAK,KAAK,EAAE,EAAG;QACnBA,KAAK,GAAGU,SAAS;MAClB;MAEAZ,YAAY,CAAIa,WAAW,KAAQ;QAClC,GAAGA,WAAW;QACdV,OAAO,EAAEN,gBAAgB,CAAE;UAC1B,GAAGgB,WAAW,CAACV,OAAO;UACtB,CAAEL,MAAM,CAACM,EAAE,GAAIF;QAChB,CAAE;MACH,CAAC,CAAG,CAAC;IACN;EAAG,CACH,CAAC;AAEJ,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { createElement } from "react";
|
|
2
|
+
/**
|
|
3
|
+
* WordPress dependencies
|
|
4
|
+
*/
|
|
5
|
+
import { DropdownMenu, MenuGroup, MenuItem, Button, __experimentalHStack as HStack } from '@wordpress/components';
|
|
6
|
+
import { __ } from '@wordpress/i18n';
|
|
7
|
+
import { useMemo } from '@wordpress/element';
|
|
8
|
+
import { moreVertical } from '@wordpress/icons';
|
|
9
|
+
export default function ItemActions({
|
|
10
|
+
item,
|
|
11
|
+
actions
|
|
12
|
+
}) {
|
|
13
|
+
const {
|
|
14
|
+
primaryActions,
|
|
15
|
+
secondaryActions
|
|
16
|
+
} = useMemo(() => {
|
|
17
|
+
return actions.reduce((accumulator, action) => {
|
|
18
|
+
// If an action is eligible for all items, doesn't need
|
|
19
|
+
// to provide the `isEligible` function.
|
|
20
|
+
if (action.isEligible && !action.isEligible(item)) {
|
|
21
|
+
return accumulator;
|
|
22
|
+
}
|
|
23
|
+
if (action.isPrimary && !!action.icon) {
|
|
24
|
+
accumulator.primaryActions.push(action);
|
|
25
|
+
} else {
|
|
26
|
+
accumulator.secondaryActions.push(action);
|
|
27
|
+
}
|
|
28
|
+
return accumulator;
|
|
29
|
+
}, {
|
|
30
|
+
primaryActions: [],
|
|
31
|
+
secondaryActions: []
|
|
32
|
+
});
|
|
33
|
+
}, [actions, item]);
|
|
34
|
+
if (!primaryActions.length && !secondaryActions.length) {
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
return createElement(HStack, {
|
|
38
|
+
justify: "flex-end"
|
|
39
|
+
}, !!primaryActions.length && primaryActions.map(action => createElement(Button, {
|
|
40
|
+
label: action.label,
|
|
41
|
+
key: action.id,
|
|
42
|
+
icon: action.icon,
|
|
43
|
+
onClick: () => action.perform(item),
|
|
44
|
+
isDestructive: action.isDestructive,
|
|
45
|
+
size: "compact"
|
|
46
|
+
})), !!secondaryActions.length && createElement(DropdownMenu, {
|
|
47
|
+
icon: moreVertical,
|
|
48
|
+
label: __('Actions')
|
|
49
|
+
}, () => createElement(MenuGroup, null, secondaryActions.map(action => createElement(MenuItem, {
|
|
50
|
+
key: action.id,
|
|
51
|
+
onClick: () => action.perform(item),
|
|
52
|
+
isDestructive: action.isDestructive
|
|
53
|
+
}, action.label)))));
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=item-actions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DropdownMenu","MenuGroup","MenuItem","Button","__experimentalHStack","HStack","__","useMemo","moreVertical","ItemActions","item","actions","primaryActions","secondaryActions","reduce","accumulator","action","isEligible","isPrimary","icon","push","length","createElement","justify","map","label","key","id","onClick","perform","isDestructive","size"],"sources":["@wordpress/edit-site/src/components/dataviews/item-actions.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tDropdownMenu,\n\tMenuGroup,\n\tMenuItem,\n\tButton,\n\t__experimentalHStack as HStack,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { useMemo } from '@wordpress/element';\nimport { moreVertical } from '@wordpress/icons';\n\nexport default function ItemActions( { item, actions } ) {\n\tconst { primaryActions, secondaryActions } = useMemo( () => {\n\t\treturn actions.reduce(\n\t\t\t( accumulator, action ) => {\n\t\t\t\t// If an action is eligible for all items, doesn't need\n\t\t\t\t// to provide the `isEligible` function.\n\t\t\t\tif ( action.isEligible && ! action.isEligible( item ) ) {\n\t\t\t\t\treturn accumulator;\n\t\t\t\t}\n\t\t\t\tif ( action.isPrimary && !! action.icon ) {\n\t\t\t\t\taccumulator.primaryActions.push( action );\n\t\t\t\t} else {\n\t\t\t\t\taccumulator.secondaryActions.push( action );\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t},\n\t\t\t{ primaryActions: [], secondaryActions: [] }\n\t\t);\n\t}, [ actions, item ] );\n\tif ( ! primaryActions.length && ! secondaryActions.length ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<HStack justify=\"flex-end\">\n\t\t\t{ !! primaryActions.length &&\n\t\t\t\tprimaryActions.map( ( action ) => (\n\t\t\t\t\t<Button\n\t\t\t\t\t\tlabel={ action.label }\n\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\ticon={ action.icon }\n\t\t\t\t\t\tonClick={ () => action.perform( item ) }\n\t\t\t\t\t\tisDestructive={ action.isDestructive }\n\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t/>\n\t\t\t\t) ) }\n\t\t\t{ !! secondaryActions.length && (\n\t\t\t\t<DropdownMenu icon={ moreVertical } label={ __( 'Actions' ) }>\n\t\t\t\t\t{ () => (\n\t\t\t\t\t\t<MenuGroup>\n\t\t\t\t\t\t\t{ secondaryActions.map( ( action ) => (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tkey={ action.id }\n\t\t\t\t\t\t\t\t\tonClick={ () => action.perform( item ) }\n\t\t\t\t\t\t\t\t\tisDestructive={ action.isDestructive }\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ action.label }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t) ) }\n\t\t\t\t\t\t</MenuGroup>\n\t\t\t\t\t) }\n\t\t\t\t</DropdownMenu>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SACCA,YAAY,EACZC,SAAS,EACTC,QAAQ,EACRC,MAAM,EACNC,oBAAoB,IAAIC,MAAM,QACxB,uBAAuB;AAC9B,SAASC,EAAE,QAAQ,iBAAiB;AACpC,SAASC,OAAO,QAAQ,oBAAoB;AAC5C,SAASC,YAAY,QAAQ,kBAAkB;AAE/C,eAAe,SAASC,WAAWA,CAAE;EAAEC,IAAI;EAAEC;AAAQ,CAAC,EAAG;EACxD,MAAM;IAAEC,cAAc;IAAEC;EAAiB,CAAC,GAAGN,OAAO,CAAE,MAAM;IAC3D,OAAOI,OAAO,CAACG,MAAM,CACpB,CAAEC,WAAW,EAAEC,MAAM,KAAM;MAC1B;MACA;MACA,IAAKA,MAAM,CAACC,UAAU,IAAI,CAAED,MAAM,CAACC,UAAU,CAAEP,IAAK,CAAC,EAAG;QACvD,OAAOK,WAAW;MACnB;MACA,IAAKC,MAAM,CAACE,SAAS,IAAI,CAAC,CAAEF,MAAM,CAACG,IAAI,EAAG;QACzCJ,WAAW,CAACH,cAAc,CAACQ,IAAI,CAAEJ,MAAO,CAAC;MAC1C,CAAC,MAAM;QACND,WAAW,CAACF,gBAAgB,CAACO,IAAI,CAAEJ,MAAO,CAAC;MAC5C;MACA,OAAOD,WAAW;IACnB,CAAC,EACD;MAAEH,cAAc,EAAE,EAAE;MAAEC,gBAAgB,EAAE;IAAG,CAC5C,CAAC;EACF,CAAC,EAAE,CAAEF,OAAO,EAAED,IAAI,CAAG,CAAC;EACtB,IAAK,CAAEE,cAAc,CAACS,MAAM,IAAI,CAAER,gBAAgB,CAACQ,MAAM,EAAG;IAC3D,OAAO,IAAI;EACZ;EACA,OACCC,aAAA,CAACjB,MAAM;IAACkB,OAAO,EAAC;EAAU,GACvB,CAAC,CAAEX,cAAc,CAACS,MAAM,IACzBT,cAAc,CAACY,GAAG,CAAIR,MAAM,IAC3BM,aAAA,CAACnB,MAAM;IACNsB,KAAK,EAAGT,MAAM,CAACS,KAAO;IACtBC,GAAG,EAAGV,MAAM,CAACW,EAAI;IACjBR,IAAI,EAAGH,MAAM,CAACG,IAAM;IACpBS,OAAO,EAAGA,CAAA,KAAMZ,MAAM,CAACa,OAAO,CAAEnB,IAAK,CAAG;IACxCoB,aAAa,EAAGd,MAAM,CAACc,aAAe;IACtCC,IAAI,EAAC;EAAS,CACd,CACA,CAAC,EACF,CAAC,CAAElB,gBAAgB,CAACQ,MAAM,IAC3BC,aAAA,CAACtB,YAAY;IAACmB,IAAI,EAAGX,YAAc;IAACiB,KAAK,EAAGnB,EAAE,CAAE,SAAU;EAAG,GAC1D,MACDgB,aAAA,CAACrB,SAAS,QACPY,gBAAgB,CAACW,GAAG,CAAIR,MAAM,IAC/BM,aAAA,CAACpB,QAAQ;IACRwB,GAAG,EAAGV,MAAM,CAACW,EAAI;IACjBC,OAAO,EAAGA,CAAA,KAAMZ,MAAM,CAACa,OAAO,CAAEnB,IAAK,CAAG;IACxCoB,aAAa,EAAGd,MAAM,CAACc;EAAe,GAEpCd,MAAM,CAACS,KACA,CACT,CACQ,CAEC,CAER,CAAC;AAEX"}
|
|
@@ -2,42 +2,10 @@ import { createElement } from "react";
|
|
|
2
2
|
/**
|
|
3
3
|
* WordPress dependencies
|
|
4
4
|
*/
|
|
5
|
-
import { Button, __experimentalHStack as HStack, __experimentalText as Text, __experimentalNumberControl as NumberControl
|
|
5
|
+
import { Button, __experimentalHStack as HStack, __experimentalText as Text, __experimentalNumberControl as NumberControl } from '@wordpress/components';
|
|
6
6
|
import { createInterpolateElement } from '@wordpress/element';
|
|
7
7
|
import { sprintf, __, _x, _n } from '@wordpress/i18n';
|
|
8
|
-
|
|
9
|
-
function PageSizeControl({
|
|
10
|
-
view,
|
|
11
|
-
onChangeView
|
|
12
|
-
}) {
|
|
13
|
-
const label = __('Rows per page:');
|
|
14
|
-
return createElement(SelectControl, {
|
|
15
|
-
__nextHasNoMarginBottom: true,
|
|
16
|
-
label: label,
|
|
17
|
-
hideLabelFromVision: true
|
|
18
|
-
// TODO: This should probably use a label based on the wanted design
|
|
19
|
-
// and we could remove InputControlPrefixWrapper usage.
|
|
20
|
-
,
|
|
21
|
-
prefix: createElement(InputControlPrefixWrapper, {
|
|
22
|
-
as: "span",
|
|
23
|
-
className: "dataviews__select-control-prefix"
|
|
24
|
-
}, label),
|
|
25
|
-
value: view.perPage,
|
|
26
|
-
options: PAGE_SIZE_VALUES.map(pageSize => ({
|
|
27
|
-
value: pageSize,
|
|
28
|
-
label: pageSize
|
|
29
|
-
})),
|
|
30
|
-
onChange: value => onChangeView({
|
|
31
|
-
...view,
|
|
32
|
-
perPage: value,
|
|
33
|
-
page: 1
|
|
34
|
-
})
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// For now this is copied from the patterns list Pagination component, because
|
|
39
|
-
// the datatable pagination starts from index zero(`0`). Eventually all lists will be
|
|
40
|
-
// using this one.
|
|
8
|
+
import { chevronRight, chevronLeft, previous, next } from '@wordpress/icons';
|
|
41
9
|
function Pagination({
|
|
42
10
|
view,
|
|
43
11
|
onChangeView,
|
|
@@ -61,28 +29,36 @@ function Pagination({
|
|
|
61
29
|
sprintf(
|
|
62
30
|
// translators: %s: Total number of entries.
|
|
63
31
|
_n('%s item', '%s items', totalItems), totalItems)), !!totalItems && createElement(HStack, {
|
|
32
|
+
expanded: false,
|
|
33
|
+
spacing: 3
|
|
34
|
+
}, createElement(HStack, {
|
|
35
|
+
justify: "flex-start",
|
|
64
36
|
expanded: false,
|
|
65
37
|
spacing: 1
|
|
66
38
|
}, createElement(Button, {
|
|
67
|
-
variant: "tertiary",
|
|
68
39
|
onClick: () => onChangeView({
|
|
69
40
|
...view,
|
|
70
41
|
page: 1
|
|
71
42
|
}),
|
|
72
43
|
disabled: view.page === 1,
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
44
|
+
label: __('First page'),
|
|
45
|
+
icon: previous,
|
|
46
|
+
showTooltip: true,
|
|
47
|
+
size: "compact"
|
|
48
|
+
}), createElement(Button, {
|
|
76
49
|
onClick: () => onChangeView({
|
|
77
50
|
...view,
|
|
78
51
|
page: view.page - 1
|
|
79
52
|
}),
|
|
80
53
|
disabled: view.page === 1,
|
|
81
|
-
|
|
82
|
-
|
|
54
|
+
label: __('Previous page'),
|
|
55
|
+
icon: chevronLeft,
|
|
56
|
+
showTooltip: true,
|
|
57
|
+
size: "compact"
|
|
58
|
+
})), createElement(HStack, {
|
|
83
59
|
justify: "flex-start",
|
|
84
60
|
expanded: false,
|
|
85
|
-
spacing:
|
|
61
|
+
spacing: 2
|
|
86
62
|
}, createInterpolateElement(sprintf(
|
|
87
63
|
// translators: %1$s: Current page number, %2$s: Total number of pages.
|
|
88
64
|
_x('<CurrenPageControl /> of %2$s', 'paging'), view.page, totalPages), {
|
|
@@ -104,26 +80,31 @@ function Pagination({
|
|
|
104
80
|
isDragEnabled: false,
|
|
105
81
|
spinControls: "none"
|
|
106
82
|
})
|
|
107
|
-
})), createElement(
|
|
108
|
-
|
|
83
|
+
})), createElement(HStack, {
|
|
84
|
+
justify: "flex-start",
|
|
85
|
+
expanded: false,
|
|
86
|
+
spacing: 1
|
|
87
|
+
}, createElement(Button, {
|
|
109
88
|
onClick: () => onChangeView({
|
|
110
89
|
...view,
|
|
111
90
|
page: view.page + 1
|
|
112
91
|
}),
|
|
113
92
|
disabled: view.page >= totalPages,
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
93
|
+
label: __('Next page'),
|
|
94
|
+
icon: chevronRight,
|
|
95
|
+
showTooltip: true,
|
|
96
|
+
size: "compact"
|
|
97
|
+
}), createElement(Button, {
|
|
117
98
|
onClick: () => onChangeView({
|
|
118
99
|
...view,
|
|
119
100
|
page: totalPages
|
|
120
101
|
}),
|
|
121
102
|
disabled: view.page >= totalPages,
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
}));
|
|
103
|
+
label: __('Last page'),
|
|
104
|
+
icon: next,
|
|
105
|
+
showTooltip: true,
|
|
106
|
+
size: "compact"
|
|
107
|
+
}))));
|
|
127
108
|
}
|
|
128
109
|
export default Pagination;
|
|
129
110
|
//# sourceMappingURL=pagination.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Button","__experimentalHStack","HStack","__experimentalText","Text","__experimentalNumberControl","NumberControl","
|
|
1
|
+
{"version":3,"names":["Button","__experimentalHStack","HStack","__experimentalText","Text","__experimentalNumberControl","NumberControl","createInterpolateElement","sprintf","__","_x","_n","chevronRight","chevronLeft","previous","next","Pagination","view","onChangeView","paginationInfo","totalItems","totalPages","createElement","expanded","spacing","justify","className","variant","onClick","page","disabled","label","icon","showTooltip","size","CurrenPageControl","min","max","onChange","value","step","isDragEnabled","spinControls"],"sources":["@wordpress/edit-site/src/components/dataviews/pagination.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tButton,\n\t__experimentalHStack as HStack,\n\t__experimentalText as Text,\n\t__experimentalNumberControl as NumberControl,\n} from '@wordpress/components';\nimport { createInterpolateElement } from '@wordpress/element';\nimport { sprintf, __, _x, _n } from '@wordpress/i18n';\nimport { chevronRight, chevronLeft, previous, next } from '@wordpress/icons';\n\nfunction Pagination( {\n\tview,\n\tonChangeView,\n\tpaginationInfo: { totalItems = 0, totalPages },\n} ) {\n\tif ( ! totalItems || ! totalPages ) {\n\t\treturn null;\n\t}\n\treturn (\n\t\t<HStack\n\t\t\texpanded={ false }\n\t\t\tspacing={ 3 }\n\t\t\tjustify=\"space-between\"\n\t\t\tclassName=\"dataviews-pagination\"\n\t\t>\n\t\t\t<Text variant=\"muted\">\n\t\t\t\t{\n\t\t\t\t\t// translators: %s: Total number of entries.\n\t\t\t\t\tsprintf(\n\t\t\t\t\t\t// translators: %s: Total number of entries.\n\t\t\t\t\t\t_n( '%s item', '%s items', totalItems ),\n\t\t\t\t\t\ttotalItems\n\t\t\t\t\t)\n\t\t\t\t}\n\t\t\t</Text>\n\t\t\t{ !! totalItems && (\n\t\t\t\t<HStack expanded={ false } spacing={ 3 }>\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\tspacing={ 1 }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonChangeView( { ...view, page: 1 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ view.page === 1 }\n\t\t\t\t\t\t\tlabel={ __( 'First page' ) }\n\t\t\t\t\t\t\ticon={ previous }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonChangeView( { ...view, page: view.page - 1 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ view.page === 1 }\n\t\t\t\t\t\t\tlabel={ __( 'Previous page' ) }\n\t\t\t\t\t\t\ticon={ chevronLeft }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\tspacing={ 2 }\n\t\t\t\t\t>\n\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\tsprintf(\n\t\t\t\t\t\t\t\t// translators: %1$s: Current page number, %2$s: Total number of pages.\n\t\t\t\t\t\t\t\t_x( '<CurrenPageControl /> of %2$s', 'paging' ),\n\t\t\t\t\t\t\t\tview.page,\n\t\t\t\t\t\t\t\ttotalPages\n\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tCurrenPageControl: (\n\t\t\t\t\t\t\t\t\t<NumberControl\n\t\t\t\t\t\t\t\t\t\taria-label={ __( 'Current page' ) }\n\t\t\t\t\t\t\t\t\t\tmin={ 1 }\n\t\t\t\t\t\t\t\t\t\tmax={ totalPages }\n\t\t\t\t\t\t\t\t\t\tonChange={ ( value ) => {\n\t\t\t\t\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t\t\t\t\t! value ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue < 1 ||\n\t\t\t\t\t\t\t\t\t\t\t\tvalue > totalPages\n\t\t\t\t\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\t\t\t\t\treturn;\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tonChangeView( {\n\t\t\t\t\t\t\t\t\t\t\t\t...view,\n\t\t\t\t\t\t\t\t\t\t\t\tpage: value,\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\tstep=\"1\"\n\t\t\t\t\t\t\t\t\t\tvalue={ view.page }\n\t\t\t\t\t\t\t\t\t\tisDragEnabled={ false }\n\t\t\t\t\t\t\t\t\t\tspinControls=\"none\"\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) }\n\t\t\t\t\t</HStack>\n\t\t\t\t\t<HStack\n\t\t\t\t\t\tjustify=\"flex-start\"\n\t\t\t\t\t\texpanded={ false }\n\t\t\t\t\t\tspacing={ 1 }\n\t\t\t\t\t>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonChangeView( { ...view, page: view.page + 1 } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ view.page >= totalPages }\n\t\t\t\t\t\t\tlabel={ __( 'Next page' ) }\n\t\t\t\t\t\t\ticon={ chevronRight }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\tonClick={ () =>\n\t\t\t\t\t\t\t\tonChangeView( { ...view, page: totalPages } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tdisabled={ view.page >= totalPages }\n\t\t\t\t\t\t\tlabel={ __( 'Last page' ) }\n\t\t\t\t\t\t\ticon={ next }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t\tsize=\"compact\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t</HStack>\n\t\t\t\t</HStack>\n\t\t\t) }\n\t\t</HStack>\n\t);\n}\n\nexport default Pagination;\n"],"mappings":"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"}
|
|
@@ -10,12 +10,15 @@ import { SearchControl } from '@wordpress/components';
|
|
|
10
10
|
* Internal dependencies
|
|
11
11
|
*/
|
|
12
12
|
import useDebouncedInput from '../../utils/use-debounced-input';
|
|
13
|
-
export default function
|
|
14
|
-
|
|
13
|
+
export default function Search({
|
|
14
|
+
label,
|
|
15
15
|
view,
|
|
16
16
|
onChangeView
|
|
17
17
|
}) {
|
|
18
|
-
const [search, setSearch, debouncedSearch] = useDebouncedInput(view.
|
|
18
|
+
const [search, setSearch, debouncedSearch] = useDebouncedInput(view.search);
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
setSearch(view.search);
|
|
21
|
+
}, [view]);
|
|
19
22
|
const onChangeViewRef = useRef(onChangeView);
|
|
20
23
|
useEffect(() => {
|
|
21
24
|
onChangeViewRef.current = onChangeView;
|
|
@@ -24,13 +27,10 @@ export default function TextFilter({
|
|
|
24
27
|
onChangeViewRef.current(currentView => ({
|
|
25
28
|
...currentView,
|
|
26
29
|
page: 1,
|
|
27
|
-
|
|
28
|
-
...currentView.filters,
|
|
29
|
-
[id]: debouncedSearch
|
|
30
|
-
}
|
|
30
|
+
search: debouncedSearch
|
|
31
31
|
}));
|
|
32
32
|
}, [debouncedSearch]);
|
|
33
|
-
const searchLabel = __('Filter list');
|
|
33
|
+
const searchLabel = label || __('Filter list');
|
|
34
34
|
return createElement(SearchControl, {
|
|
35
35
|
onChange: setSearch,
|
|
36
36
|
value: search,
|
|
@@ -39,4 +39,4 @@ export default function TextFilter({
|
|
|
39
39
|
size: "compact"
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
|
-
//# sourceMappingURL=
|
|
42
|
+
//# sourceMappingURL=search.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["__","useEffect","useRef","SearchControl","useDebouncedInput","Search","label","view","onChangeView","search","setSearch","debouncedSearch","onChangeViewRef","current","currentView","page","searchLabel","createElement","onChange","value","placeholder","size"],"sources":["@wordpress/edit-site/src/components/dataviews/search.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { useEffect, useRef } from '@wordpress/element';\nimport { SearchControl } from '@wordpress/components';\n\n/**\n * Internal dependencies\n */\nimport useDebouncedInput from '../../utils/use-debounced-input';\n\nexport default function Search( { label, view, onChangeView } ) {\n\tconst [ search, setSearch, debouncedSearch ] = useDebouncedInput(\n\t\tview.search\n\t);\n\tuseEffect( () => {\n\t\tsetSearch( view.search );\n\t}, [ view ] );\n\tconst onChangeViewRef = useRef( onChangeView );\n\tuseEffect( () => {\n\t\tonChangeViewRef.current = onChangeView;\n\t}, [ onChangeView ] );\n\tuseEffect( () => {\n\t\tonChangeViewRef.current( ( currentView ) => ( {\n\t\t\t...currentView,\n\t\t\tpage: 1,\n\t\t\tsearch: debouncedSearch,\n\t\t} ) );\n\t}, [ debouncedSearch ] );\n\tconst searchLabel = label || __( 'Filter list' );\n\treturn (\n\t\t<SearchControl\n\t\t\tonChange={ setSearch }\n\t\t\tvalue={ search }\n\t\t\tlabel={ searchLabel }\n\t\t\tplaceholder={ searchLabel }\n\t\t\tsize=\"compact\"\n\t\t/>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,SAAS,EAAEC,MAAM,QAAQ,oBAAoB;AACtD,SAASC,aAAa,QAAQ,uBAAuB;;AAErD;AACA;AACA;AACA,OAAOC,iBAAiB,MAAM,iCAAiC;AAE/D,eAAe,SAASC,MAAMA,CAAE;EAAEC,KAAK;EAAEC,IAAI;EAAEC;AAAa,CAAC,EAAG;EAC/D,MAAM,CAAEC,MAAM,EAAEC,SAAS,EAAEC,eAAe,CAAE,GAAGP,iBAAiB,CAC/DG,IAAI,CAACE,MACN,CAAC;EACDR,SAAS,CAAE,MAAM;IAChBS,SAAS,CAAEH,IAAI,CAACE,MAAO,CAAC;EACzB,CAAC,EAAE,CAAEF,IAAI,CAAG,CAAC;EACb,MAAMK,eAAe,GAAGV,MAAM,CAAEM,YAAa,CAAC;EAC9CP,SAAS,CAAE,MAAM;IAChBW,eAAe,CAACC,OAAO,GAAGL,YAAY;EACvC,CAAC,EAAE,CAAEA,YAAY,CAAG,CAAC;EACrBP,SAAS,CAAE,MAAM;IAChBW,eAAe,CAACC,OAAO,CAAIC,WAAW,KAAQ;MAC7C,GAAGA,WAAW;MACdC,IAAI,EAAE,CAAC;MACPN,MAAM,EAAEE;IACT,CAAC,CAAG,CAAC;EACN,CAAC,EAAE,CAAEA,eAAe,CAAG,CAAC;EACxB,MAAMK,WAAW,GAAGV,KAAK,IAAIN,EAAE,CAAE,aAAc,CAAC;EAChD,OACCiB,aAAA,CAACd,aAAa;IACbe,QAAQ,EAAGR,SAAW;IACtBS,KAAK,EAAGV,MAAQ;IAChBH,KAAK,EAAGU,WAAa;IACrBI,WAAW,EAAGJ,WAAa;IAC3BK,IAAI,EAAC;EAAS,CACd,CAAC;AAEJ"}
|
|
@@ -7,7 +7,7 @@ import { __experimentalGrid as Grid, __experimentalHStack as HStack, __experimen
|
|
|
7
7
|
/**
|
|
8
8
|
* Internal dependencies
|
|
9
9
|
*/
|
|
10
|
-
import
|
|
10
|
+
import ItemActions from './item-actions';
|
|
11
11
|
export function ViewGrid({
|
|
12
12
|
data,
|
|
13
13
|
fields,
|
|
@@ -42,10 +42,10 @@ export function ViewGrid({
|
|
|
42
42
|
}, field.render({
|
|
43
43
|
item,
|
|
44
44
|
view
|
|
45
|
-
}))))), createElement(
|
|
45
|
+
}))))), createElement(FlexBlock, null, createElement(ItemActions, {
|
|
46
46
|
item: item,
|
|
47
47
|
actions: actions
|
|
48
|
-
})));
|
|
48
|
+
}))));
|
|
49
49
|
}));
|
|
50
50
|
}
|
|
51
51
|
//# sourceMappingURL=view-grid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__experimentalGrid","Grid","__experimentalHStack","HStack","__experimentalVStack","VStack","FlexBlock","Placeholder","
|
|
1
|
+
{"version":3,"names":["__experimentalGrid","Grid","__experimentalHStack","HStack","__experimentalVStack","VStack","FlexBlock","Placeholder","ItemActions","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 ItemActions from './item-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<FlexBlock>\n\t\t\t\t\t\t\t\t<ItemActions\n\t\t\t\t\t\t\t\t\titem={ item }\n\t\t\t\t\t\t\t\t\tactions={ actions }\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</FlexBlock>\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,WAAW,MAAM,gBAAgB;AAExC,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,CAACjB,SAAS,QACTiB,aAAA,CAACf,WAAW;MACXoB,IAAI,EAAGA,IAAM;MACbf,OAAO,EAAGA;IAAS,CACnB,CACS,CACJ,CACD,CAAC;EAEX,CAAE,CACG,CAAC;AAET"}
|