@wordpress/block-library 7.11.0 → 7.12.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +2 -0
- package/build/archives/edit.js +7 -0
- package/build/archives/edit.js.map +1 -1
- package/build/archives/index.js +4 -0
- package/build/archives/index.js.map +1 -1
- package/build/block/edit.js +4 -2
- package/build/block/edit.js.map +1 -1
- package/build/block/edit.native.js +4 -2
- package/build/block/edit.native.js.map +1 -1
- package/build/calendar/edit.js +12 -5
- package/build/calendar/edit.js.map +1 -1
- package/build/columns/edit.native.js +2 -1
- package/build/columns/edit.native.js.map +1 -1
- package/build/cover/edit/resizable-cover.js +6 -0
- package/build/cover/edit/resizable-cover.js.map +1 -1
- package/build/group/transforms.js +5 -0
- package/build/group/transforms.js.map +1 -1
- package/build/index.native.js +17 -4
- package/build/index.native.js.map +1 -1
- package/build/list/index.js +6 -0
- package/build/list/index.js.map +1 -1
- package/build/list/v2/edit.js +16 -5
- package/build/list/v2/edit.js.map +1 -1
- package/build/list/v2/tag-name.js +31 -0
- package/build/list/v2/tag-name.js.map +1 -0
- package/build/list/v2/tag-name.native.js +32 -0
- package/build/list/v2/tag-name.native.js.map +1 -0
- package/build/list/v2/transforms.js +1 -11
- package/build/list/v2/transforms.js.map +1 -1
- package/build/list-item/edit.js +1 -0
- package/build/list-item/edit.js.map +1 -1
- package/build/list-item/edit.native.js +158 -0
- package/build/list-item/edit.native.js.map +1 -0
- package/build/list-item/icons.native.js +53 -0
- package/build/list-item/icons.native.js.map +1 -0
- package/build/list-item/list-style-type.native.js +136 -0
- package/build/list-item/list-style-type.native.js.map +1 -0
- package/build/media-text/deprecated.js +188 -66
- package/build/media-text/deprecated.js.map +1 -1
- package/build/media-text/edit.js +2 -1
- package/build/media-text/edit.js.map +1 -1
- package/build/media-text/media-container.js +1 -1
- package/build/media-text/media-container.js.map +1 -1
- package/build/navigation/edit/index.js +68 -123
- package/build/navigation/edit/index.js.map +1 -1
- package/build/navigation/edit/navigation-menu-selector.js +11 -14
- package/build/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build/navigation/edit/placeholder/index.js +4 -2
- package/build/navigation/edit/placeholder/index.js.map +1 -1
- package/build/navigation/edit/responsive-wrapper.js +13 -3
- package/build/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build/navigation/edit/use-create-navigation-menu.js +5 -1
- package/build/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build/navigation/edit/use-inner-blocks.js +43 -0
- package/build/navigation/edit/use-inner-blocks.js.map +1 -0
- package/build/navigation/edit/utils.js +28 -0
- package/build/navigation/edit/utils.js.map +1 -0
- package/build/navigation/use-navigation-menu.js +7 -3
- package/build/navigation/use-navigation-menu.js.map +1 -1
- package/build/post-author/edit.js +5 -2
- package/build/post-author/edit.js.map +1 -1
- package/build/post-author-biography/edit.js +7 -1
- package/build/post-author-biography/edit.js.map +1 -1
- package/build/post-content/edit.js +4 -2
- package/build/post-content/edit.js.map +1 -1
- package/build/post-featured-image/edit.js +16 -2
- package/build/post-featured-image/edit.js.map +1 -1
- package/build/post-featured-image/index.js +9 -0
- package/build/post-featured-image/index.js.map +1 -1
- package/build/query/edit/inspector-controls/index.js +42 -9
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/inspector-controls/taxonomy-controls.js +21 -14
- package/build/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build/query-title/edit.js +20 -7
- package/build/query-title/edit.js.map +1 -1
- package/build/query-title/index.js +4 -0
- package/build/query-title/index.js.map +1 -1
- package/build/query-title/variations.js +10 -0
- package/build/query-title/variations.js.map +1 -1
- package/build/quote/transforms.js +2 -2
- package/build/quote/transforms.js.map +1 -1
- package/build/separator/edit.js +1 -1
- package/build/separator/edit.js.map +1 -1
- package/build/social-links/edit.js +1 -0
- package/build/social-links/edit.js.map +1 -1
- package/build/template-part/edit/index.js +4 -2
- package/build/template-part/edit/index.js.map +1 -1
- package/build-module/archives/edit.js +7 -0
- package/build-module/archives/edit.js.map +1 -1
- package/build-module/archives/index.js +4 -0
- package/build-module/archives/index.js.map +1 -1
- package/build-module/block/edit.js +5 -3
- package/build-module/block/edit.js.map +1 -1
- package/build-module/block/edit.native.js +5 -3
- package/build-module/block/edit.native.js.map +1 -1
- package/build-module/calendar/edit.js +12 -4
- package/build-module/calendar/edit.js.map +1 -1
- package/build-module/columns/edit.native.js +3 -2
- package/build-module/columns/edit.native.js.map +1 -1
- package/build-module/cover/edit/resizable-cover.js +6 -0
- package/build-module/cover/edit/resizable-cover.js.map +1 -1
- package/build-module/group/transforms.js +5 -0
- package/build-module/group/transforms.js.map +1 -1
- package/build-module/index.native.js +16 -4
- package/build-module/index.native.js.map +1 -1
- package/build-module/list/index.js +1 -1
- package/build-module/list/index.js.map +1 -1
- package/build-module/list/v2/edit.js +15 -5
- package/build-module/list/v2/edit.js.map +1 -1
- package/build-module/list/v2/tag-name.js +21 -0
- package/build-module/list/v2/tag-name.js.map +1 -0
- package/build-module/list/v2/tag-name.native.js +21 -0
- package/build-module/list/v2/tag-name.native.js.map +1 -0
- package/build-module/list/v2/transforms.js +1 -10
- package/build-module/list/v2/transforms.js.map +1 -1
- package/build-module/list-item/edit.js +1 -3
- package/build-module/list-item/edit.js.map +1 -1
- package/build-module/list-item/edit.native.js +141 -0
- package/build-module/list-item/edit.native.js.map +1 -0
- package/build-module/list-item/icons.native.js +37 -0
- package/build-module/list-item/icons.native.js.map +1 -0
- package/build-module/list-item/list-style-type.native.js +124 -0
- package/build-module/list-item/list-style-type.native.js.map +1 -0
- package/build-module/media-text/deprecated.js +189 -65
- package/build-module/media-text/deprecated.js.map +1 -1
- package/build-module/media-text/edit.js +2 -1
- package/build-module/media-text/edit.js.map +1 -1
- package/build-module/media-text/media-container.js +1 -1
- package/build-module/media-text/media-container.js.map +1 -1
- package/build-module/navigation/edit/index.js +66 -122
- package/build-module/navigation/edit/index.js.map +1 -1
- package/build-module/navigation/edit/navigation-menu-selector.js +12 -15
- package/build-module/navigation/edit/navigation-menu-selector.js.map +1 -1
- package/build-module/navigation/edit/placeholder/index.js +4 -2
- package/build-module/navigation/edit/placeholder/index.js.map +1 -1
- package/build-module/navigation/edit/responsive-wrapper.js +12 -3
- package/build-module/navigation/edit/responsive-wrapper.js.map +1 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js +5 -1
- package/build-module/navigation/edit/use-create-navigation-menu.js.map +1 -1
- package/build-module/navigation/edit/use-inner-blocks.js +33 -0
- package/build-module/navigation/edit/use-inner-blocks.js.map +1 -0
- package/build-module/navigation/edit/utils.js +21 -0
- package/build-module/navigation/edit/utils.js.map +1 -0
- package/build-module/navigation/use-navigation-menu.js +7 -3
- package/build-module/navigation/use-navigation-menu.js.map +1 -1
- package/build-module/post-author/edit.js +5 -2
- package/build-module/post-author/edit.js.map +1 -1
- package/build-module/post-author-biography/edit.js +6 -1
- package/build-module/post-author-biography/edit.js.map +1 -1
- package/build-module/post-content/edit.js +5 -3
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-featured-image/edit.js +17 -3
- package/build-module/post-featured-image/edit.js.map +1 -1
- package/build-module/post-featured-image/index.js +9 -0
- package/build-module/post-featured-image/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/index.js +42 -9
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js +16 -12
- package/build-module/query/edit/inspector-controls/taxonomy-controls.js.map +1 -1
- package/build-module/query-title/edit.js +20 -8
- package/build-module/query-title/edit.js.map +1 -1
- package/build-module/query-title/index.js +4 -0
- package/build-module/query-title/index.js.map +1 -1
- package/build-module/query-title/variations.js +10 -0
- package/build-module/query-title/variations.js.map +1 -1
- package/build-module/quote/transforms.js +3 -3
- package/build-module/quote/transforms.js.map +1 -1
- package/build-module/separator/edit.js +1 -1
- package/build-module/separator/edit.js.map +1 -1
- package/build-module/social-links/edit.js +1 -0
- package/build-module/social-links/edit.js.map +1 -1
- package/build-module/template-part/edit/index.js +5 -3
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-style/editor-rtl.css +10 -0
- package/build-style/editor.css +10 -0
- package/build-style/latest-posts/editor-rtl.css +3 -0
- package/build-style/latest-posts/editor.css +3 -0
- package/build-style/navigation/style-rtl.css +17 -19
- package/build-style/navigation/style.css +17 -19
- package/build-style/query/editor-rtl.css +7 -0
- package/build-style/query/editor.css +7 -0
- package/build-style/query-pagination/style-rtl.css +6 -0
- package/build-style/query-pagination/style.css +6 -0
- package/build-style/search/style-rtl.css +2 -0
- package/build-style/search/style.css +2 -0
- package/build-style/style-rtl.css +26 -19
- package/build-style/style.css +26 -19
- package/build-style/tag-cloud/style-rtl.css +1 -0
- package/build-style/tag-cloud/style.css +1 -0
- package/package.json +28 -29
- package/src/archives/block.json +4 -0
- package/src/archives/edit.js +12 -1
- package/src/archives/index.php +5 -3
- package/src/audio/test/__snapshots__/edit.native.js.snap +16 -2
- package/src/block/edit.js +4 -4
- package/src/block/edit.native.js +4 -4
- package/src/calendar/edit.js +11 -4
- package/src/columns/edit.native.js +4 -2
- package/src/cover/edit/resizable-cover.js +6 -0
- package/src/cover/index.php +2 -2
- package/src/file/test/__snapshots__/edit.native.js.snap +32 -4
- package/src/group/transforms.js +7 -0
- package/src/home-link/index.php +8 -17
- package/src/image/test/edit.native.js +6 -10
- package/src/index.native.js +15 -2
- package/src/latest-posts/editor.scss +5 -0
- package/src/list/index.js +1 -1
- package/src/list/test/__snapshots__/edit.native.js.snap +133 -0
- package/src/list/test/edit.native.js +511 -7
- package/src/list/v2/edit.js +12 -4
- package/src/list/v2/tag-name.js +13 -0
- package/src/list/v2/tag-name.native.js +12 -0
- package/src/list/v2/transforms.js +1 -9
- package/src/list-item/edit.js +1 -1
- package/src/list-item/edit.native.js +148 -0
- package/src/list-item/icons.native.js +34 -0
- package/src/list-item/list-style-type.native.js +139 -0
- package/src/list-item/style.native.scss +45 -0
- package/src/media-text/deprecated.js +561 -415
- package/src/media-text/edit.js +1 -0
- package/src/media-text/media-container.js +3 -1
- package/src/media-text/test/media-container.js +24 -0
- package/src/navigation/edit/index.js +83 -164
- package/src/navigation/edit/navigation-menu-selector.js +12 -26
- package/src/navigation/edit/placeholder/index.js +4 -2
- package/src/navigation/edit/responsive-wrapper.js +24 -3
- package/src/navigation/edit/use-create-navigation-menu.js +4 -0
- package/src/navigation/edit/use-inner-blocks.js +39 -0
- package/src/navigation/edit/utils.js +30 -0
- package/src/navigation/index.php +6 -0
- package/src/navigation/style.scss +12 -22
- package/src/navigation/use-navigation-menu.js +9 -5
- package/src/navigation-link/index.php +1 -1
- package/src/navigation-submenu/index.php +1 -1
- package/src/page-list/index.php +4 -4
- package/src/post-author/edit.js +6 -3
- package/src/post-author-biography/edit.js +4 -1
- package/src/post-content/edit.js +4 -4
- package/src/post-featured-image/block.json +9 -0
- package/src/post-featured-image/edit.js +23 -1
- package/src/post-featured-image/index.php +3 -1
- package/src/post-title/index.php +2 -1
- package/src/preformatted/test/__snapshots__/edit.native.js.snap +16 -2
- package/src/query/edit/inspector-controls/index.js +129 -65
- package/src/query/edit/inspector-controls/taxonomy-controls.js +17 -10
- package/src/query/editor.scss +9 -0
- package/src/query-pagination/style.scss +14 -0
- package/src/query-title/block.json +4 -0
- package/src/query-title/edit.js +33 -6
- package/src/query-title/index.php +17 -1
- package/src/query-title/variations.js +13 -0
- package/src/quote/transforms.js +3 -7
- package/src/search/style.scss +2 -0
- package/src/search/test/__snapshots__/edit.native.js.snap +56 -7
- package/src/separator/edit.js +1 -1
- package/src/separator/test/edit.js +5 -3
- package/src/site-title/index.php +8 -9
- package/src/social-link/index.php +1 -1
- package/src/social-links/edit.js +1 -0
- package/src/tag-cloud/style.scss +1 -0
- package/src/template-part/edit/index.js +4 -4
package/CHANGELOG.md
CHANGED
package/build/archives/edit.js
CHANGED
|
@@ -26,6 +26,7 @@ function ArchivesEdit(_ref) {
|
|
|
26
26
|
setAttributes
|
|
27
27
|
} = _ref;
|
|
28
28
|
const {
|
|
29
|
+
showLabel,
|
|
29
30
|
showPostCounts,
|
|
30
31
|
displayAsDropdown,
|
|
31
32
|
type
|
|
@@ -38,6 +39,12 @@ function ArchivesEdit(_ref) {
|
|
|
38
39
|
onChange: () => setAttributes({
|
|
39
40
|
displayAsDropdown: !displayAsDropdown
|
|
40
41
|
})
|
|
42
|
+
}), displayAsDropdown && (0, _element.createElement)(_components.ToggleControl, {
|
|
43
|
+
label: (0, _i18n.__)('Show label'),
|
|
44
|
+
checked: showLabel,
|
|
45
|
+
onChange: () => setAttributes({
|
|
46
|
+
showLabel: !showLabel
|
|
47
|
+
})
|
|
41
48
|
}), (0, _element.createElement)(_components.ToggleControl, {
|
|
42
49
|
label: (0, _i18n.__)('Show post counts'),
|
|
43
50
|
checked: showPostCounts,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["ArchivesEdit","attributes","setAttributes","showPostCounts","displayAsDropdown","type","label","value"],"mappings":";;;;;;;;;;;AAGA;;AAMA;;AACA;;AACA;;AAXA;AACA;AACA;AAWe,SAASA,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/archives/edit.js"],"names":["ArchivesEdit","attributes","setAttributes","showLabel","showPostCounts","displayAsDropdown","type","label","value"],"mappings":";;;;;;;;;;;AAGA;;AAMA;;AACA;;AACA;;AAXA;AACA;AACA;AAWe,SAASA,YAAT,OAAuD;AAAA,MAAhC;AAAEC,IAAAA,UAAF;AAAcC,IAAAA;AAAd,GAAgC;AACrE,QAAM;AAAEC,IAAAA,SAAF;AAAaC,IAAAA,cAAb;AAA6BC,IAAAA,iBAA7B;AAAgDC,IAAAA;AAAhD,MAAyDL,UAA/D;AAEA,SACC,qDACC,4BAAC,8BAAD,QACC,4BAAC,qBAAD;AAAW,IAAA,KAAK,EAAG,cAAI,UAAJ;AAAnB,KACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,qBAAJ,CADT;AAEC,IAAA,OAAO,EAAGI,iBAFX;AAGC,IAAA,QAAQ,EAAG,MACVH,aAAa,CAAE;AACdG,MAAAA,iBAAiB,EAAE,CAAEA;AADP,KAAF;AAJf,IADD,EAUGA,iBAAiB,IAClB,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,YAAJ,CADT;AAEC,IAAA,OAAO,EAAGF,SAFX;AAGC,IAAA,QAAQ,EAAG,MACVD,aAAa,CAAE;AACdC,MAAAA,SAAS,EAAE,CAAEA;AADC,KAAF;AAJf,IAXF,EAqBC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,kBAAJ,CADT;AAEC,IAAA,OAAO,EAAGC,cAFX;AAGC,IAAA,QAAQ,EAAG,MACVF,aAAa,CAAE;AACdE,MAAAA,cAAc,EAAE,CAAEA;AADJ,KAAF;AAJf,IArBD,EA8BC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAG,cAAI,WAAJ,CADT;AAEC,IAAA,OAAO,EAAG,CACT;AAAEG,MAAAA,KAAK,EAAE,cAAI,MAAJ,CAAT;AAAuBC,MAAAA,KAAK,EAAE;AAA9B,KADS,EAET;AAAED,MAAAA,KAAK,EAAE,cAAI,OAAJ,CAAT;AAAwBC,MAAAA,KAAK,EAAE;AAA/B,KAFS,EAGT;AAAED,MAAAA,KAAK,EAAE,cAAI,MAAJ,CAAT;AAAuBC,MAAAA,KAAK,EAAE;AAA9B,KAHS,EAIT;AAAED,MAAAA,KAAK,EAAE,cAAI,KAAJ,CAAT;AAAsBC,MAAAA,KAAK,EAAE;AAA7B,KAJS,CAFX;AAQC,IAAA,KAAK,EAAGF,IART;AASC,IAAA,QAAQ,EAAKE,KAAF,IACVN,aAAa,CAAE;AAAEI,MAAAA,IAAI,EAAEE;AAAR,KAAF;AAVf,IA9BD,CADD,CADD,EA+CC,mCAAU,iCAAV,EACC,4BAAC,oBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAC,eADP;AAEC,IAAA,UAAU,EAAGP;AAFd,IADD,CADD,CA/CD,CADD;AA0DA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport {\n\tPanelBody,\n\tToggleControl,\n\tSelectControl,\n\tDisabled,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport { InspectorControls, useBlockProps } from '@wordpress/block-editor';\nimport ServerSideRender from '@wordpress/server-side-render';\n\nexport default function ArchivesEdit( { attributes, setAttributes } ) {\n\tconst { showLabel, showPostCounts, displayAsDropdown, type } = attributes;\n\n\treturn (\n\t\t<>\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody title={ __( 'Settings' ) }>\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Display as dropdown' ) }\n\t\t\t\t\t\tchecked={ displayAsDropdown }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tdisplayAsDropdown: ! displayAsDropdown,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t{ displayAsDropdown && (\n\t\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\t\tlabel={ __( 'Show label' ) }\n\t\t\t\t\t\t\tchecked={ showLabel }\n\t\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\t\tshowLabel: ! showLabel,\n\t\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t) }\n\t\t\t\t\t<ToggleControl\n\t\t\t\t\t\tlabel={ __( 'Show post counts' ) }\n\t\t\t\t\t\tchecked={ showPostCounts }\n\t\t\t\t\t\tonChange={ () =>\n\t\t\t\t\t\t\tsetAttributes( {\n\t\t\t\t\t\t\t\tshowPostCounts: ! showPostCounts,\n\t\t\t\t\t\t\t} )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t\t<SelectControl\n\t\t\t\t\t\tlabel={ __( 'Group by:' ) }\n\t\t\t\t\t\toptions={ [\n\t\t\t\t\t\t\t{ label: __( 'Year' ), value: 'yearly' },\n\t\t\t\t\t\t\t{ label: __( 'Month' ), value: 'monthly' },\n\t\t\t\t\t\t\t{ label: __( 'Week' ), value: 'weekly' },\n\t\t\t\t\t\t\t{ label: __( 'Day' ), value: 'daily' },\n\t\t\t\t\t\t] }\n\t\t\t\t\t\tvalue={ type }\n\t\t\t\t\t\tonChange={ ( value ) =>\n\t\t\t\t\t\t\tsetAttributes( { type: 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<div { ...useBlockProps() }>\n\t\t\t\t<Disabled>\n\t\t\t\t\t<ServerSideRender\n\t\t\t\t\t\tblock=\"core/archives\"\n\t\t\t\t\t\tattributes={ attributes }\n\t\t\t\t\t/>\n\t\t\t\t</Disabled>\n\t\t\t</div>\n\t\t</>\n\t);\n}\n"]}
|
package/build/archives/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/archives/index.js"],"names":["name","metadata","settings","icon","example","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/archives/index.js"],"names":["name","metadata","settings","icon","example","edit"],"mappings":";;;;;;;;;AAGA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,MAAM;AAAEA,EAAAA;AAAF,IAAWC,QAAjB;;AAIO,MAAMC,QAAQ,GAAG;AACvBC,EAAAA,IAAI,EAAJA,cADuB;AAEvBC,EAAAA,OAAO,EAAE,EAFc;AAGvBC,EAAAA,IAAI,EAAJA;AAHuB,CAAjB","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { archive as icon } from '@wordpress/icons';\n\n/**\n * Internal dependencies\n */\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\tedit,\n};\n"]}
|
package/build/block/edit.js
CHANGED
|
@@ -31,7 +31,7 @@ function ReusableBlockEdit(_ref) {
|
|
|
31
31
|
},
|
|
32
32
|
clientId
|
|
33
33
|
} = _ref;
|
|
34
|
-
const
|
|
34
|
+
const hasAlreadyRendered = (0, _blockEditor.__experimentalUseHasRecursion)(ref);
|
|
35
35
|
const {
|
|
36
36
|
record,
|
|
37
37
|
hasResolved
|
|
@@ -70,7 +70,9 @@ function ReusableBlockEdit(_ref) {
|
|
|
70
70
|
return (0, _element.createElement)("div", blockProps, (0, _element.createElement)(_components.Placeholder, null, (0, _element.createElement)(_components.Spinner, null)));
|
|
71
71
|
}
|
|
72
72
|
|
|
73
|
-
return (0, _element.createElement)(
|
|
73
|
+
return (0, _element.createElement)(_blockEditor.__experimentalRecursionProvider, {
|
|
74
|
+
uniqueId: ref
|
|
75
|
+
}, canRemove && (0, _element.createElement)(_blockEditor.BlockControls, null, (0, _element.createElement)(_components.ToolbarGroup, null, (0, _element.createElement)(_components.ToolbarButton, {
|
|
74
76
|
onClick: () => convertBlockToStatic(clientId),
|
|
75
77
|
label: (0, _i18n.__)('Convert to regular blocks'),
|
|
76
78
|
icon: _icons.ungroup,
|
package/build/block/edit.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/block/edit.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","hasAlreadyRendered","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/block/edit.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","hasAlreadyRendered","record","hasResolved","isMissing","canRemove","select","blockEditorStore","canRemoveBlock","__experimentalConvertBlockToStatic","convertBlockToStatic","reusableBlocksStore","blocks","onInput","onChange","id","title","setTitle","hasBlockOverlay","blockProps","className","__unstableIsDisabled","innerBlocksProps","value","renderAppender","length","undefined","InnerBlocks","ButtonBlockAppender","ungroup"],"mappings":";;;;;;;;;AAGA;;AACA;;AAKA;;AAQA;;AACA;;AAYA;;AACA;;AA/BA;AACA;AACA;AA+Be,SAASA,iBAAT,OAAgE;AAAA,MAApC;AAAEC,IAAAA,UAAU,EAAE;AAAEC,MAAAA;AAAF,KAAd;AAAuBC,IAAAA;AAAvB,GAAoC;AAC9E,QAAMC,kBAAkB,GAAG,gDAAiBF,GAAjB,CAA3B;AACA,QAAM;AAAEG,IAAAA,MAAF;AAAUC,IAAAA;AAAV,MAA0B,+BAC/B,UAD+B,EAE/B,UAF+B,EAG/BJ,GAH+B,CAAhC;AAKA,QAAMK,SAAS,GAAGD,WAAW,IAAI,CAAED,MAAnC;AAEA,QAAMG,SAAS,GAAG,qBACfC,MAAF,IAAcA,MAAM,CAAEC,kBAAF,CAAN,CAA2BC,cAA3B,CAA2CR,QAA3C,CADG,EAEjB,CAAEA,QAAF,CAFiB,CAAlB;AAKA,QAAM;AAAES,IAAAA,kCAAkC,EAAEC;AAAtC,MACL,uBAAaC,qBAAb,CADD;AAGA,QAAM,CAAEC,MAAF,EAAUC,OAAV,EAAmBC,QAAnB,IAAgC,oCACrC,UADqC,EAErC,UAFqC,EAGrC;AAAEC,IAAAA,EAAE,EAAEhB;AAAN,GAHqC,CAAtC;AAKA,QAAM,CAAEiB,KAAF,EAASC,QAAT,IAAsB,6BAC3B,UAD2B,EAE3B,UAF2B,EAG3B,OAH2B,EAI3BlB,GAJ2B,CAA5B;AAOA,QAAMmB,eAAe,GAAG,sDAAuBlB,QAAvB,CAAxB;AACA,QAAMmB,UAAU,GAAG,gCAClB;AACCC,IAAAA,SAAS,EAAEF,eAAe,GACvB,kFADuB,GAEvB;AAHJ,GADkB,EAMlB;AAAEG,IAAAA,oBAAoB,EAAEH;AAAxB,GANkB,CAAnB;AASA,QAAMI,gBAAgB,GAAG,sCAAqBH,UAArB,EAAiC;AACzDI,IAAAA,KAAK,EAAEX,MADkD;AAEzDC,IAAAA,OAFyD;AAGzDC,IAAAA,QAHyD;AAIzDU,IAAAA,cAAc,EAAEZ,MAAM,SAAN,IAAAA,MAAM,WAAN,IAAAA,MAAM,CAAEa,MAAR,GACbC,SADa,GAEbC,yBAAYC;AAN0C,GAAjC,CAAzB;;AASA,MAAK3B,kBAAL,EAA0B;AACzB,WACC,mCAAUkB,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,yCAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAKf,SAAL,EAAiB;AAChB,WACC,mCAAUe,UAAV,EACC,4BAAC,oBAAD,QACG,cAAI,2CAAJ,CADH,CADD,CADD;AAOA;;AAED,MAAK,CAAEhB,WAAP,EAAqB;AACpB,WACC,mCAAUgB,UAAV,EACC,4BAAC,uBAAD,QACC,4BAAC,mBAAD,OADD,CADD,CADD;AAOA;;AAED,SACC,4BAAC,4CAAD;AAAmB,IAAA,QAAQ,EAAGpB;AAA9B,KACGM,SAAS,IACV,4BAAC,0BAAD,QACC,4BAAC,wBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,OAAO,EAAG,MAAMK,oBAAoB,CAAEV,QAAF,CADrC;AAEC,IAAA,KAAK,EAAG,cAAI,2BAAJ,CAFT;AAGC,IAAA,IAAI,EAAG6B,cAHR;AAIC,IAAA,WAAW;AAJZ,IADD,CADD,CAFF,EAaC,4BAAC,8BAAD,QACC,4BAAC,qBAAD,QACC,4BAAC,uBAAD;AACC,IAAA,KAAK,EAAG,cAAI,MAAJ,CADT;AAEC,IAAA,KAAK,EAAGb,KAFT;AAGC,IAAA,QAAQ,EAAGC;AAHZ,IADD,CADD,CAbD,EAsBC,mCAAUK,gBAAV,CAtBD,CADD;AA0BA","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tuseEntityRecord,\n} from '@wordpress/core-data';\nimport {\n\tPlaceholder,\n\tSpinner,\n\tToolbarGroup,\n\tToolbarButton,\n\tTextControl,\n\tPanelBody,\n} from '@wordpress/components';\nimport { __ } from '@wordpress/i18n';\nimport {\n\tuseInnerBlocksProps,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\t__experimentalUseBlockOverlayActive as useBlockOverlayActive,\n\tInnerBlocks,\n\tBlockControls,\n\tInspectorControls,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { ungroup } from '@wordpress/icons';\n\nexport default function ReusableBlockEdit( { attributes: { ref }, clientId } ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\tconst { record, hasResolved } = useEntityRecord(\n\t\t'postType',\n\t\t'wp_block',\n\t\tref\n\t);\n\tconst isMissing = hasResolved && ! record;\n\n\tconst canRemove = useSelect(\n\t\t( select ) => select( blockEditorStore ).canRemoveBlock( clientId ),\n\t\t[ clientId ]\n\t);\n\n\tconst { __experimentalConvertBlockToStatic: convertBlockToStatic } =\n\t\tuseDispatch( reusableBlocksStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\tconst [ title, setTitle ] = useEntityProp(\n\t\t'postType',\n\t\t'wp_block',\n\t\t'title',\n\t\tref\n\t);\n\n\tconst hasBlockOverlay = useBlockOverlayActive( clientId );\n\tconst blockProps = useBlockProps(\n\t\t{\n\t\t\tclassName: hasBlockOverlay\n\t\t\t\t? 'block-library-block__reusable-block-container block-editor-block-content-overlay'\n\t\t\t\t: 'block-library-block__reusable-block-container',\n\t\t},\n\t\t{ __unstableIsDisabled: hasBlockOverlay }\n\t);\n\n\tconst innerBlocksProps = useInnerBlocksProps( blockProps, {\n\t\tvalue: blocks,\n\t\tonInput,\n\t\tonChange,\n\t\trenderAppender: blocks?.length\n\t\t\t? undefined\n\t\t\t: InnerBlocks.ButtonBlockAppender,\n\t} );\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t\t</Warning>\n\t\t\t</div>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder>\n\t\t\t\t\t<Spinner />\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t{ canRemove && (\n\t\t\t\t<BlockControls>\n\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\tonClick={ () => convertBlockToStatic( clientId ) }\n\t\t\t\t\t\t\tlabel={ __( 'Convert to regular blocks' ) }\n\t\t\t\t\t\t\ticon={ ungroup }\n\t\t\t\t\t\t\tshowTooltip\n\t\t\t\t\t\t/>\n\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t</BlockControls>\n\t\t\t) }\n\t\t\t<InspectorControls>\n\t\t\t\t<PanelBody>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Name' ) }\n\t\t\t\t\t\tvalue={ title }\n\t\t\t\t\t\tonChange={ setTitle }\n\t\t\t\t\t/>\n\t\t\t\t</PanelBody>\n\t\t\t</InspectorControls>\n\t\t\t<div { ...innerBlocksProps } />\n\t\t</RecursionProvider>\n\t);\n}\n"]}
|
|
@@ -52,7 +52,7 @@ function ReusableBlockEdit(_ref) {
|
|
|
52
52
|
clientId,
|
|
53
53
|
isSelected
|
|
54
54
|
} = _ref;
|
|
55
|
-
const
|
|
55
|
+
const hasAlreadyRendered = (0, _blockEditor.__experimentalUseHasRecursion)(ref);
|
|
56
56
|
const [showHelp, setShowHelp] = (0, _element.useState)(false);
|
|
57
57
|
const infoTextStyle = (0, _compose.usePreferredColorSchemeStyle)(_editor.default.infoText, _editor.default.infoTextDark);
|
|
58
58
|
const infoTitleStyle = (0, _compose.usePreferredColorSchemeStyle)(_editor.default.infoTitle, _editor.default.infoTitleDark);
|
|
@@ -159,7 +159,9 @@ function ReusableBlockEdit(_ref) {
|
|
|
159
159
|
element = (0, _element.createElement)(_components.Disabled, null, element);
|
|
160
160
|
}
|
|
161
161
|
|
|
162
|
-
return (0, _element.createElement)(
|
|
162
|
+
return (0, _element.createElement)(_blockEditor.__experimentalRecursionProvider, {
|
|
163
|
+
uniqueId: ref
|
|
164
|
+
}, (0, _element.createElement)(_reactNative.TouchableWithoutFeedback, {
|
|
163
165
|
disabled: !isSelected,
|
|
164
166
|
accessibilityLabel: (0, _i18n.__)('Help button'),
|
|
165
167
|
accessibilityRole: 'button',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/block/edit.native.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","isSelected","hasAlreadyRendered","RecursionProvider","showHelp","setShowHelp","infoTextStyle","styles","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","actionButtonStyle","actionButton","actionButtonDark","spinnerStyle","spinner","spinnerDark","hasResolved","isEditing","isMissing","select","persistedBlock","coreStore","getEntityRecord","hasResolvedBlock","hasFinishedResolution","reusableBlocksStore","__experimentalIsEditingReusableBlock","createSuccessNotice","noticesStore","__experimentalConvertBlockToStatic","convertBlockToStatic","clearSelectedBlock","blockEditorStore","blocks","onInput","onChange","id","title","openSheet","closeSheet","onConvertToRegularBlocks","setImmediate","renderSheet","Platform","OS","infoContainer","help","color","size","element"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tPlatform,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport {\n\tBottomSheet,\n\tIcon,\n\tDisabled,\n\tTextControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalUseNoRecursiveRenders as useNoRecursiveRenders,\n\tInnerBlocks,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { help } from '@wordpress/icons';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport EditTitle from './edit-title';\n\nexport default function ReusableBlockEdit( {\n\tattributes: { ref },\n\tclientId,\n\tisSelected,\n} ) {\n\tconst [ hasAlreadyRendered, RecursionProvider ] =\n\t\tuseNoRecursiveRenders( ref );\n\n\tconst [ showHelp, setShowHelp ] = useState( false );\n\tconst infoTextStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoText,\n\t\tstyles.infoTextDark\n\t);\n\tconst infoTitleStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoTitle,\n\t\tstyles.infoTitleDark\n\t);\n\tconst infoSheetIconStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoSheetIcon,\n\t\tstyles.infoSheetIconDark\n\t);\n\tconst infoDescriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoDescription,\n\t\tstyles.infoDescriptionDark\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.actionButton,\n\t\tstyles.actionButtonDark\n\t);\n\tconst spinnerStyle = usePreferredColorSchemeStyle(\n\t\tstyles.spinner,\n\t\tstyles.spinnerDark\n\t);\n\n\tconst { hasResolved, isEditing, isMissing } = useSelect(\n\t\t( select ) => {\n\t\t\tconst persistedBlock = select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_block',\n\t\t\t\tref\n\t\t\t);\n\t\t\tconst hasResolvedBlock = select( coreStore ).hasFinishedResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\t[ 'postType', 'wp_block', ref ]\n\t\t\t);\n\t\t\treturn {\n\t\t\t\thasResolved: hasResolvedBlock,\n\t\t\t\tisEditing:\n\t\t\t\t\tselect(\n\t\t\t\t\t\treusableBlocksStore\n\t\t\t\t\t).__experimentalIsEditingReusableBlock( clientId ),\n\t\t\t\tisMissing: hasResolvedBlock && ! persistedBlock,\n\t\t\t};\n\t\t},\n\t\t[ ref, clientId ]\n\t);\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst { __experimentalConvertBlockToStatic: convertBlockToStatic } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title ] = useEntityProp( 'postType', 'wp_block', 'title', ref );\n\n\tfunction openSheet() {\n\t\tsetShowHelp( true );\n\t}\n\n\tfunction closeSheet() {\n\t\tsetShowHelp( false );\n\t}\n\n\tconst onConvertToRegularBlocks = useCallback( () => {\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: name of the reusable block */\n\t\t\t\t__( '%s converted to regular blocks' ),\n\t\t\t\ttitle\n\t\t\t)\n\t\t);\n\n\t\tclearSelectedBlock();\n\t\t// Convert action is executed at the end of the current JavaScript execution block\n\t\t// to prevent issues related to undo/redo actions.\n\t\tsetImmediate( () => convertBlockToStatic( clientId ) );\n\t}, [ title, clientId ] );\n\n\tfunction renderSheet() {\n\t\tconst infoTitle =\n\t\t\tPlatform.OS === 'android'\n\t\t\t\t? __(\n\t\t\t\t\t\t'Editing reusable blocks is not yet supported on WordPress for Android'\n\t\t\t\t )\n\t\t\t\t: __(\n\t\t\t\t\t\t'Editing reusable blocks is not yet supported on WordPress for iOS'\n\t\t\t\t );\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ closeSheet }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Alternatively, you can detach and edit these blocks separately by tapping \"Convert to regular blocks\".'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Convert to regular blocks' ) }\n\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\tonPress={ onConvertToRegularBlocks }\n\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<View style={ spinnerStyle }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tlet element = (\n\t\t<InnerBlocks\n\t\t\tvalue={ blocks }\n\t\t\tonChange={ onChange }\n\t\t\tonInput={ onInput }\n\t\t/>\n\t);\n\n\tif ( ! isEditing ) {\n\t\telement = <Disabled>{ element }</Disabled>;\n\t}\n\n\treturn (\n\t\t<RecursionProvider>\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ openSheet }\n\t\t\t>\n\t\t\t\t<View>\n\t\t\t\t\t{ isSelected && <EditTitle title={ title } /> }\n\t\t\t\t\t{ element }\n\t\t\t\t\t{ renderSheet() }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</RecursionProvider>\n\t);\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/block/edit.native.js"],"names":["ReusableBlockEdit","attributes","ref","clientId","isSelected","hasAlreadyRendered","showHelp","setShowHelp","infoTextStyle","styles","infoText","infoTextDark","infoTitleStyle","infoTitle","infoTitleDark","infoSheetIconStyle","infoSheetIcon","infoSheetIconDark","infoDescriptionStyle","infoDescription","infoDescriptionDark","actionButtonStyle","actionButton","actionButtonDark","spinnerStyle","spinner","spinnerDark","hasResolved","isEditing","isMissing","select","persistedBlock","coreStore","getEntityRecord","hasResolvedBlock","hasFinishedResolution","reusableBlocksStore","__experimentalIsEditingReusableBlock","createSuccessNotice","noticesStore","__experimentalConvertBlockToStatic","convertBlockToStatic","clearSelectedBlock","blockEditorStore","blocks","onInput","onChange","id","title","openSheet","closeSheet","onConvertToRegularBlocks","setImmediate","renderSheet","Platform","OS","infoContainer","help","color","size","element"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport {\n\tActivityIndicator,\n\tPlatform,\n\tText,\n\tTouchableWithoutFeedback,\n\tView,\n} from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport { useState, useCallback } from '@wordpress/element';\nimport {\n\tuseEntityBlockEditor,\n\tuseEntityProp,\n\tstore as coreStore,\n} from '@wordpress/core-data';\nimport {\n\tBottomSheet,\n\tIcon,\n\tDisabled,\n\tTextControl,\n} from '@wordpress/components';\nimport { useSelect, useDispatch } from '@wordpress/data';\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n\tInnerBlocks,\n\tWarning,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { help } from '@wordpress/icons';\nimport { store as reusableBlocksStore } from '@wordpress/reusable-blocks';\nimport { store as noticesStore } from '@wordpress/notices';\n\n/**\n * Internal dependencies\n */\nimport styles from './editor.scss';\nimport EditTitle from './edit-title';\n\nexport default function ReusableBlockEdit( {\n\tattributes: { ref },\n\tclientId,\n\tisSelected,\n} ) {\n\tconst hasAlreadyRendered = useHasRecursion( ref );\n\n\tconst [ showHelp, setShowHelp ] = useState( false );\n\tconst infoTextStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoText,\n\t\tstyles.infoTextDark\n\t);\n\tconst infoTitleStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoTitle,\n\t\tstyles.infoTitleDark\n\t);\n\tconst infoSheetIconStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoSheetIcon,\n\t\tstyles.infoSheetIconDark\n\t);\n\tconst infoDescriptionStyle = usePreferredColorSchemeStyle(\n\t\tstyles.infoDescription,\n\t\tstyles.infoDescriptionDark\n\t);\n\tconst actionButtonStyle = usePreferredColorSchemeStyle(\n\t\tstyles.actionButton,\n\t\tstyles.actionButtonDark\n\t);\n\tconst spinnerStyle = usePreferredColorSchemeStyle(\n\t\tstyles.spinner,\n\t\tstyles.spinnerDark\n\t);\n\n\tconst { hasResolved, isEditing, isMissing } = useSelect(\n\t\t( select ) => {\n\t\t\tconst persistedBlock = select( coreStore ).getEntityRecord(\n\t\t\t\t'postType',\n\t\t\t\t'wp_block',\n\t\t\t\tref\n\t\t\t);\n\t\t\tconst hasResolvedBlock = select( coreStore ).hasFinishedResolution(\n\t\t\t\t'getEntityRecord',\n\t\t\t\t[ 'postType', 'wp_block', ref ]\n\t\t\t);\n\t\t\treturn {\n\t\t\t\thasResolved: hasResolvedBlock,\n\t\t\t\tisEditing:\n\t\t\t\t\tselect(\n\t\t\t\t\t\treusableBlocksStore\n\t\t\t\t\t).__experimentalIsEditingReusableBlock( clientId ),\n\t\t\t\tisMissing: hasResolvedBlock && ! persistedBlock,\n\t\t\t};\n\t\t},\n\t\t[ ref, clientId ]\n\t);\n\n\tconst { createSuccessNotice } = useDispatch( noticesStore );\n\tconst { __experimentalConvertBlockToStatic: convertBlockToStatic } =\n\t\tuseDispatch( reusableBlocksStore );\n\tconst { clearSelectedBlock } = useDispatch( blockEditorStore );\n\n\tconst [ blocks, onInput, onChange ] = useEntityBlockEditor(\n\t\t'postType',\n\t\t'wp_block',\n\t\t{ id: ref }\n\t);\n\n\tconst [ title ] = useEntityProp( 'postType', 'wp_block', 'title', ref );\n\n\tfunction openSheet() {\n\t\tsetShowHelp( true );\n\t}\n\n\tfunction closeSheet() {\n\t\tsetShowHelp( false );\n\t}\n\n\tconst onConvertToRegularBlocks = useCallback( () => {\n\t\tcreateSuccessNotice(\n\t\t\tsprintf(\n\t\t\t\t/* translators: %s: name of the reusable block */\n\t\t\t\t__( '%s converted to regular blocks' ),\n\t\t\t\ttitle\n\t\t\t)\n\t\t);\n\n\t\tclearSelectedBlock();\n\t\t// Convert action is executed at the end of the current JavaScript execution block\n\t\t// to prevent issues related to undo/redo actions.\n\t\tsetImmediate( () => convertBlockToStatic( clientId ) );\n\t}, [ title, clientId ] );\n\n\tfunction renderSheet() {\n\t\tconst infoTitle =\n\t\t\tPlatform.OS === 'android'\n\t\t\t\t? __(\n\t\t\t\t\t\t'Editing reusable blocks is not yet supported on WordPress for Android'\n\t\t\t\t )\n\t\t\t\t: __(\n\t\t\t\t\t\t'Editing reusable blocks is not yet supported on WordPress for iOS'\n\t\t\t\t );\n\n\t\treturn (\n\t\t\t<BottomSheet\n\t\t\t\tisVisible={ showHelp }\n\t\t\t\thideHeader\n\t\t\t\tonClose={ closeSheet }\n\t\t\t>\n\t\t\t\t<View style={ styles.infoContainer }>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\ticon={ help }\n\t\t\t\t\t\tcolor={ infoSheetIconStyle.color }\n\t\t\t\t\t\tsize={ styles.infoSheetIcon.size }\n\t\t\t\t\t/>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoTitleStyle ] }>\n\t\t\t\t\t\t{ infoTitle }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<Text style={ [ infoTextStyle, infoDescriptionStyle ] }>\n\t\t\t\t\t\t{ __(\n\t\t\t\t\t\t\t'Alternatively, you can detach and edit these blocks separately by tapping \"Convert to regular blocks\".'\n\t\t\t\t\t\t) }\n\t\t\t\t\t</Text>\n\t\t\t\t\t<TextControl\n\t\t\t\t\t\tlabel={ __( 'Convert to regular blocks' ) }\n\t\t\t\t\t\tseparatorType=\"topFullWidth\"\n\t\t\t\t\t\tonPress={ onConvertToRegularBlocks }\n\t\t\t\t\t\tlabelStyle={ actionButtonStyle }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t</BottomSheet>\n\t\t);\n\t}\n\n\tif ( hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block cannot be rendered inside itself.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( isMissing ) {\n\t\treturn (\n\t\t\t<Warning\n\t\t\t\tmessage={ __( 'Block has been deleted or is unavailable.' ) }\n\t\t\t/>\n\t\t);\n\t}\n\n\tif ( ! hasResolved ) {\n\t\treturn (\n\t\t\t<View style={ spinnerStyle }>\n\t\t\t\t<ActivityIndicator animating />\n\t\t\t</View>\n\t\t);\n\t}\n\n\tlet element = (\n\t\t<InnerBlocks\n\t\t\tvalue={ blocks }\n\t\t\tonChange={ onChange }\n\t\t\tonInput={ onInput }\n\t\t/>\n\t);\n\n\tif ( ! isEditing ) {\n\t\telement = <Disabled>{ element }</Disabled>;\n\t}\n\n\treturn (\n\t\t<RecursionProvider uniqueId={ ref }>\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tdisabled={ ! isSelected }\n\t\t\t\taccessibilityLabel={ __( 'Help button' ) }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityHint={ __( 'Tap here to show help' ) }\n\t\t\t\tonPress={ openSheet }\n\t\t\t>\n\t\t\t\t<View>\n\t\t\t\t\t{ isSelected && <EditTitle title={ title } /> }\n\t\t\t\t\t{ element }\n\t\t\t\t\t{ renderSheet() }\n\t\t\t\t</View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</RecursionProvider>\n\t);\n}\n"]}
|
package/build/calendar/edit.js
CHANGED
|
@@ -9,8 +9,6 @@ exports.default = CalendarEdit;
|
|
|
9
9
|
|
|
10
10
|
var _element = require("@wordpress/element");
|
|
11
11
|
|
|
12
|
-
var _moment = _interopRequireDefault(require("moment"));
|
|
13
|
-
|
|
14
12
|
var _memize = _interopRequireDefault(require("memize"));
|
|
15
13
|
|
|
16
14
|
var _icons = require("@wordpress/icons");
|
|
@@ -34,15 +32,24 @@ var _i18n = require("@wordpress/i18n");
|
|
|
34
32
|
/**
|
|
35
33
|
* WordPress dependencies
|
|
36
34
|
*/
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Returns the year and month of a specified date.
|
|
38
|
+
*
|
|
39
|
+
* @see `WP_REST_Posts_Controller::prepare_date_response()`.
|
|
40
|
+
*
|
|
41
|
+
* @param {string} date Date in `ISO8601/RFC3339` format.
|
|
42
|
+
* @return {Object} Year and date of the specified date.
|
|
43
|
+
*/
|
|
37
44
|
const getYearMonth = (0, _memize.default)(date => {
|
|
38
45
|
if (!date) {
|
|
39
46
|
return {};
|
|
40
47
|
}
|
|
41
48
|
|
|
42
|
-
const
|
|
49
|
+
const dateObj = new Date(date);
|
|
43
50
|
return {
|
|
44
|
-
year:
|
|
45
|
-
month:
|
|
51
|
+
year: dateObj.getFullYear(),
|
|
52
|
+
month: dateObj.getMonth() + 1
|
|
46
53
|
};
|
|
47
54
|
});
|
|
48
55
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/calendar/edit.js"],"names":["getYearMonth","date","
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/calendar/edit.js"],"names":["getYearMonth","date","dateObj","Date","year","getFullYear","month","getMonth","CalendarEdit","attributes","blockProps","hasPosts","hasPostsResolved","select","getEntityRecords","hasFinishedResolution","coreStore","singlePublishedPostQuery","status","per_page","posts","postsResolved","_date","editorSelectors","postType","getEditedPostAttribute","length","icon"],"mappings":";;;;;;;;;;;AAGA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAdA;AACA;AACA;;AAGA;AACA;AACA;;AASA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,MAAMA,YAAY,GAAG,qBAAWC,IAAF,IAAY;AACzC,MAAK,CAAEA,IAAP,EAAc;AACb,WAAO,EAAP;AACA;;AACD,QAAMC,OAAO,GAAG,IAAIC,IAAJ,CAAUF,IAAV,CAAhB;AACA,SAAO;AACNG,IAAAA,IAAI,EAAEF,OAAO,CAACG,WAAR,EADA;AAENC,IAAAA,KAAK,EAAEJ,OAAO,CAACK,QAAR,KAAqB;AAFtB,GAAP;AAIA,CAToB,CAArB;;AAWe,SAASC,YAAT,OAAwC;AAAA,MAAjB;AAAEC,IAAAA;AAAF,GAAiB;AACtD,QAAMC,UAAU,GAAG,iCAAnB;AACA,QAAM;AAAET,IAAAA,IAAF;AAAQU,IAAAA,QAAR;AAAkBC,IAAAA;AAAlB,MAAuC,qBAAaC,MAAF,IAAc;AACrE,UAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA;AAApB,QAA8CF,MAAM,CAAEG,eAAF,CAA1D;AAEA,UAAMC,wBAAwB,GAAG;AAChCC,MAAAA,MAAM,EAAE,SADwB;AAEhCC,MAAAA,QAAQ,EAAE;AAFsB,KAAjC;AAIA,UAAMC,KAAK,GAAGN,gBAAgB,CAC7B,UAD6B,EAE7B,MAF6B,EAG7BG,wBAH6B,CAA9B;AAKA,UAAMI,aAAa,GAAGN,qBAAqB,CAAE,kBAAF,EAAsB,CAChE,UADgE,EAEhE,MAFgE,EAGhEE,wBAHgE,CAAtB,CAA3C;;AAMA,QAAIK,KAAJ,CAlBqE,CAoBrE;AACA;AACA;;;AACA,UAAMC,eAAe,GAAGV,MAAM,CAAE,aAAF,CAA9B;;AACA,QAAKU,eAAL,EAAuB;AACtB,YAAMC,QAAQ,GAAGD,eAAe,CAACE,sBAAhB,CAAwC,MAAxC,CAAjB,CADsB,CAEtB;AACA;AACA;;AACA,UAAKD,QAAQ,KAAK,MAAlB,EAA2B;AAC1BF,QAAAA,KAAK,GAAGC,eAAe,CAACE,sBAAhB,CAAwC,MAAxC,CAAR;AACA;AACD;;AAED,WAAO;AACNxB,MAAAA,IAAI,EAAEqB,KADA;AAENV,MAAAA,gBAAgB,EAAES,aAFZ;AAGNV,MAAAA,QAAQ,EAAEU,aAAa,IAAI,CAAAD,KAAK,SAAL,IAAAA,KAAK,WAAL,YAAAA,KAAK,CAAEM,MAAP,MAAkB;AAHvC,KAAP;AAKA,GAvC4C,EAuC1C,EAvC0C,CAA7C;;AAyCA,MAAK,CAAEf,QAAP,EAAkB;AACjB,WACC,mCAAUD,UAAV,EACC,4BAAC,uBAAD;AAAa,MAAA,IAAI,EAAGiB,eAApB;AAA2B,MAAA,KAAK,EAAG,cAAI,UAAJ;AAAnC,OACG,CAAEf,gBAAF,GACD,4BAAC,mBAAD,OADC,GAGD,cAAI,2BAAJ,CAJF,CADD,CADD;AAWA;;AAED,SACC,mCAAUF,UAAV,EACC,4BAAC,oBAAD,QACC,4BAAC,yBAAD;AACC,IAAA,KAAK,EAAC,eADP;AAEC,IAAA,UAAU,EAAG,EAAE,GAAGD,UAAL;AAAiB,SAAGT,YAAY,CAAEC,IAAF;AAAhC;AAFd,IADD,CADD,CADD;AAUA","sourcesContent":["/**\n * External dependencies\n */\nimport memoize from 'memize';\n\n/**\n * WordPress dependencies\n */\nimport { calendar as icon } from '@wordpress/icons';\nimport { Disabled, Placeholder, Spinner } from '@wordpress/components';\nimport { useSelect } from '@wordpress/data';\nimport ServerSideRender from '@wordpress/server-side-render';\nimport { useBlockProps } from '@wordpress/block-editor';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Returns the year and month of a specified date.\n *\n * @see `WP_REST_Posts_Controller::prepare_date_response()`.\n *\n * @param {string} date Date in `ISO8601/RFC3339` format.\n * @return {Object} Year and date of the specified date.\n */\nconst getYearMonth = memoize( ( date ) => {\n\tif ( ! date ) {\n\t\treturn {};\n\t}\n\tconst dateObj = new Date( date );\n\treturn {\n\t\tyear: dateObj.getFullYear(),\n\t\tmonth: dateObj.getMonth() + 1,\n\t};\n} );\n\nexport default function CalendarEdit( { attributes } ) {\n\tconst blockProps = useBlockProps();\n\tconst { date, hasPosts, hasPostsResolved } = useSelect( ( select ) => {\n\t\tconst { getEntityRecords, hasFinishedResolution } = select( coreStore );\n\n\t\tconst singlePublishedPostQuery = {\n\t\t\tstatus: 'publish',\n\t\t\tper_page: 1,\n\t\t};\n\t\tconst posts = getEntityRecords(\n\t\t\t'postType',\n\t\t\t'post',\n\t\t\tsinglePublishedPostQuery\n\t\t);\n\t\tconst postsResolved = hasFinishedResolution( 'getEntityRecords', [\n\t\t\t'postType',\n\t\t\t'post',\n\t\t\tsinglePublishedPostQuery,\n\t\t] );\n\n\t\tlet _date;\n\n\t\t// FIXME: @wordpress/block-library should not depend on @wordpress/editor.\n\t\t// Blocks can be loaded into a *non-post* block editor.\n\t\t// eslint-disable-next-line @wordpress/data-no-store-string-literals\n\t\tconst editorSelectors = select( 'core/editor' );\n\t\tif ( editorSelectors ) {\n\t\t\tconst postType = editorSelectors.getEditedPostAttribute( 'type' );\n\t\t\t// Dates are used to overwrite year and month used on the calendar.\n\t\t\t// This overwrite should only happen for 'post' post types.\n\t\t\t// For other post types the calendar always displays the current month.\n\t\t\tif ( postType === 'post' ) {\n\t\t\t\t_date = editorSelectors.getEditedPostAttribute( 'date' );\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\tdate: _date,\n\t\t\thasPostsResolved: postsResolved,\n\t\t\thasPosts: postsResolved && posts?.length === 1,\n\t\t};\n\t}, [] );\n\n\tif ( ! hasPosts ) {\n\t\treturn (\n\t\t\t<div { ...blockProps }>\n\t\t\t\t<Placeholder icon={ icon } label={ __( 'Calendar' ) }>\n\t\t\t\t\t{ ! hasPostsResolved ? (\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t) : (\n\t\t\t\t\t\t__( 'No published posts found.' )\n\t\t\t\t\t) }\n\t\t\t\t</Placeholder>\n\t\t\t</div>\n\t\t);\n\t}\n\n\treturn (\n\t\t<div { ...blockProps }>\n\t\t\t<Disabled>\n\t\t\t\t<ServerSideRender\n\t\t\t\t\tblock=\"core/calendar\"\n\t\t\t\t\tattributes={ { ...attributes, ...getYearMonth( date ) } }\n\t\t\t\t/>\n\t\t\t</Disabled>\n\t\t</div>\n\t);\n}\n"]}
|
|
@@ -421,7 +421,8 @@ const ColumnsEdit = props => {
|
|
|
421
421
|
const [isVisible, setIsVisible] = (0, _element.useState)(false);
|
|
422
422
|
(0, _element.useEffect)(() => {
|
|
423
423
|
if (isSelected && isDefaultColumns) {
|
|
424
|
-
|
|
424
|
+
const revealTimeout = setTimeout(() => setIsVisible(true), 100);
|
|
425
|
+
return () => clearTimeout(revealTimeout);
|
|
425
426
|
}
|
|
426
427
|
}, []);
|
|
427
428
|
const onClose = (0, _element.useCallback)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","alignmentHelpers","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","Dimensions","get","width","globalStyles","GlobalStylesContext","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","styles","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","columns","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","blockEditorStore","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","updateBlockSettings","settings","updateBlockListSettings","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","isContentEmpty","innerBlock","innerColumnsWidths","inn","parents","filter","Boolean","memoizedInnerWidths","JSON","stringify","isVisible","setIsVisible","onClose","variations"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\nimport { times, map, delay } from 'lodash';\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel=\"Width\"\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\tupdateBlockSettings( settings ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { updateBlockListSettings } = dispatch( blockEditorStore );\n\t\t\tupdateBlockListSettings( clientId, settings );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerWidths = [],\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = map(\n\t\t\t\tinnerBlocks,\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length\n\t\t\t);\n\n\t\t\tconst innerColumnsWidths = innerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) );\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: ! isContentEmpty.filter( Boolean ).length,\n\t\t\t\tinnerWidths: innerColumnsWidths,\n\t\t\t\thasParents: !! parents.length,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst memoizedInnerWidths = useMemo( () => {\n\t\treturn innerWidths;\n\t}, [\n\t\t// The JSON.stringify is used because innerWidth is always a new reference.\n\t\t// The innerBlocks is a new reference after each attribute change of any nested block.\n\t\tJSON.stringify( innerWidths ),\n\t] );\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tdelay( () => setIsVisible( true ), 100 );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ memoizedInnerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/columns/edit.native.js"],"names":["ALLOWED_BLOCKS","DEFAULT_COLUMNS_NUM","MIN_COLUMNS_NUM","isFullWidth","alignmentHelpers","ColumnsEditContainer","attributes","updateAlignment","updateColumns","columnCount","isSelected","onDeleteBlock","innerWidths","updateInnerColumnWidth","editorSidebarOpened","resizeListener","sizes","columnsInRow","setColumnsInRow","screenWidth","Math","floor","Dimensions","get","width","globalStyles","GlobalStylesContext","verticalAlignment","align","units","availableUnits","newColumnCount","renderAppender","styles","columnAppender","onAddBlock","contentWidths","onChangeWidth","nextWidth","valueUnit","columnId","widthWithUnit","onChangeUnit","nextUnit","index","widthWithoutUnit","parseFloat","onChange","getColumnsSliders","map","column","label","clientId","length","undefined","onChangeColumnsNum","value","columns","innerBlocksSelected","ColumnsEditContainerWrapper","dispatch","ownProps","registry","setAttributes","updateBlockAttributes","blockEditorStore","getBlockOrder","select","innerBlockClientIds","forEach","innerBlockClientId","updateBlockSettings","settings","updateBlockListSettings","previousColumns","newColumns","replaceInnerBlocks","getBlocks","getBlockAttributes","innerBlocks","hasExplicitWidths","isAddingColumn","newColumnWidth","widths","slice","onAddNextColumn","selectBlock","insertedBlock","removeBlock","ColumnsEdit","props","style","isDefaultColumns","hasParents","parentBlockAlignment","getBlockCount","getBlockParents","isEditorSidebarOpened","isContentEmpty","innerBlock","innerColumnsWidths","inn","parents","filter","Boolean","memoizedInnerWidths","JSON","stringify","isVisible","setIsVisible","revealTimeout","setTimeout","clearTimeout","onClose","variations"],"mappings":"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","sourcesContent":["/**\n * External dependencies\n */\nimport { View, Dimensions } from 'react-native';\nimport { times, map } from 'lodash';\n/**\n * WordPress dependencies\n */\nimport { __, sprintf } from '@wordpress/i18n';\nimport {\n\tPanelBody,\n\tRangeControl,\n\tFooterMessageControl,\n\tUnitControl,\n\tgetValueAndUnit,\n\tGlobalStylesContext,\n\talignmentHelpers,\n\t__experimentalUseCustomUnits as useCustomUnits,\n} from '@wordpress/components';\nimport {\n\tInspectorControls,\n\tInnerBlocks,\n\tBlockControls,\n\tBlockVerticalAlignmentToolbar,\n\tBlockVariationPicker,\n\tuseSetting,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { withDispatch, useSelect } from '@wordpress/data';\nimport {\n\tuseEffect,\n\tuseState,\n\tuseContext,\n\tuseMemo,\n\tuseCallback,\n\tmemo,\n} from '@wordpress/element';\nimport { useResizeObserver } from '@wordpress/compose';\nimport { createBlock } from '@wordpress/blocks';\nimport { columns } from '@wordpress/icons';\n/**\n * Internal dependencies\n */\nimport variations from './variations';\nimport styles from './editor.scss';\nimport {\n\thasExplicitPercentColumnWidths,\n\tgetMappedColumnWidths,\n\tgetRedistributedColumnWidths,\n\ttoWidthPrecision,\n\tgetWidths,\n\tgetWidthWithUnit,\n\tisPercentageUnit,\n} from './utils';\nimport {\n\tgetColumnsInRow,\n\tcalculateContainerWidth,\n\tgetContentWidths,\n} from './columnCalculations.native';\nimport ColumnsPreview from '../column/column-preview';\n\n/**\n * Allowed blocks constant is passed to InnerBlocks precisely as specified here.\n * The contents of the array should never change.\n * The array should contain the name of each block that is allowed.\n * In columns block, the only block we allow is 'core/column'.\n *\n * @constant\n * @type {string[]}\n */\nconst ALLOWED_BLOCKS = [ 'core/column' ];\n\n/**\n * Number of columns to assume for template in case the user opts to skip\n * template option selection.\n *\n * @type {number}\n */\nconst DEFAULT_COLUMNS_NUM = 2;\n\n/**\n * Minimum number of columns in a row\n *\n * @type {number}\n */\nconst MIN_COLUMNS_NUM = 1;\n\nconst { isFullWidth } = alignmentHelpers;\n\nfunction ColumnsEditContainer( {\n\tattributes,\n\tupdateAlignment,\n\tupdateColumns,\n\tcolumnCount,\n\tisSelected,\n\tonDeleteBlock,\n\tinnerWidths,\n\tupdateInnerColumnWidth,\n\teditorSidebarOpened,\n} ) {\n\tconst [ resizeListener, sizes ] = useResizeObserver();\n\tconst [ columnsInRow, setColumnsInRow ] = useState( MIN_COLUMNS_NUM );\n\tconst screenWidth = Math.floor( Dimensions.get( 'window' ).width );\n\tconst globalStyles = useContext( GlobalStylesContext );\n\n\tconst { verticalAlignment, align } = attributes;\n\tconst { width } = sizes || {};\n\n\tconst units = useCustomUnits( {\n\t\tavailableUnits: useSetting( 'spacing.units' ) || [\n\t\t\t'%',\n\t\t\t'px',\n\t\t\t'em',\n\t\t\t'rem',\n\t\t\t'vw',\n\t\t],\n\t} );\n\n\tuseEffect( () => {\n\t\tif ( columnCount === 0 ) {\n\t\t\tconst newColumnCount = columnCount || DEFAULT_COLUMNS_NUM;\n\t\t\tupdateColumns( columnCount, newColumnCount );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( width ) {\n\t\t\tif ( getColumnsInRow( width, columnCount ) !== columnsInRow ) {\n\t\t\t\tsetColumnsInRow( getColumnsInRow( width, columnCount ) );\n\t\t\t}\n\t\t}\n\t}, [ width, columnCount ] );\n\n\tconst renderAppender = () => {\n\t\tif ( isSelected ) {\n\t\t\treturn (\n\t\t\t\t<View style={ isFullWidth( align ) && styles.columnAppender }>\n\t\t\t\t\t<InnerBlocks.ButtonBlockAppender\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t/>\n\t\t\t\t</View>\n\t\t\t);\n\t\t}\n\t\treturn null;\n\t};\n\n\tconst contentWidths = useMemo(\n\t\t() =>\n\t\t\tgetContentWidths(\n\t\t\t\tcolumnsInRow,\n\t\t\t\twidth,\n\t\t\t\tcolumnCount,\n\t\t\t\tinnerWidths,\n\t\t\t\tglobalStyles\n\t\t\t),\n\t\t[ width, columnsInRow, columnCount, innerWidths, globalStyles ]\n\t);\n\n\tconst onAddBlock = useCallback( () => {\n\t\tupdateColumns( columnCount, columnCount + 1 );\n\t}, [ columnCount ] );\n\n\tconst onChangeWidth = ( nextWidth, valueUnit, columnId ) => {\n\t\tconst widthWithUnit = getWidthWithUnit( nextWidth, valueUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChangeUnit = ( nextUnit, index, columnId ) => {\n\t\tconst widthWithoutUnit = parseFloat(\n\t\t\tgetWidths( innerWidths )[ index ]\n\t\t);\n\t\tconst widthWithUnit = getWidthWithUnit( widthWithoutUnit, nextUnit );\n\n\t\tupdateInnerColumnWidth( widthWithUnit, columnId );\n\t};\n\n\tconst onChange = ( nextWidth, valueUnit, columnId ) => {\n\t\tif ( isPercentageUnit( valueUnit ) || ! valueUnit ) {\n\t\t\treturn;\n\t\t}\n\t\tonChangeWidth( nextWidth, valueUnit, columnId );\n\t};\n\n\tconst getColumnsSliders = useMemo( () => {\n\t\tif ( ! editorSidebarOpened || ! isSelected ) {\n\t\t\treturn null;\n\t\t}\n\n\t\treturn innerWidths.map( ( column, index ) => {\n\t\t\tconst { valueUnit = '%' } =\n\t\t\t\tgetValueAndUnit( column.attributes.width ) || {};\n\t\t\tconst label = sprintf(\n\t\t\t\t/* translators: %d: column index. */\n\t\t\t\t__( 'Column %d' ),\n\t\t\t\tindex + 1\n\t\t\t);\n\t\t\treturn (\n\t\t\t\t<UnitControl\n\t\t\t\t\tlabel={ label }\n\t\t\t\t\tsettingLabel=\"Width\"\n\t\t\t\t\tkey={ `${ column.clientId }-${\n\t\t\t\t\t\tgetWidths( innerWidths ).length\n\t\t\t\t\t}` }\n\t\t\t\t\tmin={ 1 }\n\t\t\t\t\tmax={\n\t\t\t\t\t\tisPercentageUnit( valueUnit ) || ! valueUnit\n\t\t\t\t\t\t\t? 100\n\t\t\t\t\t\t\t: undefined\n\t\t\t\t\t}\n\t\t\t\t\tvalue={ getWidths( innerWidths )[ index ] }\n\t\t\t\t\tonChange={ ( nextWidth ) => {\n\t\t\t\t\t\tonChange( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tonUnitChange={ ( nextUnit ) =>\n\t\t\t\t\t\tonChangeUnit( nextUnit, index, column.clientId )\n\t\t\t\t\t}\n\t\t\t\t\tonComplete={ ( nextWidth ) => {\n\t\t\t\t\t\tonChangeWidth( nextWidth, valueUnit, column.clientId );\n\t\t\t\t\t} }\n\t\t\t\t\tunit={ valueUnit }\n\t\t\t\t\tunits={ units }\n\t\t\t\t\tpreview={\n\t\t\t\t\t\t<ColumnsPreview\n\t\t\t\t\t\t\tcolumnWidths={ getWidths( innerWidths, false ) }\n\t\t\t\t\t\t\tselectedColumnIndex={ index }\n\t\t\t\t\t\t/>\n\t\t\t\t\t}\n\t\t\t\t/>\n\t\t\t);\n\t\t} );\n\t}, [ editorSidebarOpened, isSelected, innerWidths ] );\n\n\tconst onChangeColumnsNum = useCallback(\n\t\t( value ) => {\n\t\t\tupdateColumns( columnCount, value );\n\t\t},\n\t\t[ columnCount ]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<InspectorControls>\n\t\t\t\t\t\t<PanelBody title={ __( 'Columns Settings' ) }>\n\t\t\t\t\t\t\t<RangeControl\n\t\t\t\t\t\t\t\tlabel={ __( 'Number of columns' ) }\n\t\t\t\t\t\t\t\ticon={ columns }\n\t\t\t\t\t\t\t\tvalue={ columnCount }\n\t\t\t\t\t\t\t\tonChange={ onChangeColumnsNum }\n\t\t\t\t\t\t\t\tmin={ MIN_COLUMNS_NUM }\n\t\t\t\t\t\t\t\tmax={ columnCount + 1 }\n\t\t\t\t\t\t\t\ttype=\"stepper\"\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t{ getColumnsSliders }\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t\t<PanelBody>\n\t\t\t\t\t\t\t<FooterMessageControl\n\t\t\t\t\t\t\t\tlabel={ __(\n\t\t\t\t\t\t\t\t\t'Note: Column layout may vary between themes and screen sizes'\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</PanelBody>\n\t\t\t\t\t</InspectorControls>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<BlockVerticalAlignmentToolbar\n\t\t\t\t\t\t\tonChange={ updateAlignment }\n\t\t\t\t\t\t\tvalue={ verticalAlignment }\n\t\t\t\t\t\t/>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t</>\n\t\t\t) }\n\t\t\t<View style={ isSelected && styles.innerBlocksSelected }>\n\t\t\t\t{ resizeListener }\n\t\t\t\t{ width && (\n\t\t\t\t\t<InnerBlocks\n\t\t\t\t\t\trenderAppender={ renderAppender }\n\t\t\t\t\t\torientation={\n\t\t\t\t\t\t\tcolumnsInRow > 1 ? 'horizontal' : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\thorizontal={ columnsInRow > 1 }\n\t\t\t\t\t\tallowedBlocks={ ALLOWED_BLOCKS }\n\t\t\t\t\t\tcontentResizeMode=\"stretch\"\n\t\t\t\t\t\tonAddBlock={ onAddBlock }\n\t\t\t\t\t\tonDeleteBlock={\n\t\t\t\t\t\t\tcolumnCount === 1 ? onDeleteBlock : undefined\n\t\t\t\t\t\t}\n\t\t\t\t\t\tblockWidth={ width }\n\t\t\t\t\t\tcontentStyle={ contentWidths }\n\t\t\t\t\t\tparentWidth={\n\t\t\t\t\t\t\tisFullWidth( align ) && columnCount === 0\n\t\t\t\t\t\t\t\t? screenWidth\n\t\t\t\t\t\t\t\t: calculateContainerWidth( width, columnsInRow )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t</View>\n\t\t</>\n\t);\n}\n\nconst ColumnsEditContainerWrapper = withDispatch(\n\t( dispatch, ownProps, registry ) => ( {\n\t\t/**\n\t\t * Update all child Column blocks with a new vertical alignment setting\n\t\t * based on whatever alignment is passed in. This allows change to parent\n\t\t * to overide anything set on a individual column basis.\n\t\t *\n\t\t * @param {string} verticalAlignment the vertical alignment setting\n\t\t */\n\t\tupdateAlignment( verticalAlignment ) {\n\t\t\tconst { clientId, setAttributes } = ownProps;\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\t\t\tconst { getBlockOrder } = registry.select( blockEditorStore );\n\n\t\t\t// Update own alignment.\n\t\t\tsetAttributes( { verticalAlignment } );\n\n\t\t\t// Update all child Column Blocks to match.\n\t\t\tconst innerBlockClientIds = getBlockOrder( clientId );\n\t\t\tinnerBlockClientIds.forEach( ( innerBlockClientId ) => {\n\t\t\t\tupdateBlockAttributes( innerBlockClientId, {\n\t\t\t\t\tverticalAlignment,\n\t\t\t\t} );\n\t\t\t} );\n\t\t},\n\t\tupdateInnerColumnWidth( value, columnId ) {\n\t\t\tconst { updateBlockAttributes } = dispatch( blockEditorStore );\n\n\t\t\tupdateBlockAttributes( columnId, {\n\t\t\t\twidth: value,\n\t\t\t} );\n\t\t},\n\t\tupdateBlockSettings( settings ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { updateBlockListSettings } = dispatch( blockEditorStore );\n\t\t\tupdateBlockListSettings( clientId, settings );\n\t\t},\n\t\t/**\n\t\t * Updates the column columnCount, including necessary revisions to child Column\n\t\t * blocks to grant required or redistribute available space.\n\t\t *\n\t\t * @param {number} previousColumns Previous column columnCount.\n\t\t * @param {number} newColumns New column columnCount.\n\t\t */\n\t\tupdateColumns( previousColumns, newColumns ) {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks } = dispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\tlet innerBlocks = getBlocks( clientId );\n\t\t\tconst hasExplicitWidths =\n\t\t\t\thasExplicitPercentColumnWidths( innerBlocks );\n\n\t\t\t// Redistribute available width for existing inner blocks.\n\t\t\tconst isAddingColumn = newColumns > previousColumns;\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId ) || {};\n\n\t\t\tif ( isAddingColumn && hasExplicitWidths ) {\n\t\t\t\t// If adding a new column, assign width to the new column equal to\n\t\t\t\t// as if it were `1 / columns` of the total available space.\n\t\t\t\tconst newColumnWidth = toWidthPrecision( 100 / newColumns );\n\n\t\t\t\t// Redistribute in consideration of pending block insertion as\n\t\t\t\t// constraining the available working width.\n\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t100 - newColumnWidth\n\t\t\t\t);\n\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...getMappedColumnWidths( innerBlocks, widths ),\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\twidth: `${ newColumnWidth }%`,\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else if ( isAddingColumn ) {\n\t\t\t\tinnerBlocks = [\n\t\t\t\t\t...innerBlocks,\n\t\t\t\t\t...times( newColumns - previousColumns, () => {\n\t\t\t\t\t\treturn createBlock( 'core/column', {\n\t\t\t\t\t\t\tverticalAlignment,\n\t\t\t\t\t\t} );\n\t\t\t\t\t} ),\n\t\t\t\t];\n\t\t\t} else {\n\t\t\t\t// The removed column will be the last of the inner blocks.\n\t\t\t\tinnerBlocks = innerBlocks.slice(\n\t\t\t\t\t0,\n\t\t\t\t\t-( previousColumns - newColumns )\n\t\t\t\t);\n\n\t\t\t\tif ( hasExplicitWidths ) {\n\t\t\t\t\t// Redistribute as if block is already removed.\n\t\t\t\t\tconst widths = getRedistributedColumnWidths(\n\t\t\t\t\t\tinnerBlocks,\n\t\t\t\t\t\t100\n\t\t\t\t\t);\n\n\t\t\t\t\tinnerBlocks = getMappedColumnWidths( innerBlocks, widths );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treplaceInnerBlocks( clientId, innerBlocks );\n\t\t},\n\t\tonAddNextColumn: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { replaceInnerBlocks, selectBlock } =\n\t\t\t\tdispatch( blockEditorStore );\n\t\t\tconst { getBlocks, getBlockAttributes } =\n\t\t\t\tregistry.select( blockEditorStore );\n\n\t\t\t// Get verticalAlignment from Columns block to set the same to new Column.\n\t\t\tconst { verticalAlignment } = getBlockAttributes( clientId );\n\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst insertedBlock = createBlock( 'core/column', {\n\t\t\t\tverticalAlignment,\n\t\t\t} );\n\n\t\t\treplaceInnerBlocks(\n\t\t\t\tclientId,\n\t\t\t\t[ ...innerBlocks, insertedBlock ],\n\t\t\t\ttrue\n\t\t\t);\n\t\t\tselectBlock( insertedBlock.clientId );\n\t\t},\n\t\tonDeleteBlock: () => {\n\t\t\tconst { clientId } = ownProps;\n\t\t\tconst { removeBlock } = dispatch( blockEditorStore );\n\t\t\tremoveBlock( clientId );\n\t\t},\n\t} )\n)( memo( ColumnsEditContainer ) );\n\nconst ColumnsEdit = ( props ) => {\n\tconst { clientId, isSelected, style } = props;\n\tconst {\n\t\tcolumnCount,\n\t\tisDefaultColumns,\n\t\tinnerWidths = [],\n\t\thasParents,\n\t\tparentBlockAlignment,\n\t\teditorSidebarOpened,\n\t} = useSelect(\n\t\t( select ) => {\n\t\t\tconst {\n\t\t\t\tgetBlockCount,\n\t\t\t\tgetBlocks,\n\t\t\t\tgetBlockParents,\n\t\t\t\tgetBlockAttributes,\n\t\t\t} = select( blockEditorStore );\n\t\t\tconst { isEditorSidebarOpened } = select( 'core/edit-post' );\n\t\t\tconst innerBlocks = getBlocks( clientId );\n\n\t\t\tconst isContentEmpty = map(\n\t\t\t\tinnerBlocks,\n\t\t\t\t( innerBlock ) => innerBlock.innerBlocks.length\n\t\t\t);\n\n\t\t\tconst innerColumnsWidths = innerBlocks.map( ( inn ) => ( {\n\t\t\t\tclientId: inn.clientId,\n\t\t\t\tattributes: { width: inn.attributes.width },\n\t\t\t} ) );\n\t\t\tconst parents = getBlockParents( clientId, true );\n\n\t\t\treturn {\n\t\t\t\tcolumnCount: getBlockCount( clientId ),\n\t\t\t\tisDefaultColumns: ! isContentEmpty.filter( Boolean ).length,\n\t\t\t\tinnerWidths: innerColumnsWidths,\n\t\t\t\thasParents: !! parents.length,\n\t\t\t\tparentBlockAlignment: getBlockAttributes( parents[ 0 ] )?.align,\n\t\t\t\teditorSidebarOpened: isSelected && isEditorSidebarOpened(),\n\t\t\t};\n\t\t},\n\t\t[ clientId, isSelected ]\n\t);\n\n\tconst memoizedInnerWidths = useMemo( () => {\n\t\treturn innerWidths;\n\t}, [\n\t\t// The JSON.stringify is used because innerWidth is always a new reference.\n\t\t// The innerBlocks is a new reference after each attribute change of any nested block.\n\t\tJSON.stringify( innerWidths ),\n\t] );\n\n\tconst [ isVisible, setIsVisible ] = useState( false );\n\n\tuseEffect( () => {\n\t\tif ( isSelected && isDefaultColumns ) {\n\t\t\tconst revealTimeout = setTimeout( () => setIsVisible( true ), 100 );\n\n\t\t\treturn () => clearTimeout( revealTimeout );\n\t\t}\n\t}, [] );\n\n\tconst onClose = useCallback( () => {\n\t\tsetIsVisible( false );\n\t}, [] );\n\n\treturn (\n\t\t<View style={ style }>\n\t\t\t<ColumnsEditContainerWrapper\n\t\t\t\tcolumnCount={ columnCount }\n\t\t\t\tinnerWidths={ memoizedInnerWidths }\n\t\t\t\thasParents={ hasParents }\n\t\t\t\tparentBlockAlignment={ parentBlockAlignment }\n\t\t\t\teditorSidebarOpened={ editorSidebarOpened }\n\t\t\t\t{ ...props }\n\t\t\t/>\n\t\t\t<BlockVariationPicker\n\t\t\t\tvariations={ variations }\n\t\t\t\tonClose={ onClose }\n\t\t\t\tclientId={ clientId }\n\t\t\t\tisVisible={ isVisible }\n\t\t\t/>\n\t\t</View>\n\t);\n};\n\nexport default ColumnsEdit;\n"]}
|
|
@@ -61,6 +61,12 @@ function ResizableCover(_ref) {
|
|
|
61
61
|
onResizeStop: (_event, _direction, elt) => {
|
|
62
62
|
onResizeStop(elt.clientHeight);
|
|
63
63
|
setIsResizing(false);
|
|
64
|
+
},
|
|
65
|
+
__experimentalShowTooltip: true,
|
|
66
|
+
__experimentalTooltipProps: {
|
|
67
|
+
axis: 'y',
|
|
68
|
+
position: 'bottom',
|
|
69
|
+
isVisible: isResizing
|
|
64
70
|
}
|
|
65
71
|
}, props));
|
|
66
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/cover/edit/resizable-cover.js"],"names":["RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight"],"mappings":";;;;;;;;;AAQA;;;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAMA,2BAA2B,GAAG;AACnCC,EAAAA,GAAG,EAAE,KAD8B;AAEnCC,EAAAA,KAAK,EAAE,KAF4B;AAGnCC,EAAAA,MAAM,EAAE,IAH2B;AAInCC,EAAAA,IAAI,EAAE,KAJ6B;AAKnCC,EAAAA,QAAQ,EAAE,KALyB;AAMnCC,EAAAA,WAAW,EAAE,KANsB;AAOnCC,EAAAA,UAAU,EAAE,KAPuB;AAQnCC,EAAAA,OAAO,EAAE;AAR0B,CAApC;;AAWe,SAASC,cAAT,OAMX;AAAA,MANoC;AACvCC,IAAAA,SADuC;AAEvCC,IAAAA,aAFuC;AAGvCC,IAAAA,QAHuC;AAIvCC,IAAAA,YAJuC;AAKvC,OAAGC;AALoC,GAMpC;AACH,QAAM,CAAEC,UAAF,EAAcC,aAAd,IAAgC,uBAAU,KAAV,CAAtC;AAEA,SACC,4BAAC,wBAAD;AACC,IAAA,SAAS,EAAG,yBAAYN,SAAZ,EAAuB;AAClC,qBAAeK;AADmB,KAAvB,CADb;AAIC,IAAA,MAAM,EAAGf,2BAJV;AAKC,IAAA,aAAa,EAAG,CAAEiB,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AAC9CR,MAAAA,aAAa,CAAEQ,GAAG,CAACC,YAAN,CAAb;AACAR,MAAAA,QAAQ,CAAEO,GAAG,CAACC,YAAN,CAAR;AACA,KARF;AASC,IAAA,QAAQ,EAAG,CAAEH,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AACzCP,MAAAA,QAAQ,CAAEO,GAAG,CAACC,YAAN,CAAR;;AACA,UAAK,CAAEL,UAAP,EAAoB;AACnBC,QAAAA,aAAa,CAAE,IAAF,CAAb;AACA;AACD,KAdF;AAeC,IAAA,YAAY,EAAG,CAAEC,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AAC7CN,MAAAA,YAAY,CAAEM,GAAG,CAACC,YAAN,CAAZ;AACAJ,MAAAA,aAAa,CAAE,KAAF,CAAb;AACA;
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/cover/edit/resizable-cover.js"],"names":["RESIZABLE_BOX_ENABLE_OPTION","top","right","bottom","left","topRight","bottomRight","bottomLeft","topLeft","ResizableCover","className","onResizeStart","onResize","onResizeStop","props","isResizing","setIsResizing","_event","_direction","elt","clientHeight","axis","position","isVisible"],"mappings":";;;;;;;;;AAQA;;;;AALA;;AAMA;;AATA;AACA;AACA;;AAGA;AACA;AACA;AAIA,MAAMA,2BAA2B,GAAG;AACnCC,EAAAA,GAAG,EAAE,KAD8B;AAEnCC,EAAAA,KAAK,EAAE,KAF4B;AAGnCC,EAAAA,MAAM,EAAE,IAH2B;AAInCC,EAAAA,IAAI,EAAE,KAJ6B;AAKnCC,EAAAA,QAAQ,EAAE,KALyB;AAMnCC,EAAAA,WAAW,EAAE,KANsB;AAOnCC,EAAAA,UAAU,EAAE,KAPuB;AAQnCC,EAAAA,OAAO,EAAE;AAR0B,CAApC;;AAWe,SAASC,cAAT,OAMX;AAAA,MANoC;AACvCC,IAAAA,SADuC;AAEvCC,IAAAA,aAFuC;AAGvCC,IAAAA,QAHuC;AAIvCC,IAAAA,YAJuC;AAKvC,OAAGC;AALoC,GAMpC;AACH,QAAM,CAAEC,UAAF,EAAcC,aAAd,IAAgC,uBAAU,KAAV,CAAtC;AAEA,SACC,4BAAC,wBAAD;AACC,IAAA,SAAS,EAAG,yBAAYN,SAAZ,EAAuB;AAClC,qBAAeK;AADmB,KAAvB,CADb;AAIC,IAAA,MAAM,EAAGf,2BAJV;AAKC,IAAA,aAAa,EAAG,CAAEiB,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AAC9CR,MAAAA,aAAa,CAAEQ,GAAG,CAACC,YAAN,CAAb;AACAR,MAAAA,QAAQ,CAAEO,GAAG,CAACC,YAAN,CAAR;AACA,KARF;AASC,IAAA,QAAQ,EAAG,CAAEH,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AACzCP,MAAAA,QAAQ,CAAEO,GAAG,CAACC,YAAN,CAAR;;AACA,UAAK,CAAEL,UAAP,EAAoB;AACnBC,QAAAA,aAAa,CAAE,IAAF,CAAb;AACA;AACD,KAdF;AAeC,IAAA,YAAY,EAAG,CAAEC,MAAF,EAAUC,UAAV,EAAsBC,GAAtB,KAA+B;AAC7CN,MAAAA,YAAY,CAAEM,GAAG,CAACC,YAAN,CAAZ;AACAJ,MAAAA,aAAa,CAAE,KAAF,CAAb;AACA,KAlBF;AAmBC,IAAA,yBAAyB,MAnB1B;AAoBC,IAAA,0BAA0B,EAAG;AAC5BK,MAAAA,IAAI,EAAE,GADsB;AAE5BC,MAAAA,QAAQ,EAAE,QAFkB;AAG5BC,MAAAA,SAAS,EAAER;AAHiB;AApB9B,KAyBMD,KAzBN,EADD;AA6BA","sourcesContent":["/**\n * External dependencies\n */\nimport classnames from 'classnames';\n\n/**\n * WordPress dependencies\n */\nimport { useState } from '@wordpress/element';\nimport { ResizableBox } from '@wordpress/components';\n\nconst RESIZABLE_BOX_ENABLE_OPTION = {\n\ttop: false,\n\tright: false,\n\tbottom: true,\n\tleft: false,\n\ttopRight: false,\n\tbottomRight: false,\n\tbottomLeft: false,\n\ttopLeft: false,\n};\n\nexport default function ResizableCover( {\n\tclassName,\n\tonResizeStart,\n\tonResize,\n\tonResizeStop,\n\t...props\n} ) {\n\tconst [ isResizing, setIsResizing ] = useState( false );\n\n\treturn (\n\t\t<ResizableBox\n\t\t\tclassName={ classnames( className, {\n\t\t\t\t'is-resizing': isResizing,\n\t\t\t} ) }\n\t\t\tenable={ RESIZABLE_BOX_ENABLE_OPTION }\n\t\t\tonResizeStart={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStart( elt.clientHeight );\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t} }\n\t\t\tonResize={ ( _event, _direction, elt ) => {\n\t\t\t\tonResize( elt.clientHeight );\n\t\t\t\tif ( ! isResizing ) {\n\t\t\t\t\tsetIsResizing( true );\n\t\t\t\t}\n\t\t\t} }\n\t\t\tonResizeStop={ ( _event, _direction, elt ) => {\n\t\t\t\tonResizeStop( elt.clientHeight );\n\t\t\t\tsetIsResizing( false );\n\t\t\t} }\n\t\t\t__experimentalShowTooltip\n\t\t\t__experimentalTooltipProps={ {\n\t\t\t\taxis: 'y',\n\t\t\t\tposition: 'bottom',\n\t\t\t\tisVisible: isResizing,\n\t\t\t} }\n\t\t\t{ ...props }\n\t\t/>\n\t);\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["@wordpress/block-library/src/group/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","__experimentalConvert","alignments","widestAlignment","reduce","accumulator","block","align","attributes","indexOf","undefined","groupInnerBlocks","map","name","innerBlocks"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,GAAF,CAHT;;AAICC,IAAAA,qBAAqB,CAAED,MAAF,EAAW;AAC/B,YAAME,UAAU,GAAG,CAAE,MAAF,EAAU,MAAV,CAAnB,CAD+B,CAG/B;;AACA,YAAMC,eAAe,GAAGH,MAAM,CAACI,MAAP,CACvB,CAAEC,WAAF,EAAeC,KAAf,KAA0B;AACzB,cAAM;AAAEC,UAAAA;AAAF,YAAYD,KAAK,CAACE,UAAxB;AACA,eAAON,UAAU,CAACO,OAAX,CAAoBF,KAApB,IACNL,UAAU,CAACO,OAAX,CAAoBJ,WAApB,CADM,GAEJE,KAFI,GAGJF,WAHH;AAIA,OAPsB,EAQvBK,SARuB,CAAxB,CAJ+B,CAe/B;AACA;AACA;AACA;AACA;;AACA,YAAMC,gBAAgB,GAAGX,MAAM,CAACY,GAAP,CAAcN,KAAF,IAAa;AACjD,eAAO,yBACNA,KAAK,CAACO,IADA,EAENP,KAAK,CAACE,UAFA,EAGNF,KAAK,CAACQ,WAHA,CAAP;AAKA,OANwB,CAAzB;AAQA,aAAO,yBACN,YADM,EAEN;AACCP,QAAAA,KAAK,EAAEJ;AADR,OAFM,EAKNQ,gBALM,CAAP;AAOA;;AAvCF,GADK;
|
|
1
|
+
{"version":3,"sources":["@wordpress/block-library/src/group/transforms.js"],"names":["transforms","from","type","isMultiBlock","blocks","__experimentalConvert","alignments","widestAlignment","reduce","accumulator","block","align","attributes","indexOf","undefined","groupInnerBlocks","map","name","innerBlocks","to","transform"],"mappings":";;;;;;;AAGA;;AAHA;AACA;AACA;AAGA,MAAMA,UAAU,GAAG;AAClBC,EAAAA,IAAI,EAAE,CACL;AACCC,IAAAA,IAAI,EAAE,OADP;AAECC,IAAAA,YAAY,EAAE,IAFf;AAGCC,IAAAA,MAAM,EAAE,CAAE,GAAF,CAHT;;AAICC,IAAAA,qBAAqB,CAAED,MAAF,EAAW;AAC/B,YAAME,UAAU,GAAG,CAAE,MAAF,EAAU,MAAV,CAAnB,CAD+B,CAG/B;;AACA,YAAMC,eAAe,GAAGH,MAAM,CAACI,MAAP,CACvB,CAAEC,WAAF,EAAeC,KAAf,KAA0B;AACzB,cAAM;AAAEC,UAAAA;AAAF,YAAYD,KAAK,CAACE,UAAxB;AACA,eAAON,UAAU,CAACO,OAAX,CAAoBF,KAApB,IACNL,UAAU,CAACO,OAAX,CAAoBJ,WAApB,CADM,GAEJE,KAFI,GAGJF,WAHH;AAIA,OAPsB,EAQvBK,SARuB,CAAxB,CAJ+B,CAe/B;AACA;AACA;AACA;AACA;;AACA,YAAMC,gBAAgB,GAAGX,MAAM,CAACY,GAAP,CAAcN,KAAF,IAAa;AACjD,eAAO,yBACNA,KAAK,CAACO,IADA,EAENP,KAAK,CAACE,UAFA,EAGNF,KAAK,CAACQ,WAHA,CAAP;AAKA,OANwB,CAAzB;AAQA,aAAO,yBACN,YADM,EAEN;AACCP,QAAAA,KAAK,EAAEJ;AADR,OAFM,EAKNQ,gBALM,CAAP;AAOA;;AAvCF,GADK,CADY;AA4ClBI,EAAAA,EAAE,EAAE,CACH;AACCjB,IAAAA,IAAI,EAAE,OADP;AAECE,IAAAA,MAAM,EAAE,CAAE,GAAF,CAFT;AAGCgB,IAAAA,SAAS,EAAE,CAAER,UAAF,EAAcM,WAAd,KAA+BA;AAH3C,GADG;AA5Cc,CAAnB;eAqDelB,U","sourcesContent":["/**\n * WordPress dependencies\n */\nimport { createBlock } from '@wordpress/blocks';\n\nconst transforms = {\n\tfrom: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tisMultiBlock: true,\n\t\t\tblocks: [ '*' ],\n\t\t\t__experimentalConvert( blocks ) {\n\t\t\t\tconst alignments = [ 'wide', 'full' ];\n\n\t\t\t\t// Determine the widest setting of all the blocks to be grouped\n\t\t\t\tconst widestAlignment = blocks.reduce(\n\t\t\t\t\t( accumulator, block ) => {\n\t\t\t\t\t\tconst { align } = block.attributes;\n\t\t\t\t\t\treturn alignments.indexOf( align ) >\n\t\t\t\t\t\t\talignments.indexOf( accumulator )\n\t\t\t\t\t\t\t? align\n\t\t\t\t\t\t\t: accumulator;\n\t\t\t\t\t},\n\t\t\t\t\tundefined\n\t\t\t\t);\n\n\t\t\t\t// Clone the Blocks to be Grouped\n\t\t\t\t// Failing to create new block references causes the original blocks\n\t\t\t\t// to be replaced in the switchToBlockType call thereby meaning they\n\t\t\t\t// are removed both from their original location and within the\n\t\t\t\t// new group block.\n\t\t\t\tconst groupInnerBlocks = blocks.map( ( block ) => {\n\t\t\t\t\treturn createBlock(\n\t\t\t\t\t\tblock.name,\n\t\t\t\t\t\tblock.attributes,\n\t\t\t\t\t\tblock.innerBlocks\n\t\t\t\t\t);\n\t\t\t\t} );\n\n\t\t\t\treturn createBlock(\n\t\t\t\t\t'core/group',\n\t\t\t\t\t{\n\t\t\t\t\t\talign: widestAlignment,\n\t\t\t\t\t},\n\t\t\t\t\tgroupInnerBlocks\n\t\t\t\t);\n\t\t\t},\n\t\t},\n\t],\n\tto: [\n\t\t{\n\t\t\ttype: 'block',\n\t\t\tblocks: [ '*' ],\n\t\t\ttransform: ( attributes, innerBlocks ) => innerBlocks,\n\t\t},\n\t],\n};\n\nexport default transforms;\n"]}
|
package/build/index.native.js
CHANGED
|
@@ -55,6 +55,8 @@ var latestPosts = _interopRequireWildcard(require("./latest-posts"));
|
|
|
55
55
|
|
|
56
56
|
var list = _interopRequireWildcard(require("./list"));
|
|
57
57
|
|
|
58
|
+
var listItem = _interopRequireWildcard(require("./list-item"));
|
|
59
|
+
|
|
58
60
|
var missing = _interopRequireWildcard(require("./missing"));
|
|
59
61
|
|
|
60
62
|
var more = _interopRequireWildcard(require("./more"));
|
|
@@ -117,7 +119,7 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
|
117
119
|
const ALLOWED_BLOCKS_GRADIENT_SUPPORT = ['core/button'];
|
|
118
120
|
const coreBlocks = [// Common blocks are grouped at the top to prioritize their display
|
|
119
121
|
// in various contexts — like the inserter and auto-complete components.
|
|
120
|
-
paragraph, image, heading, gallery, list, quote, // Register all remaining core blocks.
|
|
122
|
+
paragraph, image, heading, gallery, list, listItem, quote, // Register all remaining core blocks.
|
|
121
123
|
shortcode, archives, audio, button, calendar, categories, code, columns, column, cover, embed, file, html, mediaText, latestComments, latestPosts, missing, more, nextpage, preformatted, pullquote, rss, search, separator, reusableBlock, spacer, table, tagCloud, textColumns, verse, video, classic, buttons, socialLink, socialLinks].reduce((accumulator, block) => {
|
|
122
124
|
accumulator[block.name] = block;
|
|
123
125
|
return accumulator;
|
|
@@ -191,7 +193,16 @@ const registerBlockVariations = block => {
|
|
|
191
193
|
const devOnly = block => !!__DEV__ ? block : null; // eslint-disable-next-line no-unused-vars
|
|
192
194
|
|
|
193
195
|
|
|
194
|
-
const iOSOnly = block => _reactNative.Platform.OS === 'ios' ? block : devOnly(block); //
|
|
196
|
+
const iOSOnly = block => _reactNative.Platform.OS === 'ios' ? block : devOnly(block); // To be removed once List V2 is released on the web editor.
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
function listCheck(listBlock, blocksFlags) {
|
|
200
|
+
if (blocksFlags !== null && blocksFlags !== void 0 && blocksFlags.__experimentalEnableListBlockV2) {
|
|
201
|
+
listBlock.settings = listBlock === null || listBlock === void 0 ? void 0 : listBlock.settingsV2;
|
|
202
|
+
}
|
|
203
|
+
|
|
204
|
+
return listBlock;
|
|
205
|
+
} // Hide the Classic block and SocialLink block
|
|
195
206
|
|
|
196
207
|
|
|
197
208
|
(0, _hooks.addFilter)('blocks.registerBlockType', 'core/react-native-editor', (settings, name) => {
|
|
@@ -229,12 +240,14 @@ const iOSOnly = block => _reactNative.Platform.OS === 'ios' ? block : devOnly(bl
|
|
|
229
240
|
*
|
|
230
241
|
* registerCoreBlocks();
|
|
231
242
|
* ```
|
|
243
|
+
* @param {Object} [blocksFlags] Experimental flags
|
|
244
|
+
*
|
|
232
245
|
*
|
|
233
246
|
*/
|
|
234
247
|
|
|
235
|
-
const registerCoreBlocks =
|
|
248
|
+
const registerCoreBlocks = blocksFlags => {
|
|
236
249
|
// When adding new blocks to this list please also consider updating /src/block-support/supported-blocks.json in the Gutenberg-Mobile repo
|
|
237
|
-
[paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, list, quote, mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
|
|
250
|
+
[paragraph, heading, devOnly(code), missing, more, image, video, nextpage, separator, listCheck(list, blocksFlags), listItem, quote, mediaText, preformatted, gallery, columns, column, group, classic, button, spacer, shortcode, buttons, latestPosts, verse, cover, socialLink, socialLinks, pullquote, file, audio, reusableBlock, search, embed].forEach(registerBlock);
|
|
238
251
|
registerBlockVariations(socialLink);
|
|
239
252
|
(0, _blocks.setDefaultBlockName)(paragraph.name);
|
|
240
253
|
(0, _blocks.setFreeformContentHandlerName)(classic.name);
|