@wordpress/block-library 9.20.0 → 9.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 +4 -0
- package/build/categories/edit.js +3 -3
- package/build/categories/edit.js.map +1 -1
- package/build/cover/index.js +1 -1
- package/build/cover/index.js.map +1 -1
- package/build/details/edit.js +1 -5
- package/build/details/edit.js.map +1 -1
- package/build/details/index.js +1 -1
- package/build/details/index.js.map +1 -1
- package/build/embed/edit.js +4 -1
- package/build/embed/edit.js.map +1 -1
- package/build/image/edit.js +3 -2
- package/build/image/edit.js.map +1 -1
- package/build/image/image.js +13 -8
- package/build/image/image.js.map +1 -1
- package/build/navigation/edit/index.js +8 -4
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/view.js +2 -1
- package/build/navigation/view.js.map +1 -1
- package/build/navigation-link/edit.js +27 -29
- package/build/navigation-link/edit.js.map +1 -1
- package/build/navigation-link/index.js +0 -3
- package/build/navigation-link/index.js.map +1 -1
- package/build/navigation-link/transforms.js +0 -2
- package/build/navigation-link/transforms.js.map +1 -1
- package/build/navigation-link/update-attributes.js +0 -1
- package/build/navigation-link/update-attributes.js.map +1 -1
- package/build/navigation-submenu/edit.js +1 -24
- package/build/navigation-submenu/edit.js.map +1 -1
- package/build/navigation-submenu/index.js +0 -3
- package/build/navigation-submenu/index.js.map +1 -1
- package/build/post-comments-count/index.js +0 -1
- package/build/post-comments-count/index.js.map +1 -1
- package/build/post-comments-link/index.js +0 -1
- package/build/post-comments-link/index.js.map +1 -1
- package/build/post-featured-image/edit.js +14 -3
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +47 -59
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/parent-control.js +2 -2
- package/build/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +2 -2
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query/edit/query-content.js +4 -17
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query-total/index.js +3 -0
- package/build/query-total/index.js.map +1 -1
- package/build/quote/index.js +1 -1
- package/build/quote/index.js.map +1 -1
- package/build/rss/edit.js +21 -1
- package/build/rss/edit.js.map +1 -1
- package/build/rss/index.js +7 -0
- package/build/rss/index.js.map +1 -1
- package/build/site-title/edit.js +1 -1
- package/build/site-title/edit.js.map +1 -1
- package/build/social-links/edit.js +29 -31
- package/build/social-links/edit.js.map +1 -1
- package/build/table/index.js +3 -3
- package/build/table/index.js.map +1 -1
- package/build/table/transforms.js +11 -3
- package/build/table/transforms.js.map +1 -1
- package/build/table-of-contents/edit.js +50 -8
- package/build/table-of-contents/edit.js.map +1 -1
- package/build/table-of-contents/hooks.js +13 -4
- package/build/table-of-contents/hooks.js.map +1 -1
- package/build/table-of-contents/index.js +3 -0
- package/build/table-of-contents/index.js.map +1 -1
- package/build-module/categories/edit.js +3 -3
- package/build-module/categories/edit.js.map +1 -1
- package/build-module/cover/index.js +1 -1
- package/build-module/cover/index.js.map +1 -1
- package/build-module/details/edit.js +1 -5
- package/build-module/details/edit.js.map +1 -1
- package/build-module/details/index.js +1 -1
- package/build-module/details/index.js.map +1 -1
- package/build-module/embed/edit.js +4 -1
- package/build-module/embed/edit.js.map +1 -1
- package/build-module/image/edit.js +3 -2
- package/build-module/image/edit.js.map +1 -1
- package/build-module/image/image.js +14 -9
- package/build-module/image/image.js.map +1 -1
- package/build-module/navigation/edit/index.js +8 -4
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/view.js +2 -1
- package/build-module/navigation/view.js.map +1 -1
- package/build-module/navigation-link/edit.js +28 -30
- package/build-module/navigation-link/edit.js.map +1 -1
- package/build-module/navigation-link/index.js +0 -3
- package/build-module/navigation-link/index.js.map +1 -1
- package/build-module/navigation-link/transforms.js +0 -2
- package/build-module/navigation-link/transforms.js.map +1 -1
- package/build-module/navigation-link/update-attributes.js +0 -1
- package/build-module/navigation-link/update-attributes.js.map +1 -1
- package/build-module/navigation-submenu/edit.js +1 -24
- package/build-module/navigation-submenu/edit.js.map +1 -1
- package/build-module/navigation-submenu/index.js +0 -3
- package/build-module/navigation-submenu/index.js.map +1 -1
- package/build-module/post-comments-count/index.js +0 -1
- package/build-module/post-comments-count/index.js.map +1 -1
- package/build-module/post-comments-link/index.js +0 -1
- package/build-module/post-comments-link/index.js.map +1 -1
- package/build-module/post-featured-image/edit.js +14 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +49 -61
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/parent-control.js +2 -2
- package/build-module/query/edit/inspector-controls/parent-control.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +2 -2
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query/edit/query-content.js +4 -17
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query-total/index.js +3 -0
- package/build-module/query-total/index.js.map +1 -1
- package/build-module/quote/index.js +1 -1
- package/build-module/quote/index.js.map +1 -1
- package/build-module/rss/edit.js +22 -2
- package/build-module/rss/edit.js.map +1 -1
- package/build-module/rss/index.js +7 -0
- package/build-module/rss/index.js.map +1 -1
- package/build-module/site-title/edit.js +1 -1
- package/build-module/site-title/edit.js.map +1 -1
- package/build-module/social-links/edit.js +30 -32
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/table/index.js +3 -3
- package/build-module/table/index.js.map +1 -1
- package/build-module/table/transforms.js +11 -3
- package/build-module/table/transforms.js.map +1 -1
- package/build-module/table-of-contents/edit.js +52 -10
- package/build-module/table-of-contents/edit.js.map +1 -1
- package/build-module/table-of-contents/hooks.js +13 -4
- package/build-module/table-of-contents/hooks.js.map +1 -1
- package/build-module/table-of-contents/index.js +3 -0
- package/build-module/table-of-contents/index.js.map +1 -1
- package/build-style/editor-rtl.css +1 -50
- package/build-style/editor.css +1 -50
- package/build-style/media-text/style-rtl.css +0 -2
- package/build-style/media-text/style.css +0 -2
- package/build-style/post-comments-form/style-rtl.css +3 -0
- package/build-style/post-comments-form/style.css +3 -0
- package/build-style/search/style-rtl.css +1 -0
- package/build-style/search/style.css +1 -0
- package/build-style/social-links/editor-rtl.css +1 -50
- package/build-style/social-links/editor.css +1 -50
- package/build-style/style-rtl.css +4 -6
- package/build-style/style.css +4 -6
- package/build-style/tag-cloud/style-rtl.css +0 -4
- package/build-style/tag-cloud/style.css +0 -4
- package/package.json +35 -35
- package/src/button/index.php +2 -3
- package/src/categories/edit.js +3 -3
- package/src/cover/index.js +1 -1
- package/src/details/edit.js +6 -8
- package/src/details/index.js +1 -1
- package/src/embed/edit.js +7 -1
- package/src/file/index.php +2 -3
- package/src/image/edit.js +3 -3
- package/src/image/image.js +9 -12
- package/src/latest-comments/index.php +1 -1
- package/src/latest-posts/index.php +3 -0
- package/src/media-text/style.scss +0 -2
- package/src/navigation/edit/index.js +4 -0
- package/src/navigation/index.php +1 -1
- package/src/navigation/view.js +2 -1
- package/src/navigation-link/block.json +0 -3
- package/src/navigation-link/edit.js +46 -33
- package/src/navigation-link/index.php +1 -5
- package/src/navigation-link/transforms.js +1 -2
- package/src/navigation-link/update-attributes.js +0 -1
- package/src/navigation-submenu/block.json +0 -3
- package/src/navigation-submenu/edit.js +1 -24
- package/src/navigation-submenu/index.php +0 -4
- package/src/post-comments-count/block.json +0 -1
- package/src/post-comments-count/index.php +4 -0
- package/src/post-comments-form/style.scss +5 -0
- package/src/post-comments-link/block.json +0 -1
- package/src/post-comments-link/index.php +4 -0
- package/src/post-featured-image/edit.js +93 -75
- package/src/query/edit/inspector-controls/index.js +66 -91
- package/src/query/edit/inspector-controls/parent-control.js +2 -2
- package/src/query/edit/inspector-controls/taxonomy-controls.js +2 -2
- package/src/query/edit/query-content.js +7 -16
- package/src/query-total/block.json +3 -0
- package/src/query-total/index.php +1 -1
- package/src/quote/index.js +1 -1
- package/src/rss/block.json +7 -0
- package/src/rss/edit.js +21 -0
- package/src/rss/index.php +27 -9
- package/src/search/index.php +12 -9
- package/src/search/style.scss +1 -0
- package/src/site-title/edit.js +1 -1
- package/src/site-title/index.php +1 -1
- package/src/social-links/edit.js +29 -30
- package/src/social-links/editor.scss +1 -59
- package/src/table/index.js +3 -3
- package/src/table/transforms.js +14 -2
- package/src/table-of-contents/block.json +3 -0
- package/src/table-of-contents/edit.js +45 -4
- package/src/table-of-contents/hooks.js +12 -3
- package/src/tag-cloud/style.scss +0 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","FormTokenField","useSelect","store","coreStore","useState","useEffect","useMemo","useDebounce","getEntitiesInfo","mapToIHasNameAndId","jsx","_jsx","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","ParentControl","parents","postType","onChange","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","currentParents","length","include","currentParentsInfo","sanitizedValue","reduce","accumulator","id","entity","mapById","push","name","entitiesInfo","names","getIdByValue","entitiesMappedByName","onParentChange","newValue","ids","Array","from","mapByName","add","Set","__next40pxDefaultSize","label","onInputChange","__experimentalShowHowTo","__nextHasNoMarginBottom"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/parent-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo, mapToIHasNameAndId } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,title',\n\tcontext: 'view',\n};\n\nfunction ParentControl( { parents, postType, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst selectorArgs = [\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\texclude: parents,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, parents ]\n\t);\n\tconst currentParents = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! parents?.length ) {\n\t\t\t\treturn EMPTY_ARRAY;\n\t\t\t}\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'postType', postType, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: parents,\n\t\t\t\tper_page: parents.length,\n\t\t\t} );\n\t\t},\n\t\t[ parents ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing parents.\n\tuseEffect( () => {\n\t\tif ( ! parents?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! currentParents?.length ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentParentsInfo = getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( currentParents, 'title.rendered' )\n\t\t);\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = parents.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = currentParentsInfo.mapById[ id ];\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ parents, currentParents ] );\n\n\tconst entitiesInfo = useMemo( () => {\n\t\tif ( ! searchResults?.length ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\treturn getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( searchResults, 'title.rendered' )\n\t\t);\n\t}, [ searchResults ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) {\n\t\t\treturn;\n\t\t}\n\t\tsetSuggestions( entitiesInfo.names );\n\t}, [ entitiesInfo.names, searchHasResolved ] );\n\n\tconst getIdByValue = ( entitiesMappedByName, entity ) => {\n\t\tconst id = entity?.id || entitiesMappedByName?.[ entity ]?.id;\n\t\tif ( id ) {\n\t\t\treturn id;\n\t\t}\n\t};\n\tconst onParentChange = ( newValue ) => {\n\t\tconst ids = Array.from(\n\t\t\tnewValue.reduce( ( accumulator, entity ) => {\n\t\t\t\t// Verify that new values point to existing entities.\n\t\t\t\tconst id = getIdByValue( entitiesInfo.mapByName, entity );\n\t\t\t\tif ( id ) {\n\t\t\t\t\taccumulator.add( id );\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( { parents: ids } );\n\t};\n\treturn (\n\t\t<FormTokenField\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Parents' ) }\n\t\t\tvalue={ value }\n\t\t\tonInputChange={ debouncedSearch }\n\t\t\tsuggestions={ suggestions }\n\t\t\tonChange={ onParentChange }\n\t\t\t__experimentalShowHowTo={ false }\n\t\t\t__nextHasNoMarginBottom\n\t\t/>\n\t);\n}\n\nexport default ParentControl;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,QAAQ,oBAAoB;AACjE,SAASC,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;AACA,SAASC,eAAe,EAAEC,kBAAkB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElE,MAAMC,WAAW,GAAG,EAAE;AACtB,MAAMC,UAAU,GAAG;EAClBC,KAAK,EAAE,KAAK;EACZC,OAAO,EAAE,UAAU;EACnBC,OAAO,EAAE;AACV,CAAC;AAED,SAASC,aAAaA,CAAE;EAAEC,OAAO;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EACzD,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAGlB,QAAQ,CAAE,EAAG,CAAC;EAC5C,MAAM,CAAEmB,KAAK,EAAEC,QAAQ,CAAE,GAAGpB,QAAQ,CAAEQ,WAAY,CAAC;EACnD,MAAM,CAAEa,WAAW,EAAEC,cAAc,CAAE,GAAGtB,QAAQ,CAAEQ,WAAY,CAAC;EAC/D,MAAMe,eAAe,GAAGpB,WAAW,CAAEe,SAAS,EAAE,GAAI,CAAC;EACrD,MAAM;IAAEM,aAAa;IAAEC;EAAkB,CAAC,GAAG5B,SAAS,CACnD6B,MAAM,IAAM;IACb,IAAK,CAAET,MAAM,EAAG;MACf,OAAO;QAAEO,aAAa,EAAEhB,WAAW;QAAEiB,iBAAiB,EAAE;MAAK,CAAC;IAC/D;IACA,MAAM;MAAEE,gBAAgB;MAAEC;IAAsB,CAAC,GAChDF,MAAM,CAAE3B,SAAU,CAAC;IACpB,MAAM8B,YAAY,GAAG,CACpB,UAAU,EACVd,QAAQ,EACR;MACC,GAAGN,UAAU;MACbQ,MAAM;MACNa,OAAO,EAAE,WAAW;MACpBC,OAAO,EAAEjB,OAAO;MAChBkB,QAAQ,EAAE;IACX,CAAC,CACD;IACD,OAAO;MACNR,aAAa,EAAEG,gBAAgB,CAAE,GAAGE,YAAa,CAAC;MAClDJ,iBAAiB,EAAEG,qBAAqB,CACvC,kBAAkB,EAClBC,YACD;IACD,CAAC;EACF,CAAC,EACD,CAAEZ,MAAM,
|
|
1
|
+
{"version":3,"names":["__","FormTokenField","useSelect","store","coreStore","useState","useEffect","useMemo","useDebounce","getEntitiesInfo","mapToIHasNameAndId","jsx","_jsx","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","ParentControl","parents","postType","onChange","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","currentParents","length","include","currentParentsInfo","sanitizedValue","reduce","accumulator","id","entity","mapById","push","name","entitiesInfo","names","getIdByValue","entitiesMappedByName","onParentChange","newValue","ids","Array","from","mapByName","add","Set","__next40pxDefaultSize","label","onInputChange","__experimentalShowHowTo","__nextHasNoMarginBottom"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/parent-control.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { FormTokenField } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect, useMemo } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\n\n/**\n * Internal dependencies\n */\nimport { getEntitiesInfo, mapToIHasNameAndId } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,title',\n\tcontext: 'view',\n};\n\nfunction ParentControl( { parents, postType, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst selectorArgs = [\n\t\t\t\t'postType',\n\t\t\t\tpostType,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'relevance',\n\t\t\t\t\texclude: parents,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, postType, parents ]\n\t);\n\tconst currentParents = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! parents?.length ) {\n\t\t\t\treturn EMPTY_ARRAY;\n\t\t\t}\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'postType', postType, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: parents,\n\t\t\t\tper_page: parents.length,\n\t\t\t} );\n\t\t},\n\t\t[ parents, postType ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing parents.\n\tuseEffect( () => {\n\t\tif ( ! parents?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! currentParents?.length ) {\n\t\t\treturn;\n\t\t}\n\t\tconst currentParentsInfo = getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( currentParents, 'title.rendered' )\n\t\t);\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = parents.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = currentParentsInfo.mapById[ id ];\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ parents, currentParents ] );\n\n\tconst entitiesInfo = useMemo( () => {\n\t\tif ( ! searchResults?.length ) {\n\t\t\treturn EMPTY_ARRAY;\n\t\t}\n\t\treturn getEntitiesInfo(\n\t\t\tmapToIHasNameAndId( searchResults, 'title.rendered' )\n\t\t);\n\t}, [ searchResults ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) {\n\t\t\treturn;\n\t\t}\n\t\tsetSuggestions( entitiesInfo.names );\n\t}, [ entitiesInfo.names, searchHasResolved ] );\n\n\tconst getIdByValue = ( entitiesMappedByName, entity ) => {\n\t\tconst id = entity?.id || entitiesMappedByName?.[ entity ]?.id;\n\t\tif ( id ) {\n\t\t\treturn id;\n\t\t}\n\t};\n\tconst onParentChange = ( newValue ) => {\n\t\tconst ids = Array.from(\n\t\t\tnewValue.reduce( ( accumulator, entity ) => {\n\t\t\t\t// Verify that new values point to existing entities.\n\t\t\t\tconst id = getIdByValue( entitiesInfo.mapByName, entity );\n\t\t\t\tif ( id ) {\n\t\t\t\t\taccumulator.add( id );\n\t\t\t\t}\n\t\t\t\treturn accumulator;\n\t\t\t}, new Set() )\n\t\t);\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( { parents: ids } );\n\t};\n\treturn (\n\t\t<FormTokenField\n\t\t\t__next40pxDefaultSize\n\t\t\tlabel={ __( 'Parents' ) }\n\t\t\tvalue={ value }\n\t\t\tonInputChange={ debouncedSearch }\n\t\t\tsuggestions={ suggestions }\n\t\t\tonChange={ onParentChange }\n\t\t\t__experimentalShowHowTo={ false }\n\t\t\t__nextHasNoMarginBottom\n\t\t/>\n\t);\n}\n\nexport default ParentControl;\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,cAAc,QAAQ,uBAAuB;AACtD,SAASC,SAAS,QAAQ,iBAAiB;AAC3C,SAASC,KAAK,IAAIC,SAAS,QAAQ,sBAAsB;AACzD,SAASC,QAAQ,EAAEC,SAAS,EAAEC,OAAO,QAAQ,oBAAoB;AACjE,SAASC,WAAW,QAAQ,oBAAoB;;AAEhD;AACA;AACA;AACA,SAASC,eAAe,EAAEC,kBAAkB,QAAQ,aAAa;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAElE,MAAMC,WAAW,GAAG,EAAE;AACtB,MAAMC,UAAU,GAAG;EAClBC,KAAK,EAAE,KAAK;EACZC,OAAO,EAAE,UAAU;EACnBC,OAAO,EAAE;AACV,CAAC;AAED,SAASC,aAAaA,CAAE;EAAEC,OAAO;EAAEC,QAAQ;EAAEC;AAAS,CAAC,EAAG;EACzD,MAAM,CAAEC,MAAM,EAAEC,SAAS,CAAE,GAAGlB,QAAQ,CAAE,EAAG,CAAC;EAC5C,MAAM,CAAEmB,KAAK,EAAEC,QAAQ,CAAE,GAAGpB,QAAQ,CAAEQ,WAAY,CAAC;EACnD,MAAM,CAAEa,WAAW,EAAEC,cAAc,CAAE,GAAGtB,QAAQ,CAAEQ,WAAY,CAAC;EAC/D,MAAMe,eAAe,GAAGpB,WAAW,CAAEe,SAAS,EAAE,GAAI,CAAC;EACrD,MAAM;IAAEM,aAAa;IAAEC;EAAkB,CAAC,GAAG5B,SAAS,CACnD6B,MAAM,IAAM;IACb,IAAK,CAAET,MAAM,EAAG;MACf,OAAO;QAAEO,aAAa,EAAEhB,WAAW;QAAEiB,iBAAiB,EAAE;MAAK,CAAC;IAC/D;IACA,MAAM;MAAEE,gBAAgB;MAAEC;IAAsB,CAAC,GAChDF,MAAM,CAAE3B,SAAU,CAAC;IACpB,MAAM8B,YAAY,GAAG,CACpB,UAAU,EACVd,QAAQ,EACR;MACC,GAAGN,UAAU;MACbQ,MAAM;MACNa,OAAO,EAAE,WAAW;MACpBC,OAAO,EAAEjB,OAAO;MAChBkB,QAAQ,EAAE;IACX,CAAC,CACD;IACD,OAAO;MACNR,aAAa,EAAEG,gBAAgB,CAAE,GAAGE,YAAa,CAAC;MAClDJ,iBAAiB,EAAEG,qBAAqB,CACvC,kBAAkB,EAClBC,YACD;IACD,CAAC;EACF,CAAC,EACD,CAAEZ,MAAM,EAAEF,QAAQ,EAAED,OAAO,CAC5B,CAAC;EACD,MAAMmB,cAAc,GAAGpC,SAAS,CAC7B6B,MAAM,IAAM;IACb,IAAK,CAAEZ,OAAO,EAAEoB,MAAM,EAAG;MACxB,OAAO1B,WAAW;IACnB;IACA,MAAM;MAAEmB;IAAiB,CAAC,GAAGD,MAAM,CAAE3B,SAAU,CAAC;IAChD,OAAO4B,gBAAgB,CAAE,UAAU,EAAEZ,QAAQ,EAAE;MAC9C,GAAGN,UAAU;MACb0B,OAAO,EAAErB,OAAO;MAChBkB,QAAQ,EAAElB,OAAO,CAACoB;IACnB,CAAE,CAAC;EACJ,CAAC,EACD,CAAEpB,OAAO,EAAEC,QAAQ,CACpB,CAAC;EACD;EACA;EACAd,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEa,OAAO,EAAEoB,MAAM,EAAG;MACxBd,QAAQ,CAAEZ,WAAY,CAAC;IACxB;IACA,IAAK,CAAEyB,cAAc,EAAEC,MAAM,EAAG;MAC/B;IACD;IACA,MAAME,kBAAkB,GAAGhC,eAAe,CACzCC,kBAAkB,CAAE4B,cAAc,EAAE,gBAAiB,CACtD,CAAC;IACD;IACA;IACA,MAAMI,cAAc,GAAGvB,OAAO,CAACwB,MAAM,CAAE,CAAEC,WAAW,EAAEC,EAAE,KAAM;MAC7D,MAAMC,MAAM,GAAGL,kBAAkB,CAACM,OAAO,CAAEF,EAAE,CAAE;MAC/C,IAAKC,MAAM,EAAG;QACbF,WAAW,CAACI,IAAI,CAAE;UACjBH,EAAE;UACFrB,KAAK,EAAEsB,MAAM,CAACG;QACf,CAAE,CAAC;MACJ;MACA,OAAOL,WAAW;IACnB,CAAC,EAAE,EAAG,CAAC;IACPnB,QAAQ,CAAEiB,cAAe,CAAC;EAC3B,CAAC,EAAE,CAAEvB,OAAO,EAAEmB,cAAc,CAAG,CAAC;EAEhC,MAAMY,YAAY,GAAG3C,OAAO,CAAE,MAAM;IACnC,IAAK,CAAEsB,aAAa,EAAEU,MAAM,EAAG;MAC9B,OAAO1B,WAAW;IACnB;IACA,OAAOJ,eAAe,CACrBC,kBAAkB,CAAEmB,aAAa,EAAE,gBAAiB,CACrD,CAAC;EACF,CAAC,EAAE,CAAEA,aAAa,CAAG,CAAC;EACtB;EACAvB,SAAS,CAAE,MAAM;IAChB,IAAK,CAAEwB,iBAAiB,EAAG;MAC1B;IACD;IACAH,cAAc,CAAEuB,YAAY,CAACC,KAAM,CAAC;EACrC,CAAC,EAAE,CAAED,YAAY,CAACC,KAAK,EAAErB,iBAAiB,CAAG,CAAC;EAE9C,MAAMsB,YAAY,GAAGA,CAAEC,oBAAoB,EAAEP,MAAM,KAAM;IACxD,MAAMD,EAAE,GAAGC,MAAM,EAAED,EAAE,IAAIQ,oBAAoB,GAAIP,MAAM,CAAE,EAAED,EAAE;IAC7D,IAAKA,EAAE,EAAG;MACT,OAAOA,EAAE;IACV;EACD,CAAC;EACD,MAAMS,cAAc,GAAKC,QAAQ,IAAM;IACtC,MAAMC,GAAG,GAAGC,KAAK,CAACC,IAAI,CACrBH,QAAQ,CAACZ,MAAM,CAAE,CAAEC,WAAW,EAAEE,MAAM,KAAM;MAC3C;MACA,MAAMD,EAAE,GAAGO,YAAY,CAAEF,YAAY,CAACS,SAAS,EAAEb,MAAO,CAAC;MACzD,IAAKD,EAAE,EAAG;QACTD,WAAW,CAACgB,GAAG,CAAEf,EAAG,CAAC;MACtB;MACA,OAAOD,WAAW;IACnB,CAAC,EAAE,IAAIiB,GAAG,CAAC,CAAE,CACd,CAAC;IACDlC,cAAc,CAAEd,WAAY,CAAC;IAC7BQ,QAAQ,CAAE;MAAEF,OAAO,EAAEqC;IAAI,CAAE,CAAC;EAC7B,CAAC;EACD,oBACC5C,IAAA,CAACX,cAAc;IACd6D,qBAAqB;IACrBC,KAAK,EAAG/D,EAAE,CAAE,SAAU,CAAG;IACzBwB,KAAK,EAAGA,KAAO;IACfwC,aAAa,EAAGpC,eAAiB;IACjCF,WAAW,EAAGA,WAAa;IAC3BL,QAAQ,EAAGiC,cAAgB;IAC3BW,uBAAuB,EAAG,KAAO;IACjCC,uBAAuB;EAAA,CACvB,CAAC;AAEJ;AAEA,eAAehD,aAAa","ignoreList":[]}
|
|
@@ -114,7 +114,7 @@ function TaxonomyItem({
|
|
|
114
114
|
searchResults: getEntityRecords(...selectorArgs),
|
|
115
115
|
searchHasResolved: hasFinishedResolution('getEntityRecords', selectorArgs)
|
|
116
116
|
};
|
|
117
|
-
}, [search, termIds]);
|
|
117
|
+
}, [search, taxonomy.slug, termIds]);
|
|
118
118
|
// `existingTerms` are the ones fetched from the API and their type is `{ id: number; name: string }`.
|
|
119
119
|
// They are used to extract the terms' names to populate the `FormTokenField` properly
|
|
120
120
|
// and to sanitize the provided `termIds`, by setting only the ones that exist.
|
|
@@ -130,7 +130,7 @@ function TaxonomyItem({
|
|
|
130
130
|
include: termIds,
|
|
131
131
|
per_page: termIds.length
|
|
132
132
|
});
|
|
133
|
-
}, [termIds]);
|
|
133
|
+
}, [taxonomy.slug, termIds]);
|
|
134
134
|
// Update the `value` state only after the selectors are resolved
|
|
135
135
|
// to avoid emptying the input when we're changing terms.
|
|
136
136
|
useEffect(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["FormTokenField","__experimentalVStack","VStack","useSelect","store","coreStore","useState","useEffect","useDebounce","decodeEntities","useTaxonomies","jsx","_jsx","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","getTermIdByTermValue","terms","termValue","termId","id","find","term","name","termValueLower","toLocaleLowerCase","TaxonomyControls","onChange","query","postType","taxQuery","taxonomies","length","spacing","children","map","taxonomy","termIds","slug","handleChange","newTermIds","TaxonomyItem","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","existingTerms","include","sanitizedValue","reduce","accumulator","entity","push","result","onTermsChange","newTermValues","Set","add","Array","from","className","label","onInputChange","displayTransform","__experimentalShowHowTo","__nextHasNoMarginBottom","__next40pxDefaultSize"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/taxonomy-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFormTokenField,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { useTaxonomies } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,name',\n\tcontext: 'view',\n};\n\n// Helper function to get the term id based on user input in terms `FormTokenField`.\nconst getTermIdByTermValue = ( terms, termValue ) => {\n\t// First we check for exact match by `term.id` or case sensitive `term.name` match.\n\tconst termId =\n\t\ttermValue?.id || terms?.find( ( term ) => term.name === termValue )?.id;\n\tif ( termId ) {\n\t\treturn termId;\n\t}\n\n\t/**\n\t * Here we make an extra check for entered terms in a non case sensitive way,\n\t * to match user expectations, due to `FormTokenField` behaviour that shows\n\t * suggestions which are case insensitive.\n\t *\n\t * Although WP tries to discourage users to add terms with the same name (case insensitive),\n\t * it's still possible if you manually change the name, as long as the terms have different slugs.\n\t * In this edge case we always apply the first match from the terms list.\n\t */\n\tconst termValueLower = termValue.toLocaleLowerCase();\n\treturn terms?.find(\n\t\t( term ) => term.name.toLocaleLowerCase() === termValueLower\n\t)?.id;\n};\n\nexport function TaxonomyControls( { onChange, query } ) {\n\tconst { postType, taxQuery } = query;\n\n\tconst taxonomies = useTaxonomies( postType );\n\tif ( ! taxonomies || taxonomies.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 4 }>\n\t\t\t{ taxonomies.map( ( taxonomy ) => {\n\t\t\t\tconst termIds = taxQuery?.[ taxonomy.slug ] || [];\n\t\t\t\tconst handleChange = ( newTermIds ) =>\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\ttaxQuery: {\n\t\t\t\t\t\t\t...taxQuery,\n\t\t\t\t\t\t\t[ taxonomy.slug ]: newTermIds,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\n\t\t\t\treturn (\n\t\t\t\t\t<TaxonomyItem\n\t\t\t\t\t\tkey={ taxonomy.slug }\n\t\t\t\t\t\ttaxonomy={ taxonomy }\n\t\t\t\t\t\ttermIds={ termIds }\n\t\t\t\t\t\tonChange={ handleChange }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</VStack>\n\t);\n}\n\n/**\n * Renders a `FormTokenField` for a given taxonomy.\n *\n * @param {Object} props The props for the component.\n * @param {Object} props.taxonomy The taxonomy object.\n * @param {number[]} props.termIds An array with the block's term ids for the given taxonomy.\n * @param {Function} props.onChange Callback `onChange` function.\n * @return {JSX.Element} The rendered component.\n */\nfunction TaxonomyItem( { taxonomy, termIds, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst selectorArgs = [\n\t\t\t\t'taxonomy',\n\t\t\t\ttaxonomy.slug,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'name',\n\t\t\t\t\texclude: termIds,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, termIds ]\n\t);\n\t// `existingTerms` are the ones fetched from the API and their type is `{ id: number; name: string }`.\n\t// They are used to extract the terms' names to populate the `FormTokenField` properly\n\t// and to sanitize the provided `termIds`, by setting only the ones that exist.\n\tconst existingTerms = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! termIds?.length ) {\n\t\t\t\treturn EMPTY_ARRAY;\n\t\t\t}\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'taxonomy', taxonomy.slug, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: termIds,\n\t\t\t\tper_page: termIds.length,\n\t\t\t} );\n\t\t},\n\t\t[ termIds ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing terms.\n\tuseEffect( () => {\n\t\tif ( ! termIds?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! existingTerms?.length ) {\n\t\t\treturn;\n\t\t}\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = termIds.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = existingTerms.find( ( term ) => term.id === id );\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ termIds, existingTerms ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) {\n\t\t\treturn;\n\t\t}\n\t\tsetSuggestions( searchResults.map( ( result ) => result.name ) );\n\t}, [ searchResults, searchHasResolved ] );\n\tconst onTermsChange = ( newTermValues ) => {\n\t\tconst newTermIds = new Set();\n\t\tfor ( const termValue of newTermValues ) {\n\t\t\tconst termId = getTermIdByTermValue( searchResults, termValue );\n\t\t\tif ( termId ) {\n\t\t\t\tnewTermIds.add( termId );\n\t\t\t}\n\t\t}\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( Array.from( newTermIds ) );\n\t};\n\treturn (\n\t\t<div className=\"block-library-query-inspector__taxonomy-control\">\n\t\t\t<FormTokenField\n\t\t\t\tlabel={ taxonomy.name }\n\t\t\t\tvalue={ value }\n\t\t\t\tonInputChange={ debouncedSearch }\n\t\t\t\tsuggestions={ suggestions }\n\t\t\t\tdisplayTransform={ decodeEntities }\n\t\t\t\tonChange={ onTermsChange }\n\t\t\t\t__experimentalShowHowTo={ false }\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["FormTokenField","__experimentalVStack","VStack","useSelect","store","coreStore","useState","useEffect","useDebounce","decodeEntities","useTaxonomies","jsx","_jsx","EMPTY_ARRAY","BASE_QUERY","order","_fields","context","getTermIdByTermValue","terms","termValue","termId","id","find","term","name","termValueLower","toLocaleLowerCase","TaxonomyControls","onChange","query","postType","taxQuery","taxonomies","length","spacing","children","map","taxonomy","termIds","slug","handleChange","newTermIds","TaxonomyItem","search","setSearch","value","setValue","suggestions","setSuggestions","debouncedSearch","searchResults","searchHasResolved","select","getEntityRecords","hasFinishedResolution","selectorArgs","orderby","exclude","per_page","existingTerms","include","sanitizedValue","reduce","accumulator","entity","push","result","onTermsChange","newTermValues","Set","add","Array","from","className","label","onInputChange","displayTransform","__experimentalShowHowTo","__nextHasNoMarginBottom","__next40pxDefaultSize"],"sources":["@wordpress/block-library/src/query/edit/inspector-controls/taxonomy-controls.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tFormTokenField,\n\t__experimentalVStack as VStack,\n} from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, useEffect } from '@wordpress/element';\nimport { useDebounce } from '@wordpress/compose';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { useTaxonomies } from '../../utils';\n\nconst EMPTY_ARRAY = [];\nconst BASE_QUERY = {\n\torder: 'asc',\n\t_fields: 'id,name',\n\tcontext: 'view',\n};\n\n// Helper function to get the term id based on user input in terms `FormTokenField`.\nconst getTermIdByTermValue = ( terms, termValue ) => {\n\t// First we check for exact match by `term.id` or case sensitive `term.name` match.\n\tconst termId =\n\t\ttermValue?.id || terms?.find( ( term ) => term.name === termValue )?.id;\n\tif ( termId ) {\n\t\treturn termId;\n\t}\n\n\t/**\n\t * Here we make an extra check for entered terms in a non case sensitive way,\n\t * to match user expectations, due to `FormTokenField` behaviour that shows\n\t * suggestions which are case insensitive.\n\t *\n\t * Although WP tries to discourage users to add terms with the same name (case insensitive),\n\t * it's still possible if you manually change the name, as long as the terms have different slugs.\n\t * In this edge case we always apply the first match from the terms list.\n\t */\n\tconst termValueLower = termValue.toLocaleLowerCase();\n\treturn terms?.find(\n\t\t( term ) => term.name.toLocaleLowerCase() === termValueLower\n\t)?.id;\n};\n\nexport function TaxonomyControls( { onChange, query } ) {\n\tconst { postType, taxQuery } = query;\n\n\tconst taxonomies = useTaxonomies( postType );\n\tif ( ! taxonomies || taxonomies.length === 0 ) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<VStack spacing={ 4 }>\n\t\t\t{ taxonomies.map( ( taxonomy ) => {\n\t\t\t\tconst termIds = taxQuery?.[ taxonomy.slug ] || [];\n\t\t\t\tconst handleChange = ( newTermIds ) =>\n\t\t\t\t\tonChange( {\n\t\t\t\t\t\ttaxQuery: {\n\t\t\t\t\t\t\t...taxQuery,\n\t\t\t\t\t\t\t[ taxonomy.slug ]: newTermIds,\n\t\t\t\t\t\t},\n\t\t\t\t\t} );\n\n\t\t\t\treturn (\n\t\t\t\t\t<TaxonomyItem\n\t\t\t\t\t\tkey={ taxonomy.slug }\n\t\t\t\t\t\ttaxonomy={ taxonomy }\n\t\t\t\t\t\ttermIds={ termIds }\n\t\t\t\t\t\tonChange={ handleChange }\n\t\t\t\t\t/>\n\t\t\t\t);\n\t\t\t} ) }\n\t\t</VStack>\n\t);\n}\n\n/**\n * Renders a `FormTokenField` for a given taxonomy.\n *\n * @param {Object} props The props for the component.\n * @param {Object} props.taxonomy The taxonomy object.\n * @param {number[]} props.termIds An array with the block's term ids for the given taxonomy.\n * @param {Function} props.onChange Callback `onChange` function.\n * @return {JSX.Element} The rendered component.\n */\nfunction TaxonomyItem( { taxonomy, termIds, onChange } ) {\n\tconst [ search, setSearch ] = useState( '' );\n\tconst [ value, setValue ] = useState( EMPTY_ARRAY );\n\tconst [ suggestions, setSuggestions ] = useState( EMPTY_ARRAY );\n\tconst debouncedSearch = useDebounce( setSearch, 250 );\n\tconst { searchResults, searchHasResolved } = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! search ) {\n\t\t\t\treturn { searchResults: EMPTY_ARRAY, searchHasResolved: true };\n\t\t\t}\n\t\t\tconst { getEntityRecords, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst selectorArgs = [\n\t\t\t\t'taxonomy',\n\t\t\t\ttaxonomy.slug,\n\t\t\t\t{\n\t\t\t\t\t...BASE_QUERY,\n\t\t\t\t\tsearch,\n\t\t\t\t\torderby: 'name',\n\t\t\t\t\texclude: termIds,\n\t\t\t\t\tper_page: 20,\n\t\t\t\t},\n\t\t\t];\n\t\t\treturn {\n\t\t\t\tsearchResults: getEntityRecords( ...selectorArgs ),\n\t\t\t\tsearchHasResolved: hasFinishedResolution(\n\t\t\t\t\t'getEntityRecords',\n\t\t\t\t\tselectorArgs\n\t\t\t\t),\n\t\t\t};\n\t\t},\n\t\t[ search, taxonomy.slug, termIds ]\n\t);\n\t// `existingTerms` are the ones fetched from the API and their type is `{ id: number; name: string }`.\n\t// They are used to extract the terms' names to populate the `FormTokenField` properly\n\t// and to sanitize the provided `termIds`, by setting only the ones that exist.\n\tconst existingTerms = useSelect(\n\t\t( select ) => {\n\t\t\tif ( ! termIds?.length ) {\n\t\t\t\treturn EMPTY_ARRAY;\n\t\t\t}\n\t\t\tconst { getEntityRecords } = select( coreStore );\n\t\t\treturn getEntityRecords( 'taxonomy', taxonomy.slug, {\n\t\t\t\t...BASE_QUERY,\n\t\t\t\tinclude: termIds,\n\t\t\t\tper_page: termIds.length,\n\t\t\t} );\n\t\t},\n\t\t[ taxonomy.slug, termIds ]\n\t);\n\t// Update the `value` state only after the selectors are resolved\n\t// to avoid emptying the input when we're changing terms.\n\tuseEffect( () => {\n\t\tif ( ! termIds?.length ) {\n\t\t\tsetValue( EMPTY_ARRAY );\n\t\t}\n\t\tif ( ! existingTerms?.length ) {\n\t\t\treturn;\n\t\t}\n\t\t// Returns only the existing entity ids. This prevents the component\n\t\t// from crashing in the editor, when non existing ids are provided.\n\t\tconst sanitizedValue = termIds.reduce( ( accumulator, id ) => {\n\t\t\tconst entity = existingTerms.find( ( term ) => term.id === id );\n\t\t\tif ( entity ) {\n\t\t\t\taccumulator.push( {\n\t\t\t\t\tid,\n\t\t\t\t\tvalue: entity.name,\n\t\t\t\t} );\n\t\t\t}\n\t\t\treturn accumulator;\n\t\t}, [] );\n\t\tsetValue( sanitizedValue );\n\t}, [ termIds, existingTerms ] );\n\t// Update suggestions only when the query has resolved.\n\tuseEffect( () => {\n\t\tif ( ! searchHasResolved ) {\n\t\t\treturn;\n\t\t}\n\t\tsetSuggestions( searchResults.map( ( result ) => result.name ) );\n\t}, [ searchResults, searchHasResolved ] );\n\tconst onTermsChange = ( newTermValues ) => {\n\t\tconst newTermIds = new Set();\n\t\tfor ( const termValue of newTermValues ) {\n\t\t\tconst termId = getTermIdByTermValue( searchResults, termValue );\n\t\t\tif ( termId ) {\n\t\t\t\tnewTermIds.add( termId );\n\t\t\t}\n\t\t}\n\t\tsetSuggestions( EMPTY_ARRAY );\n\t\tonChange( Array.from( newTermIds ) );\n\t};\n\treturn (\n\t\t<div className=\"block-library-query-inspector__taxonomy-control\">\n\t\t\t<FormTokenField\n\t\t\t\tlabel={ taxonomy.name }\n\t\t\t\tvalue={ value }\n\t\t\t\tonInputChange={ debouncedSearch }\n\t\t\t\tsuggestions={ suggestions }\n\t\t\t\tdisplayTransform={ decodeEntities }\n\t\t\t\tonChange={ onTermsChange }\n\t\t\t\t__experimentalShowHowTo={ false }\n\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t__next40pxDefaultSize\n\t\t\t/>\n\t\t</div>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -31,7 +31,6 @@ export default function QueryContent({
|
|
|
31
31
|
const {
|
|
32
32
|
queryId,
|
|
33
33
|
query,
|
|
34
|
-
displayLayout,
|
|
35
34
|
enhancedPagination,
|
|
36
35
|
tagName: TagName = 'div',
|
|
37
36
|
query: {
|
|
@@ -85,12 +84,12 @@ export default function QueryContent({
|
|
|
85
84
|
// Changes in query property (which is an object) need to be in the same callback,
|
|
86
85
|
// because updates are batched after the render and changes in different query properties
|
|
87
86
|
// would cause to override previous wanted changes.
|
|
88
|
-
const updateQuery = useCallback(newQuery => setAttributes({
|
|
87
|
+
const updateQuery = useCallback(newQuery => setAttributes(prevAttributes => ({
|
|
89
88
|
query: {
|
|
90
|
-
...query,
|
|
89
|
+
...prevAttributes.query,
|
|
91
90
|
...newQuery
|
|
92
91
|
}
|
|
93
|
-
}), [
|
|
92
|
+
})), [setAttributes]);
|
|
94
93
|
useEffect(() => {
|
|
95
94
|
const newQuery = {};
|
|
96
95
|
// When we inherit from global query always need to set the `perPage`
|
|
@@ -100,16 +99,11 @@ export default function QueryContent({
|
|
|
100
99
|
} else if (!query.perPage && postsPerPage) {
|
|
101
100
|
newQuery.perPage = postsPerPage;
|
|
102
101
|
}
|
|
103
|
-
// We need to reset the `inherit` value if in a singular template, as queries
|
|
104
|
-
// are not inherited when in singular content (e.g. post, page, 404, blank).
|
|
105
|
-
if (isSingular && query.inherit) {
|
|
106
|
-
newQuery.inherit = false;
|
|
107
|
-
}
|
|
108
102
|
if (!!Object.keys(newQuery).length) {
|
|
109
103
|
__unstableMarkNextChangeAsNotPersistent();
|
|
110
104
|
updateQuery(newQuery);
|
|
111
105
|
}
|
|
112
|
-
}, [query.perPage,
|
|
106
|
+
}, [query.perPage, inherit, postsPerPage, __unstableMarkNextChangeAsNotPersistent, updateQuery]);
|
|
113
107
|
// We need this for multi-query block pagination.
|
|
114
108
|
// Query parameters for each block are scoped to their ID.
|
|
115
109
|
useEffect(() => {
|
|
@@ -120,12 +114,6 @@ export default function QueryContent({
|
|
|
120
114
|
});
|
|
121
115
|
}
|
|
122
116
|
}, [queryId, instanceId, __unstableMarkNextChangeAsNotPersistent, setAttributes]);
|
|
123
|
-
const updateDisplayLayout = newDisplayLayout => setAttributes({
|
|
124
|
-
displayLayout: {
|
|
125
|
-
...displayLayout,
|
|
126
|
-
...newDisplayLayout
|
|
127
|
-
}
|
|
128
|
-
});
|
|
129
117
|
return /*#__PURE__*/_jsxs(_Fragment, {
|
|
130
118
|
children: [/*#__PURE__*/_jsx(EnhancedPaginationModal, {
|
|
131
119
|
attributes: attributes,
|
|
@@ -136,7 +124,6 @@ export default function QueryContent({
|
|
|
136
124
|
name: name,
|
|
137
125
|
attributes: attributes,
|
|
138
126
|
setQuery: updateQuery,
|
|
139
|
-
setDisplayLayout: updateDisplayLayout,
|
|
140
127
|
setAttributes: setAttributes,
|
|
141
128
|
clientId: clientId,
|
|
142
129
|
isSingular: isSingular
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","BlockControls","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","SelectControl","__","coreStore","EnhancedPaginationControl","QueryInspectorControls","EnhancedPaginationModal","getQueryContextFromTemplate","QueryToolbar","htmlElementMessages","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","clientId","context","name","queryId","query","displayLayout","enhancedPagination","tagName","TagName","inherit","templateSlug","isSingular","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","postsPerPage","select","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","perPage","Object","keys","length","Number","isFinite","updateDisplayLayout","newDisplayLayout","children","setQuery","setDisplayLayout","group","__nextHasNoMarginBottom","__next40pxDefaultSize","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\nimport { getQueryContextFromTemplate } from '../utils';\nimport QueryToolbar from './query-toolbar';\nimport { htmlElementMessages } from '../../utils/messages';\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tcontext,\n\tname,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tdisplayLayout,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { templateSlug } = context;\n\tconst { isSingular } = getQueryContextFromTemplate( templateSlug );\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) => setAttributes( { query: { ...query, ...newQuery } } ),\n\t\t[ query, setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\t\t// We need to reset the `inherit` value if in a singular template, as queries\n\t\t// are not inherited when in singular content (e.g. post, page, 404, blank).\n\t\tif ( isSingular && query.inherit ) {\n\t\t\tnewQuery.inherit = false;\n\t\t}\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tquery.inherit,\n\t\tpostsPerPage,\n\t\tinherit,\n\t\tisSingular,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\tconst updateDisplayLayout = ( newDisplayLayout ) =>\n\t\tsetAttributes( {\n\t\t\tdisplayLayout: { ...displayLayout, ...newDisplayLayout },\n\t\t} );\n\n\treturn (\n\t\t<>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tname={ name }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetDisplayLayout={ updateDisplayLayout }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSingular={ isSingular }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar attributes={ attributes } clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ TagName ] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useSelect","useDispatch","useInstanceId","useEffect","useCallback","BlockControls","InspectorControls","useBlockProps","store","blockEditorStore","useInnerBlocksProps","SelectControl","__","coreStore","EnhancedPaginationControl","QueryInspectorControls","EnhancedPaginationModal","getQueryContextFromTemplate","QueryToolbar","htmlElementMessages","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULTS_POSTS_PER_PAGE","TEMPLATE","QueryContent","attributes","setAttributes","clientId","context","name","queryId","query","enhancedPagination","tagName","TagName","inherit","templateSlug","isSingular","__unstableMarkNextChangeAsNotPersistent","instanceId","blockProps","innerBlocksProps","template","postsPerPage","select","getSettings","getEntityRecord","getEntityRecordEdits","canUser","settingPerPage","kind","posts_per_page","editedSettingPerPage","updateQuery","newQuery","prevAttributes","perPage","Object","keys","length","Number","isFinite","children","setQuery","group","__nextHasNoMarginBottom","__next40pxDefaultSize","label","options","value","onChange","help"],"sources":["@wordpress/block-library/src/query/edit/query-content.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { useInstanceId } from '@wordpress/compose';\nimport { useEffect, useCallback } from '@wordpress/element';\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tstore as blockEditorStore,\n\tuseInnerBlocksProps,\n} from '@wordpress/block-editor';\nimport { SelectControl } from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\n\n/**\n * Internal dependencies\n */\nimport EnhancedPaginationControl from './inspector-controls/enhanced-pagination-control';\nimport QueryInspectorControls from './inspector-controls';\nimport EnhancedPaginationModal from './enhanced-pagination-modal';\nimport { getQueryContextFromTemplate } from '../utils';\nimport QueryToolbar from './query-toolbar';\nimport { htmlElementMessages } from '../../utils/messages';\n\nconst DEFAULTS_POSTS_PER_PAGE = 3;\n\nconst TEMPLATE = [ [ 'core/post-template' ] ];\nexport default function QueryContent( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tcontext,\n\tname,\n} ) {\n\tconst {\n\t\tqueryId,\n\t\tquery,\n\t\tenhancedPagination,\n\t\ttagName: TagName = 'div',\n\t\tquery: { inherit } = {},\n\t} = attributes;\n\tconst { templateSlug } = context;\n\tconst { isSingular } = getQueryContextFromTemplate( templateSlug );\n\tconst { __unstableMarkNextChangeAsNotPersistent } =\n\t\tuseDispatch( blockEditorStore );\n\tconst instanceId = useInstanceId( QueryContent );\n\tconst blockProps = useBlockProps();\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\ttemplate: TEMPLATE,\n\t} );\n\tconst { postsPerPage } = useSelect( ( select ) => {\n\t\tconst { getSettings } = select( blockEditorStore );\n\t\tconst { getEntityRecord, getEntityRecordEdits, canUser } =\n\t\t\tselect( coreStore );\n\t\tconst settingPerPage = canUser( 'read', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} )\n\t\t\t? +getEntityRecord( 'root', 'site' )?.posts_per_page\n\t\t\t: +getSettings().postsPerPage;\n\n\t\t// Gets changes made via the template area posts per page setting. These won't be saved\n\t\t// until the page is saved, but we should reflect this setting within the query loops\n\t\t// that inherit it.\n\t\tconst editedSettingPerPage = +getEntityRecordEdits( 'root', 'site' )\n\t\t\t?.posts_per_page;\n\n\t\treturn {\n\t\t\tpostsPerPage:\n\t\t\t\teditedSettingPerPage ||\n\t\t\t\tsettingPerPage ||\n\t\t\t\tDEFAULTS_POSTS_PER_PAGE,\n\t\t};\n\t}, [] );\n\t// There are some effects running where some initialization logic is\n\t// happening and setting some values to some attributes (ex. queryId).\n\t// These updates can cause an `undo trap` where undoing will result in\n\t// resetting again, so we need to mark these changes as not persistent\n\t// with `__unstableMarkNextChangeAsNotPersistent`.\n\n\t// Changes in query property (which is an object) need to be in the same callback,\n\t// because updates are batched after the render and changes in different query properties\n\t// would cause to override previous wanted changes.\n\tconst updateQuery = useCallback(\n\t\t( newQuery ) =>\n\t\t\tsetAttributes( ( prevAttributes ) => ( {\n\t\t\t\tquery: { ...prevAttributes.query, ...newQuery },\n\t\t\t} ) ),\n\t\t[ setAttributes ]\n\t);\n\tuseEffect( () => {\n\t\tconst newQuery = {};\n\t\t// When we inherit from global query always need to set the `perPage`\n\t\t// based on the reading settings.\n\t\tif ( inherit && query.perPage !== postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t} else if ( ! query.perPage && postsPerPage ) {\n\t\t\tnewQuery.perPage = postsPerPage;\n\t\t}\n\n\t\tif ( !! Object.keys( newQuery ).length ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tupdateQuery( newQuery );\n\t\t}\n\t}, [\n\t\tquery.perPage,\n\t\tinherit,\n\t\tpostsPerPage,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tupdateQuery,\n\t] );\n\t// We need this for multi-query block pagination.\n\t// Query parameters for each block are scoped to their ID.\n\tuseEffect( () => {\n\t\tif ( ! Number.isFinite( queryId ) ) {\n\t\t\t__unstableMarkNextChangeAsNotPersistent();\n\t\t\tsetAttributes( { queryId: instanceId } );\n\t\t}\n\t}, [\n\t\tqueryId,\n\t\tinstanceId,\n\t\t__unstableMarkNextChangeAsNotPersistent,\n\t\tsetAttributes,\n\t] );\n\n\treturn (\n\t\t<>\n\t\t\t<EnhancedPaginationModal\n\t\t\t\tattributes={ attributes }\n\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\tclientId={ clientId }\n\t\t\t/>\n\t\t\t<InspectorControls>\n\t\t\t\t<QueryInspectorControls\n\t\t\t\t\tname={ name }\n\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\tsetQuery={ updateQuery }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\tisSingular={ isSingular }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<BlockControls>\n\t\t\t\t<QueryToolbar attributes={ attributes } clientId={ clientId } />\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<SelectControl\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\tlabel={ __( 'HTML element' ) }\n\t\t\t\t\toptions={ [\n\t\t\t\t\t\t{ label: __( 'Default (<div>)' ), value: 'div' },\n\t\t\t\t\t\t{ label: '<main>', value: 'main' },\n\t\t\t\t\t\t{ label: '<section>', value: 'section' },\n\t\t\t\t\t\t{ label: '<aside>', value: 'aside' },\n\t\t\t\t\t] }\n\t\t\t\t\tvalue={ TagName }\n\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\tsetAttributes( { tagName: value } )\n\t\t\t\t\t}\n\t\t\t\t\thelp={ htmlElementMessages[ TagName ] }\n\t\t\t\t/>\n\t\t\t\t<EnhancedPaginationControl\n\t\t\t\t\tenhancedPagination={ enhancedPagination }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tclientId={ clientId }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<TagName { ...innerBlocksProps } />\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["metadata","$schema","apiVersion","name","title","category","ancestor","description","textdomain","attributes","displayType","type","usesContext","supports","align","html","spacing","margin","padding","color","gradients","__experimentalDefaultControls","background","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","width","style","edit","initBlock","queryTotal","settings","icon","init"],"sources":["@wordpress/block-library/src/query-total/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport initBlock from '../utils/init-block';\nimport { queryTotal } from './icons';\n\n/* Block settings */\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon: queryTotal,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AAFA,MAAAA,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,WAAA;MAAAC,IAAA;MAAA;IAAA;EAAA;EAAAC,WAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAX,6BAAA;QAAAI,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAC,MAAA;MAAAf,KAAA;MAAAgB,KAAA;MAAAC,KAAA;MAAAf,6BAAA;QAAAa,MAAA;QAAAf,KAAA;QAAAgB,KAAA;QAAAC,KAAA;MAAA;IAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["metadata","$schema","apiVersion","name","title","category","ancestor","description","textdomain","attributes","displayType","type","usesContext","supports","align","html","spacing","margin","padding","color","gradients","__experimentalDefaultControls","background","text","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","__experimentalBorder","radius","width","style","interactivity","clientNavigation","edit","initBlock","queryTotal","settings","icon","init"],"sources":["@wordpress/block-library/src/query-total/index.js"],"sourcesContent":["/**\n * Internal dependencies\n */\nimport metadata from './block.json';\nimport edit from './edit';\nimport initBlock from '../utils/init-block';\nimport { queryTotal } from './icons';\n\n/* Block settings */\nconst { name } = metadata;\nexport { metadata, name };\n\nexport const settings = {\n\ticon: queryTotal,\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AAFA,MAAAA,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,WAAA;MAAAC,IAAA;MAAA;IAAA;EAAA;EAAAC,WAAA;EAAAC,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;IAAA;IAAAC,KAAA;MAAAC,SAAA;MAAAC,6BAAA;QAAAC,UAAA;QAAAC,IAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAX,6BAAA;QAAAI,QAAA;MAAA;IAAA;IAAAQ,oBAAA;MAAAC,MAAA;MAAAf,KAAA;MAAAgB,KAAA;MAAAC,KAAA;MAAAf,6BAAA;QAAAa,MAAA;QAAAf,KAAA;QAAAgB,KAAA;QAAAC,KAAA;MAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAF,KAAA;AAAA;AAIA,OAAOG,IAAI,MAAM,QAAQ;AACzB,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,SAASC,UAAU,QAAQ,SAAS;;AAEpC;AACA,MAAM;EAAEtC;AAAK,CAAC,GAAGH,QAAQ;AACzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMuC,QAAQ,GAAG;EACvBC,IAAI,EAAEF,UAAU;EAChBF;AACD,CAAC;AAED,OAAO,MAAMK,IAAI,GAAGA,CAAA,KAAMJ,SAAS,CAAE;EAAErC,IAAI;EAAEH,QAAQ;EAAE0C;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__","quote","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","role","citation","textAlign","supports","anchor","align","html","background","backgroundImage","backgroundSize","__experimentalDefaultControls","__experimentalBorder","color","radius","style","width","dimensions","minHeight","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","gradients","heading","link","text","layout","allowEditing","spacing","blockGap","padding","margin","interactivity","clientNavigation","styles","label","isDefault","editorStyle","save","transforms","settings","example","innerBlocks","content","init"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: 'Julio Cortázar',\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,IAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,IAAA;IAAA;IAAAE,SAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,oBAAA;MAAAC,KAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAL,6BAAA;QAAAE,KAAA;QAAAC,MAAA;QAAAC,KAAA;QAAAC,KAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,SAAA;MAAAP,6BAAA;QAAAO,SAAA;MAAA;IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAlB,6BAAA;QAAAW,QAAA;MAAA;IAAA;IAAAT,KAAA;MAAAiB,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAArB,6BAAA;QAAAH,UAAA;QAAAyB,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAArD,IAAA;IAAAsD,KAAA;IAAAC,SAAA;EAAA;IAAAvD,IAAA;IAAAsD,KAAA;EAAA;EAAAE,WAAA;EAAA9B,KAAA;AAAA;AAE1B,OAAO+B,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE1D;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAM2D,QAAQ,GAAG;EACvBlE,IAAI;EACJmE,OAAO,EAAE;IACRtD,UAAU,EAAE;MACXO,QAAQ,EAAE;
|
|
1
|
+
{"version":3,"names":["__","quote","icon","initBlock","deprecated","edit","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","value","type","source","selector","multiline","role","citation","textAlign","supports","anchor","align","html","background","backgroundImage","backgroundSize","__experimentalDefaultControls","__experimentalBorder","color","radius","style","width","dimensions","minHeight","__experimentalOnEnter","__experimentalOnMerge","typography","fontSize","lineHeight","__experimentalFontFamily","__experimentalFontWeight","__experimentalFontStyle","__experimentalTextTransform","__experimentalTextDecoration","__experimentalLetterSpacing","gradients","heading","link","text","layout","allowEditing","spacing","blockGap","padding","margin","interactivity","clientNavigation","styles","label","isDefault","editorStyle","save","transforms","settings","example","innerBlocks","content","init"],"sources":["@wordpress/block-library/src/quote/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\nimport { quote as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport deprecated from './deprecated';\nimport edit from './edit';\nimport metadata from './block.json';\nimport save from './save';\nimport transforms from './transforms';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tcitation: __( 'Julio Cortázar' ),\n\t\t},\n\t\tinnerBlocks: [\n\t\t\t{\n\t\t\t\tname: 'core/paragraph',\n\t\t\t\tattributes: {\n\t\t\t\t\tcontent: __( 'In quoting others, we cite ourselves.' ),\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t},\n\ttransforms,\n\tedit,\n\tsave,\n\tdeprecated,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,EAAE,QAAQ,iBAAiB;AACpC,SAASC,KAAK,IAAIC,IAAI,QAAQ,kBAAkB;;AAEhD;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAC3C,OAAOC,UAAU,MAAM,cAAc;AACrC,OAAOC,IAAI,MAAM,QAAQ;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,KAAA;MAAAC,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAC,SAAA;MAAA;MAAAC,IAAA;IAAA;IAAAC,QAAA;MAAAL,IAAA;MAAAC,MAAA;MAAAC,QAAA;MAAAE,IAAA;IAAA;IAAAE,SAAA;MAAAN,IAAA;IAAA;EAAA;EAAAO,QAAA;IAAAC,MAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,UAAA;MAAAC,eAAA;MAAAC,cAAA;MAAAC,6BAAA;QAAAF,eAAA;MAAA;IAAA;IAAAG,oBAAA;MAAAC,KAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAL,6BAAA;QAAAE,KAAA;QAAAC,MAAA;QAAAC,KAAA;QAAAC,KAAA;MAAA;IAAA;IAAAC,UAAA;MAAAC,SAAA;MAAAP,6BAAA;QAAAO,SAAA;MAAA;IAAA;IAAAC,qBAAA;IAAAC,qBAAA;IAAAC,UAAA;MAAAC,QAAA;MAAAC,UAAA;MAAAC,wBAAA;MAAAC,wBAAA;MAAAC,uBAAA;MAAAC,2BAAA;MAAAC,4BAAA;MAAAC,2BAAA;MAAAlB,6BAAA;QAAAW,QAAA;MAAA;IAAA;IAAAT,KAAA;MAAAiB,SAAA;MAAAC,OAAA;MAAAC,IAAA;MAAArB,6BAAA;QAAAH,UAAA;QAAAyB,IAAA;MAAA;IAAA;IAAAC,MAAA;MAAAC,YAAA;IAAA;IAAAC,OAAA;MAAAC,QAAA;MAAAC,OAAA;MAAAC,MAAA;IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;EAAA;EAAAC,MAAA;IAAArD,IAAA;IAAAsD,KAAA;IAAAC,SAAA;EAAA;IAAAvD,IAAA;IAAAsD,KAAA;EAAA;EAAAE,WAAA;EAAA9B,KAAA;AAAA;AAE1B,OAAO+B,IAAI,MAAM,QAAQ;AACzB,OAAOC,UAAU,MAAM,cAAc;AAErC,MAAM;EAAE1D;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAM2D,QAAQ,GAAG;EACvBlE,IAAI;EACJmE,OAAO,EAAE;IACRtD,UAAU,EAAE;MACXO,QAAQ,EAAEtB,EAAE,CAAE,gBAAiB;IAChC,CAAC;IACDsE,WAAW,EAAE,CACZ;MACC7D,IAAI,EAAE,gBAAgB;MACtBM,UAAU,EAAE;QACXwD,OAAO,EAAEvE,EAAE,CAAE,uCAAwC;MACtD;IACD,CAAC;EAEH,CAAC;EACDmE,UAAU;EACV9D,IAAI;EACJ6D,IAAI;EACJ9D;AACD,CAAC;AAED,OAAO,MAAMoE,IAAI,GAAGA,CAAA,KAAMrE,SAAS,CAAE;EAAEM,IAAI;EAAEH,QAAQ;EAAE8D;AAAS,CAAE,CAAC","ignoreList":[]}
|
package/build-module/rss/edit.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* WordPress dependencies
|
|
3
3
|
*/
|
|
4
4
|
import { BlockControls, InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
|
5
|
-
import { Button, Disabled, PanelBody, Placeholder, RangeControl, ToggleControl, ToolbarGroup, __experimentalInputControl as InputControl } from '@wordpress/components';
|
|
5
|
+
import { Button, Disabled, PanelBody, Placeholder, RangeControl, ToggleControl, ToolbarGroup, TextControl, __experimentalInputControl as InputControl } from '@wordpress/components';
|
|
6
6
|
import { useState } from '@wordpress/element';
|
|
7
7
|
import { grid, list, edit, rss } from '@wordpress/icons';
|
|
8
8
|
import { __, _x } from '@wordpress/i18n';
|
|
@@ -24,7 +24,9 @@ export default function RSSEdit({
|
|
|
24
24
|
displayExcerpt,
|
|
25
25
|
excerptLength,
|
|
26
26
|
feedURL,
|
|
27
|
-
itemsToShow
|
|
27
|
+
itemsToShow,
|
|
28
|
+
openInNewTab,
|
|
29
|
+
rel
|
|
28
30
|
} = attributes;
|
|
29
31
|
function toggleAttribute(propName) {
|
|
30
32
|
return () => {
|
|
@@ -165,8 +167,26 @@ export default function RSSEdit({
|
|
|
165
167
|
min: 2,
|
|
166
168
|
max: 6,
|
|
167
169
|
required: true
|
|
170
|
+
}), /*#__PURE__*/_jsx(ToggleControl, {
|
|
171
|
+
__nextHasNoMarginBottom: true,
|
|
172
|
+
label: __('Open links in new tab'),
|
|
173
|
+
checked: openInNewTab,
|
|
174
|
+
onChange: value => setAttributes({
|
|
175
|
+
openInNewTab: value
|
|
176
|
+
})
|
|
168
177
|
})]
|
|
169
178
|
})
|
|
179
|
+
}), /*#__PURE__*/_jsx(InspectorControls, {
|
|
180
|
+
group: "advanced",
|
|
181
|
+
children: /*#__PURE__*/_jsx(TextControl, {
|
|
182
|
+
__next40pxDefaultSize: true,
|
|
183
|
+
__nextHasNoMarginBottom: true,
|
|
184
|
+
label: __('Link rel'),
|
|
185
|
+
value: rel || '',
|
|
186
|
+
onChange: value => setAttributes({
|
|
187
|
+
rel: value
|
|
188
|
+
})
|
|
189
|
+
})
|
|
170
190
|
}), /*#__PURE__*/_jsx("div", {
|
|
171
191
|
...blockProps,
|
|
172
192
|
children: /*#__PURE__*/_jsx(Disabled, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["BlockControls","InspectorControls","useBlockProps","Button","Disabled","PanelBody","Placeholder","RangeControl","ToggleControl","ToolbarGroup","__experimentalInputControl","InputControl","useState","grid","list","edit","rss","__","_x","prependHTTP","ServerSideRender","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULT_MIN_ITEMS","DEFAULT_MAX_ITEMS","RSSEdit","attributes","setAttributes","isEditing","setIsEditing","feedURL","blockLayout","columns","displayAuthor","displayDate","displayExcerpt","excerptLength","itemsToShow","toggleAttribute","propName","value","onSubmitURL","event","preventDefault","blockProps","label","children","icon","instructions","onSubmit","className","__next40pxDefaultSize","type","hideLabelFromVision","placeholder","onChange","variant","toolbarControls","title","onClick","isActive","serverSideAttributes","style","border","undefined","spacing","controls","__nextHasNoMarginBottom","min","max","required","checked","block"],"sources":["@wordpress/block-library/src/rss/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport {\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tPlaceholder,\n\tRangeControl,\n\tToggleControl,\n\tToolbarGroup,\n\t__experimentalInputControl as InputControl,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { grid, list, edit, rss } from '@wordpress/icons';\nimport { __, _x } from '@wordpress/i18n';\nimport { prependHTTP } from '@wordpress/url';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nconst DEFAULT_MIN_ITEMS = 1;\nconst DEFAULT_MAX_ITEMS = 20;\n\nexport default function RSSEdit( { attributes, setAttributes } ) {\n\tconst [ isEditing, setIsEditing ] = useState( ! attributes.feedURL );\n\n\tconst {\n\t\tblockLayout,\n\t\tcolumns,\n\t\tdisplayAuthor,\n\t\tdisplayDate,\n\t\tdisplayExcerpt,\n\t\texcerptLength,\n\t\tfeedURL,\n\t\titemsToShow,\n\t} = attributes;\n\n\tfunction toggleAttribute( propName ) {\n\t\treturn () => {\n\t\t\tconst value = attributes[ propName ];\n\n\t\t\tsetAttributes( { [ propName ]: ! value } );\n\t\t};\n\t}\n\n\tfunction onSubmitURL( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( feedURL ) {\n\t\t\tsetAttributes( { feedURL: prependHTTP( feedURL ) } );\n\t\t\tsetIsEditing( false );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps();\n\n\tconst label = __( 'RSS URL' );\n\n\tif ( isEditing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ rss }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Display entries from any RSS or Atom feed.'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ onSubmitURL }\n\t\t\t\t\t\tclassName=\"wp-block-rss__placeholder-form\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ttype=\"url\"\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\tplaceholder={ __( 'Enter URL here…' ) }\n\t\t\t\t\t\t\tvalue={ feedURL }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { feedURL: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclassName=\"wp-block-rss__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</form>\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst toolbarControls = [\n\t\t{\n\t\t\ticon: edit,\n\t\t\ttitle: __( 'Edit RSS URL' ),\n\t\t\tonClick: () => setIsEditing( true ),\n\t\t},\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'RSS block display setting' ),\n\t\t\tonClick: () => setAttributes( { blockLayout: 'list' } ),\n\t\t\tisActive: blockLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'RSS block display setting' ),\n\t\t\tonClick: () => setAttributes( { blockLayout: 'grid' } ),\n\t\t\tisActive: blockLayout === 'grid',\n\t\t},\n\t];\n\n\t/*\n\t * This function merges the existing attributes with additional style properties.\n\t * The `border` and `spacing` properties are set to `undefined` to ensure that\n\t * these styles are reset and not applied on the server side.\n\t */\n\tconst serverSideAttributes = {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes?.style,\n\t\t\tborder: undefined,\n\t\t\tspacing: undefined,\n\t\t},\n\t};\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ toolbarControls } />\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Number of items' ) }\n\t\t\t\t\t\tvalue={ itemsToShow }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { itemsToShow: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ DEFAULT_MIN_ITEMS }\n\t\t\t\t\t\tmax={ DEFAULT_MAX_ITEMS }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display author' ) }\n\t\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayAuthor' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display date' ) }\n\t\t\t\t\t\tchecked={ displayDate }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayDate' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display excerpt' ) }\n\t\t\t\t\t\tchecked={ displayExcerpt }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayExcerpt' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayExcerpt && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 10 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ blockLayout === 'grid' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\tmax={ 6 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/rss\"\n\t\t\t\t\t\tattributes={ serverSideAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["BlockControls","InspectorControls","useBlockProps","Button","Disabled","PanelBody","Placeholder","RangeControl","ToggleControl","ToolbarGroup","TextControl","__experimentalInputControl","InputControl","useState","grid","list","edit","rss","__","_x","prependHTTP","ServerSideRender","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","DEFAULT_MIN_ITEMS","DEFAULT_MAX_ITEMS","RSSEdit","attributes","setAttributes","isEditing","setIsEditing","feedURL","blockLayout","columns","displayAuthor","displayDate","displayExcerpt","excerptLength","itemsToShow","openInNewTab","rel","toggleAttribute","propName","value","onSubmitURL","event","preventDefault","blockProps","label","children","icon","instructions","onSubmit","className","__next40pxDefaultSize","type","hideLabelFromVision","placeholder","onChange","variant","toolbarControls","title","onClick","isActive","serverSideAttributes","style","border","undefined","spacing","controls","__nextHasNoMarginBottom","min","max","required","checked","group","block"],"sources":["@wordpress/block-library/src/rss/edit.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n} from '@wordpress/block-editor';\nimport {\n\tButton,\n\tDisabled,\n\tPanelBody,\n\tPlaceholder,\n\tRangeControl,\n\tToggleControl,\n\tToolbarGroup,\n\tTextControl,\n\t__experimentalInputControl as InputControl,\n} from '@wordpress/components';\nimport { useState } from '@wordpress/element';\nimport { grid, list, edit, rss } from '@wordpress/icons';\nimport { __, _x } from '@wordpress/i18n';\nimport { prependHTTP } from '@wordpress/url';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nconst DEFAULT_MIN_ITEMS = 1;\nconst DEFAULT_MAX_ITEMS = 20;\n\nexport default function RSSEdit( { attributes, setAttributes } ) {\n\tconst [ isEditing, setIsEditing ] = useState( ! attributes.feedURL );\n\n\tconst {\n\t\tblockLayout,\n\t\tcolumns,\n\t\tdisplayAuthor,\n\t\tdisplayDate,\n\t\tdisplayExcerpt,\n\t\texcerptLength,\n\t\tfeedURL,\n\t\titemsToShow,\n\t\topenInNewTab,\n\t\trel,\n\t} = attributes;\n\n\tfunction toggleAttribute( propName ) {\n\t\treturn () => {\n\t\t\tconst value = attributes[ propName ];\n\n\t\t\tsetAttributes( { [ propName ]: ! value } );\n\t\t};\n\t}\n\n\tfunction onSubmitURL( event ) {\n\t\tevent.preventDefault();\n\n\t\tif ( feedURL ) {\n\t\t\tsetAttributes( { feedURL: prependHTTP( feedURL ) } );\n\t\t\tsetIsEditing( false );\n\t\t}\n\t}\n\n\tconst blockProps = useBlockProps();\n\n\tconst label = __( 'RSS URL' );\n\n\tif ( isEditing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder\n\t\t\t\t\ticon={ rss }\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tinstructions={ __(\n\t\t\t\t\t\t'Display entries from any RSS or Atom feed.'\n\t\t\t\t\t) }\n\t\t\t\t>\n\t\t\t\t\t<form\n\t\t\t\t\t\tonSubmit={ onSubmitURL }\n\t\t\t\t\t\tclassName=\"wp-block-rss__placeholder-form\"\n\t\t\t\t\t>\n\t\t\t\t\t\t<InputControl\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ label }\n\t\t\t\t\t\t\ttype=\"url\"\n\t\t\t\t\t\t\thideLabelFromVision\n\t\t\t\t\t\t\tplaceholder={ __( 'Enter URL here…' ) }\n\t\t\t\t\t\t\tvalue={ feedURL }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { feedURL: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tclassName=\"wp-block-rss__placeholder-input\"\n\t\t\t\t\t\t/>\n\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tvariant=\"primary\"\n\t\t\t\t\t\t\ttype=\"submit\"\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{ __( 'Apply' ) }\n\t\t\t\t\t\t</Button>\n\t\t\t\t\t</form>\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst toolbarControls = [\n\t\t{\n\t\t\ticon: edit,\n\t\t\ttitle: __( 'Edit RSS URL' ),\n\t\t\tonClick: () => setIsEditing( true ),\n\t\t},\n\t\t{\n\t\t\ticon: list,\n\t\t\ttitle: _x( 'List view', 'RSS block display setting' ),\n\t\t\tonClick: () => setAttributes( { blockLayout: 'list' } ),\n\t\t\tisActive: blockLayout === 'list',\n\t\t},\n\t\t{\n\t\t\ticon: grid,\n\t\t\ttitle: _x( 'Grid view', 'RSS block display setting' ),\n\t\t\tonClick: () => setAttributes( { blockLayout: 'grid' } ),\n\t\t\tisActive: blockLayout === 'grid',\n\t\t},\n\t];\n\n\t/*\n\t * This function merges the existing attributes with additional style properties.\n\t * The `border` and `spacing` properties are set to `undefined` to ensure that\n\t * these styles are reset and not applied on the server side.\n\t */\n\tconst serverSideAttributes = {\n\t\t...attributes,\n\t\tstyle: {\n\t\t\t...attributes?.style,\n\t\t\tborder: undefined,\n\t\t\tspacing: undefined,\n\t\t},\n\t};\n\treturn (\n\t\t<>\n\t\t\t<BlockControls>\n\t\t\t\t<ToolbarGroup controls={ toolbarControls } />\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\tlabel={ __( 'Number of items' ) }\n\t\t\t\t\t\tvalue={ itemsToShow }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { itemsToShow: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmin={ DEFAULT_MIN_ITEMS }\n\t\t\t\t\t\tmax={ DEFAULT_MAX_ITEMS }\n\t\t\t\t\t\trequired\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display author' ) }\n\t\t\t\t\t\tchecked={ displayAuthor }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayAuthor' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display date' ) }\n\t\t\t\t\t\tchecked={ displayDate }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayDate' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Display excerpt' ) }\n\t\t\t\t\t\tchecked={ displayExcerpt }\n\t\t\t\t\t\tonChange={ toggleAttribute( 'displayExcerpt' ) }\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayExcerpt && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Max number of words in excerpt' ) }\n\t\t\t\t\t\t\tvalue={ excerptLength }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { excerptLength: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 10 }\n\t\t\t\t\t\t\tmax={ 100 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t{ blockLayout === 'grid' && (\n\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t\t\tlabel={ __( 'Columns' ) }\n\t\t\t\t\t\t\tvalue={ columns }\n\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\tsetAttributes( { columns: value } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tmin={ 2 }\n\t\t\t\t\t\t\tmax={ 6 }\n\t\t\t\t\t\t\trequired\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\tlabel={ __( 'Open links in new tab' ) }\n\t\t\t\t\t\tchecked={ openInNewTab }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { openInNewTab: value } )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<InspectorControls group=\"advanced\">\n\t\t\t\t<TextControl\n\t\t\t\t\t__next40pxDefaultSize\n\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\tlabel={ __( 'Link rel' ) }\n\t\t\t\t\tvalue={ rel || '' }\n\t\t\t\t\tonChange={ ( value ) => setAttributes( { rel: value } ) }\n\t\t\t\t/>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/rss\"\n\t\t\t\t\t\tattributes={ serverSideAttributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["rss","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","columns","type","blockLayout","feedURL","itemsToShow","displayExcerpt","displayAuthor","displayDate","excerptLength","supports","align","html","interactivity","clientNavigation","__experimentalBorder","radius","color","width","style","spacing","margin","padding","__experimentalDefaultControls","background","text","gradients","link","editorStyle","edit","settings","example","init"],"sources":["@wordpress/block-library/src/rss/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { rss as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tfeedURL: 'https://wordpress.org',\n\t\t},\n\t},\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;;AAE9C;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,OAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,WAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,OAAA;MAAAF,IAAA;MAAA;IAAA;IAAAG,WAAA;MAAAH,IAAA;MAAA;IAAA;IAAAI,cAAA;MAAAJ,IAAA;MAAA;IAAA;IAAAK,aAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,WAAA;MAAAN,IAAA;MAAA;IAAA;IAAAO,aAAA;MAAAP,IAAA;MAAA;IAAA;EAAA;
|
|
1
|
+
{"version":3,"names":["rss","icon","initBlock","metadata","$schema","apiVersion","name","title","category","description","keywords","textdomain","attributes","columns","type","blockLayout","feedURL","itemsToShow","displayExcerpt","displayAuthor","displayDate","excerptLength","openInNewTab","rel","supports","align","html","interactivity","clientNavigation","__experimentalBorder","radius","color","width","style","spacing","margin","padding","__experimentalDefaultControls","background","text","gradients","link","editorStyle","edit","settings","example","init"],"sources":["@wordpress/block-library/src/rss/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { rss as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\nimport initBlock from '../utils/init-block';\nimport metadata from './block.json';\nimport edit from './edit';\n\nconst { name } = metadata;\n\nexport { metadata, name };\n\nexport const settings = {\n\ticon,\n\texample: {\n\t\tattributes: {\n\t\t\tfeedURL: 'https://wordpress.org',\n\t\t},\n\t},\n\tedit,\n};\n\nexport const init = () => initBlock( { name, metadata, settings } );\n"],"mappings":"AAAA;AACA;AACA;AACA,SAASA,GAAG,IAAIC,IAAI,QAAQ,kBAAkB;;AAE9C;AACA;AACA;AACA,OAAOC,SAAS,MAAM,qBAAqB;AAAC,MAAAC,QAAA;EAAAC,OAAA;EAAAC,UAAA;EAAAC,IAAA;EAAAC,KAAA;EAAAC,QAAA;EAAAC,WAAA;EAAAC,QAAA;EAAAC,UAAA;EAAAC,UAAA;IAAAC,OAAA;MAAAC,IAAA;MAAA;IAAA;IAAAC,WAAA;MAAAD,IAAA;MAAA;IAAA;IAAAE,OAAA;MAAAF,IAAA;MAAA;IAAA;IAAAG,WAAA;MAAAH,IAAA;MAAA;IAAA;IAAAI,cAAA;MAAAJ,IAAA;MAAA;IAAA;IAAAK,aAAA;MAAAL,IAAA;MAAA;IAAA;IAAAM,WAAA;MAAAN,IAAA;MAAA;IAAA;IAAAO,aAAA;MAAAP,IAAA;MAAA;IAAA;IAAAQ,YAAA;MAAAR,IAAA;MAAA;IAAA;IAAAS,GAAA;MAAAT,IAAA;IAAA;EAAA;EAAAU,QAAA;IAAAC,KAAA;IAAAC,IAAA;IAAAC,aAAA;MAAAC,gBAAA;IAAA;IAAAC,oBAAA;MAAAC,MAAA;MAAAC,KAAA;MAAAC,KAAA;MAAAC,KAAA;IAAA;IAAAC,OAAA;MAAAC,MAAA;MAAAC,OAAA;MAAAC,6BAAA;QAAAD,OAAA;QAAAD,MAAA;MAAA;IAAA;IAAAJ,KAAA;MAAAO,UAAA;MAAAC,IAAA;MAAAC,SAAA;MAAAC,IAAA;IAAA;EAAA;EAAAC,WAAA;EAAAT,KAAA;AAAA;AAE5C,OAAOU,IAAI,MAAM,QAAQ;AAEzB,MAAM;EAAErC;AAAK,CAAC,GAAGH,QAAQ;AAEzB,SAASA,QAAQ,EAAEG,IAAI;AAEvB,OAAO,MAAMsC,QAAQ,GAAG;EACvB3C,IAAI;EACJ4C,OAAO,EAAE;IACRjC,UAAU,EAAE;MACXI,OAAO,EAAE;IACV;EACD,CAAC;EACD2B;AACD,CAAC;AAED,OAAO,MAAMG,IAAI,GAAGA,CAAA,KAAM5C,SAAS,CAAE;EAAEI,IAAI;EAAEH,QAAQ;EAAEyC;AAAS,CAAE,CAAC","ignoreList":[]}
|
|
@@ -57,7 +57,7 @@ export default function SiteTitleEdit({
|
|
|
57
57
|
const dropdownMenuProps = useToolsPanelDropdownMenuProps();
|
|
58
58
|
function setTitle(newTitle) {
|
|
59
59
|
editEntityRecord('root', 'site', undefined, {
|
|
60
|
-
title: newTitle
|
|
60
|
+
title: newTitle.trim()
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
const TagName = level === 0 ? 'p' : `h${level}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["clsx","useDispatch","useSelect","store","coreStore","__","RichText","AlignmentControl","InspectorControls","BlockControls","useBlockProps","HeadingLevelDropdown","ToggleControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","createBlock","getDefaultBlockName","decodeEntities","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SiteTitleEdit","attributes","setAttributes","insertBlocksAfter","level","levelOptions","textAlign","isLink","linkTarget","canUserEdit","title","select","canUser","getEntityRecord","getEditedEntityRecord","canEdit","kind","name","settings","readOnlySettings","editEntityRecord","dropdownMenuProps","setTitle","newTitle","undefined","TagName","blockProps","className","siteTitleContent","children","tagName","href","placeholder","value","onChange","allowedFormats","disableLineBreaks","__unstableOnSplitAtEnd","onClick","event","preventDefault","group","options","newLevel","nextAlign","label","resetAll","hasValue","onDeselect","isShownByDefault","__nextHasNoMarginBottom","checked"],"sources":["@wordpress/block-library/src/site-title/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tAlignmentControl,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tHeadingLevelDropdown,\n} from '@wordpress/block-editor';\nimport {\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nexport default function SiteTitleEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { level, levelOptions, textAlign, isLink, linkTarget } = attributes;\n\tconst { canUserEdit, title } = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst canEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst settings = canEdit ? getEditedEntityRecord( 'root', 'site' ) : {};\n\t\tconst readOnlySettings = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tcanUserEdit: canEdit,\n\t\t\ttitle: canEdit ? settings?.title : readOnlySettings?.name,\n\t\t};\n\t}, [] );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tfunction setTitle( newTitle ) {\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\ttitle: newTitle,\n\t\t} );\n\t}\n\n\tconst TagName = level === 0 ? 'p' : `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t'wp-block-site-title__placeholder': ! canUserEdit && ! title,\n\t\t} ),\n\t} );\n\tconst siteTitleContent = canUserEdit ? (\n\t\t<TagName { ...blockProps }>\n\t\t\t<RichText\n\t\t\t\ttagName={ isLink ? 'a' : 'span' }\n\t\t\t\thref={ isLink ? '#site-title-pseudo-link' : undefined }\n\t\t\t\taria-label={ __( 'Site title text' ) }\n\t\t\t\tplaceholder={ __( 'Write site title…' ) }\n\t\t\t\tvalue={ title }\n\t\t\t\tonChange={ setTitle }\n\t\t\t\tallowedFormats={ [] }\n\t\t\t\tdisableLineBreaks\n\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t/>\n\t\t</TagName>\n\t) : (\n\t\t<TagName { ...blockProps }>\n\t\t\t{ isLink ? (\n\t\t\t\t<a\n\t\t\t\t\thref=\"#site-title-pseudo-link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t{ decodeEntities( title ) ||\n\t\t\t\t\t\t__( 'Site Title placeholder' ) }\n\t\t\t\t</a>\n\t\t\t) : (\n\t\t\t\t<span>\n\t\t\t\t\t{ decodeEntities( title ) ||\n\t\t\t\t\t\t__( 'Site Title placeholder' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</TagName>\n\t);\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\toptions={ levelOptions }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tisLink: true,\n\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => ! isLink }\n\t\t\t\t\t\tlabel={ __( 'Make title link to home' ) }\n\t\t\t\t\t\tonDeselect={ () => setAttributes( { isLink: true } ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Make title link to home' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => linkTarget !== '_self' }\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { linkTarget: '_self' } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t{ siteTitleContent }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["clsx","useDispatch","useSelect","store","coreStore","__","RichText","AlignmentControl","InspectorControls","BlockControls","useBlockProps","HeadingLevelDropdown","ToggleControl","__experimentalToolsPanel","ToolsPanel","__experimentalToolsPanelItem","ToolsPanelItem","createBlock","getDefaultBlockName","decodeEntities","useToolsPanelDropdownMenuProps","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","SiteTitleEdit","attributes","setAttributes","insertBlocksAfter","level","levelOptions","textAlign","isLink","linkTarget","canUserEdit","title","select","canUser","getEntityRecord","getEditedEntityRecord","canEdit","kind","name","settings","readOnlySettings","editEntityRecord","dropdownMenuProps","setTitle","newTitle","undefined","trim","TagName","blockProps","className","siteTitleContent","children","tagName","href","placeholder","value","onChange","allowedFormats","disableLineBreaks","__unstableOnSplitAtEnd","onClick","event","preventDefault","group","options","newLevel","nextAlign","label","resetAll","hasValue","onDeselect","isShownByDefault","__nextHasNoMarginBottom","checked"],"sources":["@wordpress/block-library/src/site-title/edit.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport clsx from 'clsx';\n\n/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tRichText,\n\tAlignmentControl,\n\tInspectorControls,\n\tBlockControls,\n\tuseBlockProps,\n\tHeadingLevelDropdown,\n} from '@wordpress/block-editor';\nimport {\n\tToggleControl,\n\t__experimentalToolsPanel as ToolsPanel,\n\t__experimentalToolsPanelItem as ToolsPanelItem,\n} from '@wordpress/components';\nimport { createBlock, getDefaultBlockName } from '@wordpress/blocks';\nimport { decodeEntities } from '@wordpress/html-entities';\n\n/**\n * Internal dependencies\n */\nimport { useToolsPanelDropdownMenuProps } from '../utils/hooks';\n\nexport default function SiteTitleEdit( {\n\tattributes,\n\tsetAttributes,\n\tinsertBlocksAfter,\n} ) {\n\tconst { level, levelOptions, textAlign, isLink, linkTarget } = attributes;\n\tconst { canUserEdit, title } = useSelect( ( select ) => {\n\t\tconst { canUser, getEntityRecord, getEditedEntityRecord } =\n\t\t\tselect( coreStore );\n\t\tconst canEdit = canUser( 'update', {\n\t\t\tkind: 'root',\n\t\t\tname: 'site',\n\t\t} );\n\t\tconst settings = canEdit ? getEditedEntityRecord( 'root', 'site' ) : {};\n\t\tconst readOnlySettings = getEntityRecord( 'root', '__unstableBase' );\n\n\t\treturn {\n\t\t\tcanUserEdit: canEdit,\n\t\t\ttitle: canEdit ? settings?.title : readOnlySettings?.name,\n\t\t};\n\t}, [] );\n\tconst { editEntityRecord } = useDispatch( coreStore );\n\tconst dropdownMenuProps = useToolsPanelDropdownMenuProps();\n\n\tfunction setTitle( newTitle ) {\n\t\teditEntityRecord( 'root', 'site', undefined, {\n\t\t\ttitle: newTitle.trim(),\n\t\t} );\n\t}\n\n\tconst TagName = level === 0 ? 'p' : `h${ level }`;\n\tconst blockProps = useBlockProps( {\n\t\tclassName: clsx( {\n\t\t\t[ `has-text-align-${ textAlign }` ]: textAlign,\n\t\t\t'wp-block-site-title__placeholder': ! canUserEdit && ! title,\n\t\t} ),\n\t} );\n\tconst siteTitleContent = canUserEdit ? (\n\t\t<TagName { ...blockProps }>\n\t\t\t<RichText\n\t\t\t\ttagName={ isLink ? 'a' : 'span' }\n\t\t\t\thref={ isLink ? '#site-title-pseudo-link' : undefined }\n\t\t\t\taria-label={ __( 'Site title text' ) }\n\t\t\t\tplaceholder={ __( 'Write site title…' ) }\n\t\t\t\tvalue={ title }\n\t\t\t\tonChange={ setTitle }\n\t\t\t\tallowedFormats={ [] }\n\t\t\t\tdisableLineBreaks\n\t\t\t\t__unstableOnSplitAtEnd={ () =>\n\t\t\t\t\tinsertBlocksAfter( createBlock( getDefaultBlockName() ) )\n\t\t\t\t}\n\t\t\t/>\n\t\t</TagName>\n\t) : (\n\t\t<TagName { ...blockProps }>\n\t\t\t{ isLink ? (\n\t\t\t\t<a\n\t\t\t\t\thref=\"#site-title-pseudo-link\"\n\t\t\t\t\tonClick={ ( event ) => event.preventDefault() }\n\t\t\t\t>\n\t\t\t\t\t{ decodeEntities( title ) ||\n\t\t\t\t\t\t__( 'Site Title placeholder' ) }\n\t\t\t\t</a>\n\t\t\t) : (\n\t\t\t\t<span>\n\t\t\t\t\t{ decodeEntities( title ) ||\n\t\t\t\t\t\t__( 'Site Title placeholder' ) }\n\t\t\t\t</span>\n\t\t\t) }\n\t\t</TagName>\n\t);\n\treturn (\n\t\t<>\n\t\t\t<BlockControls group=\"block\">\n\t\t\t\t<HeadingLevelDropdown\n\t\t\t\t\tvalue={ level }\n\t\t\t\t\toptions={ levelOptions }\n\t\t\t\t\tonChange={ ( newLevel ) =>\n\t\t\t\t\t\tsetAttributes( { level: newLevel } )\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t\t<AlignmentControl\n\t\t\t\t\tvalue={ textAlign }\n\t\t\t\t\tonChange={ ( nextAlign ) => {\n\t\t\t\t\t\tsetAttributes( { textAlign: nextAlign } );\n\t\t\t\t\t} }\n\t\t\t\t/>\n\t\t\t</BlockControls>\n\t\t\t<InspectorControls>\n\t\t\t\t<ToolsPanel\n\t\t\t\t\tlabel={ __( 'Settings' ) }\n\t\t\t\t\tresetAll={ () => {\n\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\tisLink: true,\n\t\t\t\t\t\t\tlinkTarget: '_self',\n\t\t\t\t\t\t} );\n\t\t\t\t\t} }\n\t\t\t\t\tdropdownMenuProps={ dropdownMenuProps }\n\t\t\t\t>\n\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\thasValue={ () => ! isLink }\n\t\t\t\t\t\tlabel={ __( 'Make title link to home' ) }\n\t\t\t\t\t\tonDeselect={ () => setAttributes( { isLink: true } ) }\n\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t>\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\tlabel={ __( 'Make title link to home' ) }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { isLink: ! isLink } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tchecked={ isLink }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t{ isLink && (\n\t\t\t\t\t\t<ToolsPanelItem\n\t\t\t\t\t\t\thasValue={ () => linkTarget !== '_self' }\n\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\tonDeselect={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( { linkTarget: '_self' } )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tisShownByDefault\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\t\t__nextHasNoMarginBottom\n\t\t\t\t\t\t\t\tlabel={ __( 'Open in new tab' ) }\n\t\t\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\t\tlinkTarget: value ? '_blank' : '_self',\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\tchecked={ linkTarget === '_blank' }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolsPanelItem>\n\t\t\t\t\t) }\n\t\t\t\t</ToolsPanel>\n\t\t\t</InspectorControls>\n\t\t\t{ siteTitleContent }\n\t\t</>\n\t);\n}\n"],"mappings":"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","ignoreList":[]}
|