@wordpress/block-library 8.17.0 → 8.18.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/README.md +19 -0
- package/build/cover/edit/index.js +3 -1
- package/build/cover/edit/index.js.map +1 -1
- package/build/cover/shared.js +26 -21
- package/build/cover/shared.js.map +1 -1
- package/build/embed/embed-link-settings.native.js +0 -1
- package/build/embed/embed-link-settings.native.js.map +1 -1
- package/build/footnotes/init.js +13 -0
- package/build/footnotes/init.js.map +1 -0
- package/build/list/edit.js +2 -1
- package/build/list/edit.js.map +1 -1
- package/build/navigation/edit/inner-blocks.js +2 -1
- package/build/navigation/edit/inner-blocks.js.map +1 -1
- package/build/post-content/edit.js +1 -1
- package/build/post-content/edit.js.map +1 -1
- package/build/post-template/index.js +1 -1
- package/build/query/edit/inspector-controls/index.js +28 -3
- package/build/query/edit/inspector-controls/index.js.map +1 -1
- package/build/query/edit/query-content.js +2 -1
- package/build/query/edit/query-content.js.map +1 -1
- package/build/query/index.js +9 -2
- package/build/query/index.js.map +1 -1
- package/build/query/view.js +75 -0
- package/build/query/view.js.map +1 -0
- package/build/query-pagination-next/index.js +1 -1
- package/build/query-pagination-numbers/edit.js +50 -5
- package/build/query-pagination-numbers/edit.js.map +1 -1
- package/build/query-pagination-numbers/index.js +7 -1
- package/build/query-pagination-numbers/index.js.map +1 -1
- package/build/query-pagination-previous/index.js +1 -1
- package/build/quote/edit.js +2 -1
- package/build/quote/edit.js.map +1 -1
- package/build/search/edit.js +3 -1
- package/build/search/edit.js.map +1 -1
- package/build/search/utils.js +2 -4
- package/build/search/utils.js.map +1 -1
- package/build/social-link/edit.native.js +1 -3
- package/build/social-link/edit.native.js.map +1 -1
- package/build/template-part/edit/index.js +22 -15
- package/build/template-part/edit/index.js.map +1 -1
- package/build-module/cover/edit/index.js +3 -1
- package/build-module/cover/edit/index.js.map +1 -1
- package/build-module/cover/shared.js +26 -21
- package/build-module/cover/shared.js.map +1 -1
- package/build-module/embed/embed-link-settings.native.js +0 -1
- package/build-module/embed/embed-link-settings.native.js.map +1 -1
- package/build-module/footnotes/init.js +6 -0
- package/build-module/footnotes/init.js.map +1 -0
- package/build-module/list/edit.js +2 -1
- package/build-module/list/edit.js.map +1 -1
- package/build-module/navigation/edit/inner-blocks.js +2 -1
- package/build-module/navigation/edit/inner-blocks.js.map +1 -1
- package/build-module/post-content/edit.js +1 -1
- package/build-module/post-content/edit.js.map +1 -1
- package/build-module/post-template/index.js +1 -1
- package/build-module/query/edit/inspector-controls/index.js +29 -4
- package/build-module/query/edit/inspector-controls/index.js.map +1 -1
- package/build-module/query/edit/query-content.js +2 -1
- package/build-module/query/edit/query-content.js.map +1 -1
- package/build-module/query/index.js +9 -2
- package/build-module/query/index.js.map +1 -1
- package/build-module/query/view.js +72 -0
- package/build-module/query/view.js.map +1 -0
- package/build-module/query-pagination-next/index.js +1 -1
- package/build-module/query-pagination-numbers/edit.js +51 -6
- package/build-module/query-pagination-numbers/edit.js.map +1 -1
- package/build-module/query-pagination-numbers/index.js +7 -1
- package/build-module/query-pagination-numbers/index.js.map +1 -1
- package/build-module/query-pagination-previous/index.js +1 -1
- package/build-module/quote/edit.js +2 -1
- package/build-module/quote/edit.js.map +1 -1
- package/build-module/search/edit.js +4 -2
- package/build-module/search/edit.js.map +1 -1
- package/build-module/search/utils.js +0 -1
- package/build-module/search/utils.js.map +1 -1
- package/build-module/social-link/edit.native.js +1 -3
- package/build-module/social-link/edit.native.js.map +1 -1
- package/build-module/template-part/edit/index.js +22 -15
- package/build-module/template-part/edit/index.js.map +1 -1
- package/build-style/editor-rtl.css +2 -1
- package/build-style/editor.css +2 -1
- package/build-style/query/style-rtl.css +140 -0
- package/build-style/query/style.css +140 -0
- package/build-style/site-logo/style-rtl.css +1 -0
- package/build-style/site-logo/style.css +1 -0
- package/build-style/social-links/editor-rtl.css +2 -1
- package/build-style/social-links/editor.css +2 -1
- package/build-style/style-rtl.css +1 -0
- package/build-style/style.css +1 -0
- package/package.json +32 -32
- package/src/audio/test/__snapshots__/edit.native.js.snap +106 -78
- package/src/cover/edit/index.js +3 -1
- package/src/cover/shared.js +25 -20
- package/src/cover/test/edit.native.js +1 -5
- package/src/embed/embed-link-settings.native.js +0 -1
- package/src/embed/test/index.native.js +9 -9
- package/src/file/test/__snapshots__/edit.native.js.snap +218 -162
- package/src/footnotes/init.js +6 -0
- package/src/image/index.php +5 -0
- package/src/list/edit.js +1 -0
- package/src/navigation/edit/inner-blocks.js +1 -0
- package/src/post-content/edit.js +2 -2
- package/src/post-content/index.php +0 -6
- package/src/post-featured-image/index.php +0 -6
- package/src/post-navigation-link/index.php +2 -2
- package/src/post-template/block.json +2 -1
- package/src/post-template/index.php +19 -4
- package/src/query/block.json +9 -2
- package/src/query/edit/inspector-controls/index.js +46 -3
- package/src/query/edit/query-content.js +1 -0
- package/src/query/index.php +94 -1
- package/src/query/style.scss +63 -0
- package/src/query/view.js +82 -0
- package/src/query-no-results/index.php +1 -5
- package/src/query-pagination-next/block.json +7 -1
- package/src/query-pagination-next/index.php +20 -3
- package/src/query-pagination-numbers/block.json +7 -1
- package/src/query-pagination-numbers/edit.js +64 -16
- package/src/query-pagination-numbers/index.php +27 -4
- package/src/query-pagination-previous/block.json +7 -1
- package/src/query-pagination-previous/index.php +19 -2
- package/src/quote/edit.js +1 -0
- package/src/search/edit.js +8 -2
- package/src/search/test/__snapshots__/edit.native.js.snap +363 -265
- package/src/search/utils.js +0 -1
- package/src/site-logo/style.scss +1 -0
- package/src/social-link/edit.native.js +1 -1
- package/src/social-link/editor.native.scss +0 -4
- package/src/social-links/editor.scss +2 -1
- package/src/social-links/test/edit.native.js +30 -0
- package/src/template-part/edit/index.js +35 -22
- package/tsconfig.tsbuildinfo +1 -1
- package/src/social-link/test/index.native.js +0 -132
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["View","Animated","Easing","TouchableWithoutFeedback","BlockControls","store","blockEditorStore","useEffect","useState","useRef","useCallback","ToolbarGroup","ToolbarButton","LinkSettingsNavigation","compose","usePreferredColorSchemeStyle","__","sprintf","link","Icon","withSelect","getIconBySite","getNameBySite","styles","DEFAULT_ACTIVE_ICON_STYLES","backgroundColor","color","DEFAULT_INACTIVE_ICON_STYLES","ANIMATION_DELAY","ANIMATION_DURATION","linkSettingsOptions","url","label","placeholder","autoFocus","linkLabel","footer","SocialLinkEdit","attributes","setAttributes","isSelected","onFocus","name","service","isLinkSheetVisible","setIsLinkSheetVisible","hasUrl","setHasUrl","activeIcon","inactiveIcon","inactiveIconDark","animatedValue","Value","current","IconComponent","socialLinkName","setValue","animateColors","interpolationColors","interpolate","inputRange","outputRange","stroke","sequence","delay","timing","toValue","duration","easing","circle","useNativeDriver","start","onCloseSettingsSheet","onOpenSettingsSheet","onEmptyURL","onIconPress","accessibilityHint","createElement","style","container","Fragment","title","icon","onClick","isActive","isVisible","rel","onClose","options","withBottomSheet","onPress","accessibilityRole","accessibilityLabel","iconContainer","animated","select","clientId","getBlock","block","substring"],"sources":["@wordpress/block-library/src/social-link/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Animated, Easing, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect, useState, useRef, useCallback } from '@wordpress/element';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n} from '@wordpress/components';\nimport { compose, usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { link, Icon } from '@wordpress/icons';\nimport { withSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\nimport styles from './editor.scss';\n\nconst DEFAULT_ACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#f0f0f0',\n\tcolor: '#444',\n};\nconst DEFAULT_INACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#0000003f',\n\tcolor: '#fff',\n};\nconst ANIMATION_DELAY = 300;\nconst ANIMATION_DURATION = 400;\n\nconst linkSettingsOptions = {\n\turl: {\n\t\tlabel: __( 'URL' ),\n\t\tplaceholder: __( 'Add URL' ),\n\t\tautoFocus: true,\n\t},\n\tlinkLabel: {\n\t\tlabel: __( 'Link label' ),\n\t\tplaceholder: __( 'None' ),\n\t},\n\tfooter: {\n\t\tlabel: __( 'Briefly describe the link to help screen reader user' ),\n\t},\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tonFocus,\n\tname,\n} ) => {\n\tconst { url, service = name } = attributes;\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ hasUrl, setHasUrl ] = useState( !! url );\n\tconst activeIcon =\n\t\tstyles[ `wp-social-link-${ service }` ] ||\n\t\tstyles[ `wp-social-link` ] ||\n\t\tDEFAULT_ACTIVE_ICON_STYLES;\n\tconst inactiveIcon =\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.inactiveIcon,\n\t\t\tstyles.inactiveIconDark\n\t\t) || DEFAULT_INACTIVE_ICON_STYLES;\n\n\tconst animatedValue = useRef( new Animated.Value( 0 ) ).current;\n\n\tconst IconComponent = getIconBySite( service )();\n\tconst socialLinkName = getNameBySite( service );\n\n\t// When new social icon is added link sheet is opened automatically.\n\tuseEffect( () => {\n\t\tif ( isSelected && ! url ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! url ) {\n\t\t\tsetHasUrl( false );\n\t\t\tanimatedValue.setValue( 0 );\n\t\t} else if ( url ) {\n\t\t\tanimateColors();\n\t\t}\n\t}, [ url ] );\n\n\tconst interpolationColors = {\n\t\tbackgroundColor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [\n\t\t\t\tinactiveIcon.backgroundColor,\n\t\t\t\tactiveIcon.backgroundColor,\n\t\t\t],\n\t\t} ),\n\t\tcolor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [ inactiveIcon.color, activeIcon.color ],\n\t\t} ),\n\t\tstroke: '',\n\t};\n\n\tconst { backgroundColor, color, stroke } = hasUrl\n\t\t? activeIcon\n\t\t: interpolationColors;\n\n\tfunction animateColors() {\n\t\tAnimated.sequence( [\n\t\t\tAnimated.delay( ANIMATION_DELAY ),\n\t\t\tAnimated.timing( animatedValue, {\n\t\t\t\ttoValue: 1,\n\t\t\t\tduration: ANIMATION_DURATION,\n\t\t\t\teasing: Easing.circle,\n\t\t\t\tuseNativeDriver: false,\n\t\t\t} ),\n\t\t] ).start( () => setHasUrl( true ) );\n\t}\n\n\tconst onCloseSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( false );\n\t}, [] );\n\n\tconst onOpenSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( true );\n\t}, [] );\n\n\tconst onEmptyURL = useCallback( () => {\n\t\tanimatedValue.setValue( 0 );\n\t\tsetHasUrl( false );\n\t}, [ animatedValue ] );\n\n\tfunction onIconPress() {\n\t\tif ( isSelected ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t} else {\n\t\t\tonFocus();\n\t\t}\n\t}\n\n\tconst accessibilityHint = url\n\t\t? sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has URL set' ),\n\t\t\t\tsocialLinkName\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has no URL set' ),\n\t\t\t\tsocialLinkName\n\t\t );\n\n\treturn (\n\t\t<View style={ styles.container }>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t\t\t\t\t__( 'Add link to %s' ),\n\t\t\t\t\t\t\t\t\tsocialLinkName\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onOpenSettingsSheet }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<LinkSettingsNavigation\n\t\t\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\t\t\turl={ attributes.url }\n\t\t\t\t\t\tlabel={ attributes.label }\n\t\t\t\t\t\trel={ attributes.rel }\n\t\t\t\t\t\tonEmptyURL={ onEmptyURL }\n\t\t\t\t\t\tonClose={ onCloseSettingsSheet }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\t\t\twithBottomSheet\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ onIconPress }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityLabel={ sprintf(\n\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t__( '%s social icon' ),\n\t\t\t\t\tsocialLinkName\n\t\t\t\t) }\n\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t>\n\t\t\t\t<Animated.View\n\t\t\t\t\tstyle={ [ styles.iconContainer, { backgroundColor } ] }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tanimated\n\t\t\t\t\t\ticon={ IconComponent }\n\t\t\t\t\t\tstyle={ { stroke, color } }\n\t\t\t\t\t/>\n\t\t\t\t</Animated.View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\n\t\tconst block = getBlock( clientId );\n\t\tconst name = block?.name.substring( 17 );\n\n\t\treturn {\n\t\t\tname,\n\t\t};\n\t} ),\n] )( SocialLinkEdit );\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["View","Animated","Easing","TouchableWithoutFeedback","BlockControls","store","blockEditorStore","useEffect","useState","useRef","useCallback","ToolbarGroup","ToolbarButton","LinkSettingsNavigation","compose","usePreferredColorSchemeStyle","__","sprintf","link","Icon","withSelect","getIconBySite","getNameBySite","styles","DEFAULT_ACTIVE_ICON_STYLES","backgroundColor","color","DEFAULT_INACTIVE_ICON_STYLES","ANIMATION_DELAY","ANIMATION_DURATION","linkSettingsOptions","url","label","placeholder","autoFocus","linkLabel","footer","SocialLinkEdit","attributes","setAttributes","isSelected","onFocus","name","service","isLinkSheetVisible","setIsLinkSheetVisible","hasUrl","setHasUrl","activeIcon","inactiveIcon","inactiveIconDark","animatedValue","Value","current","IconComponent","socialLinkName","setValue","animateColors","interpolationColors","interpolate","inputRange","outputRange","stroke","sequence","delay","timing","toValue","duration","easing","circle","useNativeDriver","start","onCloseSettingsSheet","onOpenSettingsSheet","onEmptyURL","onIconPress","accessibilityHint","createElement","Fragment","title","icon","onClick","isActive","isVisible","rel","onClose","options","withBottomSheet","onPress","accessibilityRole","accessibilityLabel","style","iconContainer","animated","select","clientId","getBlock","block","substring"],"sources":["@wordpress/block-library/src/social-link/edit.native.js"],"sourcesContent":["/**\n * External dependencies\n */\nimport { View, Animated, Easing, TouchableWithoutFeedback } from 'react-native';\n\n/**\n * WordPress dependencies\n */\nimport {\n\tBlockControls,\n\tstore as blockEditorStore,\n} from '@wordpress/block-editor';\nimport { useEffect, useState, useRef, useCallback } from '@wordpress/element';\nimport {\n\tToolbarGroup,\n\tToolbarButton,\n\tLinkSettingsNavigation,\n} from '@wordpress/components';\nimport { compose, usePreferredColorSchemeStyle } from '@wordpress/compose';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { link, Icon } from '@wordpress/icons';\nimport { withSelect } from '@wordpress/data';\n/**\n * Internal dependencies\n */\nimport { getIconBySite, getNameBySite } from './social-list';\nimport styles from './editor.scss';\n\nconst DEFAULT_ACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#f0f0f0',\n\tcolor: '#444',\n};\nconst DEFAULT_INACTIVE_ICON_STYLES = {\n\tbackgroundColor: '#0000003f',\n\tcolor: '#fff',\n};\nconst ANIMATION_DELAY = 300;\nconst ANIMATION_DURATION = 400;\n\nconst linkSettingsOptions = {\n\turl: {\n\t\tlabel: __( 'URL' ),\n\t\tplaceholder: __( 'Add URL' ),\n\t\tautoFocus: true,\n\t},\n\tlinkLabel: {\n\t\tlabel: __( 'Link label' ),\n\t\tplaceholder: __( 'None' ),\n\t},\n\tfooter: {\n\t\tlabel: __( 'Briefly describe the link to help screen reader user' ),\n\t},\n};\n\nconst SocialLinkEdit = ( {\n\tattributes,\n\tsetAttributes,\n\tisSelected,\n\tonFocus,\n\tname,\n} ) => {\n\tconst { url, service = name } = attributes;\n\tconst [ isLinkSheetVisible, setIsLinkSheetVisible ] = useState( false );\n\tconst [ hasUrl, setHasUrl ] = useState( !! url );\n\tconst activeIcon =\n\t\tstyles[ `wp-social-link-${ service }` ] ||\n\t\tstyles[ `wp-social-link` ] ||\n\t\tDEFAULT_ACTIVE_ICON_STYLES;\n\tconst inactiveIcon =\n\t\tusePreferredColorSchemeStyle(\n\t\t\tstyles.inactiveIcon,\n\t\t\tstyles.inactiveIconDark\n\t\t) || DEFAULT_INACTIVE_ICON_STYLES;\n\n\tconst animatedValue = useRef( new Animated.Value( 0 ) ).current;\n\n\tconst IconComponent = getIconBySite( service )();\n\tconst socialLinkName = getNameBySite( service );\n\n\t// When new social icon is added link sheet is opened automatically.\n\tuseEffect( () => {\n\t\tif ( isSelected && ! url ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t}\n\t}, [] );\n\n\tuseEffect( () => {\n\t\tif ( ! url ) {\n\t\t\tsetHasUrl( false );\n\t\t\tanimatedValue.setValue( 0 );\n\t\t} else if ( url ) {\n\t\t\tanimateColors();\n\t\t}\n\t}, [ url ] );\n\n\tconst interpolationColors = {\n\t\tbackgroundColor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [\n\t\t\t\tinactiveIcon.backgroundColor,\n\t\t\t\tactiveIcon.backgroundColor,\n\t\t\t],\n\t\t} ),\n\t\tcolor: animatedValue.interpolate( {\n\t\t\tinputRange: [ 0, 1 ],\n\t\t\toutputRange: [ inactiveIcon.color, activeIcon.color ],\n\t\t} ),\n\t\tstroke: '',\n\t};\n\n\tconst { backgroundColor, color, stroke } = hasUrl\n\t\t? activeIcon\n\t\t: interpolationColors;\n\n\tfunction animateColors() {\n\t\tAnimated.sequence( [\n\t\t\tAnimated.delay( ANIMATION_DELAY ),\n\t\t\tAnimated.timing( animatedValue, {\n\t\t\t\ttoValue: 1,\n\t\t\t\tduration: ANIMATION_DURATION,\n\t\t\t\teasing: Easing.circle,\n\t\t\t\tuseNativeDriver: false,\n\t\t\t} ),\n\t\t] ).start( () => setHasUrl( true ) );\n\t}\n\n\tconst onCloseSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( false );\n\t}, [] );\n\n\tconst onOpenSettingsSheet = useCallback( () => {\n\t\tsetIsLinkSheetVisible( true );\n\t}, [] );\n\n\tconst onEmptyURL = useCallback( () => {\n\t\tanimatedValue.setValue( 0 );\n\t\tsetHasUrl( false );\n\t}, [ animatedValue ] );\n\n\tfunction onIconPress() {\n\t\tif ( isSelected ) {\n\t\t\tsetIsLinkSheetVisible( true );\n\t\t} else {\n\t\t\tonFocus();\n\t\t}\n\t}\n\n\tconst accessibilityHint = url\n\t\t? sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has URL set' ),\n\t\t\t\tsocialLinkName\n\t\t )\n\t\t: sprintf(\n\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t__( '%s has no URL set' ),\n\t\t\t\tsocialLinkName\n\t\t );\n\n\treturn (\n\t\t<View>\n\t\t\t{ isSelected && (\n\t\t\t\t<>\n\t\t\t\t\t<BlockControls>\n\t\t\t\t\t\t<ToolbarGroup>\n\t\t\t\t\t\t\t<ToolbarButton\n\t\t\t\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t\t\t\t\t__( 'Add link to %s' ),\n\t\t\t\t\t\t\t\t\tsocialLinkName\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\ticon={ link }\n\t\t\t\t\t\t\t\tonClick={ onOpenSettingsSheet }\n\t\t\t\t\t\t\t\tisActive={ url }\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</ToolbarGroup>\n\t\t\t\t\t</BlockControls>\n\t\t\t\t\t<LinkSettingsNavigation\n\t\t\t\t\t\tisVisible={ isLinkSheetVisible }\n\t\t\t\t\t\turl={ attributes.url }\n\t\t\t\t\t\tlabel={ attributes.label }\n\t\t\t\t\t\trel={ attributes.rel }\n\t\t\t\t\t\tonEmptyURL={ onEmptyURL }\n\t\t\t\t\t\tonClose={ onCloseSettingsSheet }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\toptions={ linkSettingsOptions }\n\t\t\t\t\t\twithBottomSheet\n\t\t\t\t\t/>\n\t\t\t\t</>\n\t\t\t) }\n\n\t\t\t<TouchableWithoutFeedback\n\t\t\t\tonPress={ onIconPress }\n\t\t\t\taccessibilityRole={ 'button' }\n\t\t\t\taccessibilityLabel={ sprintf(\n\t\t\t\t\t// translators: %s: social link name e.g: \"Instagram\".\n\t\t\t\t\t__( '%s social icon' ),\n\t\t\t\t\tsocialLinkName\n\t\t\t\t) }\n\t\t\t\taccessibilityHint={ accessibilityHint }\n\t\t\t>\n\t\t\t\t<Animated.View\n\t\t\t\t\tstyle={ [ styles.iconContainer, { backgroundColor } ] }\n\t\t\t\t>\n\t\t\t\t\t<Icon\n\t\t\t\t\t\tanimated\n\t\t\t\t\t\ticon={ IconComponent }\n\t\t\t\t\t\tstyle={ { stroke, color } }\n\t\t\t\t\t/>\n\t\t\t\t</Animated.View>\n\t\t\t</TouchableWithoutFeedback>\n\t\t</View>\n\t);\n};\n\nexport default compose( [\n\twithSelect( ( select, { clientId } ) => {\n\t\tconst { getBlock } = select( blockEditorStore );\n\n\t\tconst block = getBlock( clientId );\n\t\tconst name = block?.name.substring( 17 );\n\n\t\treturn {\n\t\t\tname,\n\t\t};\n\t} ),\n] )( SocialLinkEdit );\n"],"mappings":"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"}
|
|
@@ -21,8 +21,7 @@ import { useAlternativeBlockPatterns, useAlternativeTemplateParts, useTemplatePa
|
|
|
21
21
|
export default function TemplatePartEdit({
|
|
22
22
|
attributes,
|
|
23
23
|
setAttributes,
|
|
24
|
-
clientId
|
|
25
|
-
isSelected
|
|
24
|
+
clientId
|
|
26
25
|
}) {
|
|
27
26
|
const {
|
|
28
27
|
slug,
|
|
@@ -71,10 +70,7 @@ export default function TemplatePartEdit({
|
|
|
71
70
|
const isPlaceholder = !slug;
|
|
72
71
|
const isEntityAvailable = !isPlaceholder && !isMissing && isResolved;
|
|
73
72
|
const TagName = tagName || areaObject.tagName;
|
|
74
|
-
|
|
75
|
-
// The `isSelected` check ensures the `BlockSettingsMenuControls` fill
|
|
76
|
-
// doesn't render multiple times. The block controls has similar internal check.
|
|
77
|
-
const canReplace = isSelected && isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer');
|
|
73
|
+
const canReplace = isEntityAvailable && hasReplacements && (area === 'header' || area === 'footer');
|
|
78
74
|
|
|
79
75
|
// We don't want to render a missing state if we have any inner blocks.
|
|
80
76
|
// A new template part is automatically created if we have any inner blocks but no entity.
|
|
@@ -106,16 +102,27 @@ export default function TemplatePartEdit({
|
|
|
106
102
|
clientId: clientId,
|
|
107
103
|
setAttributes: setAttributes,
|
|
108
104
|
onOpenSelectionModal: () => setIsTemplatePartSelectionOpen(true)
|
|
109
|
-
})), canReplace && createElement(BlockSettingsMenuControls, null, (
|
|
110
|
-
|
|
111
|
-
|
|
105
|
+
})), canReplace && createElement(BlockSettingsMenuControls, null, ({
|
|
106
|
+
selectedClientIds
|
|
107
|
+
}) => {
|
|
108
|
+
// Only enable for single selection that matches the current block.
|
|
109
|
+
// Ensures menu item doesn't render multiple times.
|
|
110
|
+
if (!(selectedClientIds.length === 1 && clientId === selectedClientIds[0])) {
|
|
111
|
+
return null;
|
|
112
112
|
}
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
113
|
+
return createElement(MenuItem, {
|
|
114
|
+
onClick: () => {
|
|
115
|
+
setIsTemplatePartSelectionOpen(true);
|
|
116
|
+
},
|
|
117
|
+
"aria-expanded": isTemplatePartSelectionOpen,
|
|
118
|
+
"aria-haspopup": "dialog"
|
|
119
|
+
}, createInterpolateElement(__('Replace <BlockTitle />'), {
|
|
120
|
+
BlockTitle: createElement(BlockTitle, {
|
|
121
|
+
clientId: clientId,
|
|
122
|
+
maximumLength: 25
|
|
123
|
+
})
|
|
124
|
+
}));
|
|
125
|
+
}), isEntityAvailable && createElement(TemplatePartInnerBlocks, {
|
|
119
126
|
tagName: TagName,
|
|
120
127
|
blockProps: blockProps,
|
|
121
128
|
postId: templatePartId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["useSelect","BlockSettingsMenuControls","BlockTitle","useBlockProps","Warning","store","blockEditorStore","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","Spinner","Modal","MenuItem","__","sprintf","coreStore","useState","createInterpolateElement","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","isSelected","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","Object","keys","length","templateParts","blockPatterns","hasReplacements","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","createElement","Fragment","uniqueId","defaultWrapper","hasInnerBlocks","onOpenSelectionModal","onClick","maximumLength","postId","overlayClassName","title","label","toLowerCase","onRequestClose","isFullScreen","onClose"],"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n\tisSelected,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing:\n\t\t\t\t\thasResolvedEntity &&\n\t\t\t\t\t( ! entityRecord ||\n\t\t\t\t\t\tObject.keys( entityRecord ).length === 0 ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, attributes.area, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\t// The `isSelected` check ensures the `BlockSettingsMenuControls` fill\n\t// doesn't render multiple times. The block controls has similar internal check.\n\tconst canReplace =\n\t\tisSelected &&\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...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</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ () => (\n\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t) }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t\tisFullScreen={ true }\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["useSelect","BlockSettingsMenuControls","BlockTitle","useBlockProps","Warning","store","blockEditorStore","__experimentalRecursionProvider","RecursionProvider","__experimentalUseHasRecursion","useHasRecursion","Spinner","Modal","MenuItem","__","sprintf","coreStore","useState","createInterpolateElement","TemplatePartPlaceholder","TemplatePartSelectionModal","TemplatePartAdvancedControls","TemplatePartInnerBlocks","createTemplatePartId","useAlternativeBlockPatterns","useAlternativeTemplateParts","useTemplatePartArea","TemplatePartEdit","attributes","setAttributes","clientId","slug","theme","tagName","layout","templatePartId","hasAlreadyRendered","isTemplatePartSelectionOpen","setIsTemplatePartSelectionOpen","isResolved","innerBlocks","isMissing","area","select","getEditedEntityRecord","hasFinishedResolution","getBlocks","getEntityArgs","entityRecord","_area","hasResolvedEntity","Object","keys","length","templateParts","blockPatterns","hasReplacements","areaObject","blockProps","isPlaceholder","isEntityAvailable","TagName","canReplace","createElement","Fragment","uniqueId","defaultWrapper","hasInnerBlocks","onOpenSelectionModal","selectedClientIds","onClick","maximumLength","postId","overlayClassName","title","label","toLowerCase","onRequestClose","isFullScreen","onClose"],"sources":["@wordpress/block-library/src/template-part/edit/index.js"],"sourcesContent":["/**\n * WordPress dependencies\n */\nimport { useSelect } from '@wordpress/data';\nimport {\n\tBlockSettingsMenuControls,\n\tBlockTitle,\n\tuseBlockProps,\n\tWarning,\n\tstore as blockEditorStore,\n\t__experimentalRecursionProvider as RecursionProvider,\n\t__experimentalUseHasRecursion as useHasRecursion,\n} from '@wordpress/block-editor';\nimport { Spinner, Modal, MenuItem } from '@wordpress/components';\nimport { __, sprintf } from '@wordpress/i18n';\nimport { store as coreStore } from '@wordpress/core-data';\nimport { useState, createInterpolateElement } from '@wordpress/element';\n\n/**\n * Internal dependencies\n */\nimport TemplatePartPlaceholder from './placeholder';\nimport TemplatePartSelectionModal from './selection-modal';\nimport { TemplatePartAdvancedControls } from './advanced-controls';\nimport TemplatePartInnerBlocks from './inner-blocks';\nimport { createTemplatePartId } from './utils/create-template-part-id';\nimport {\n\tuseAlternativeBlockPatterns,\n\tuseAlternativeTemplateParts,\n\tuseTemplatePartArea,\n} from './utils/hooks';\n\nexport default function TemplatePartEdit( {\n\tattributes,\n\tsetAttributes,\n\tclientId,\n} ) {\n\tconst { slug, theme, tagName, layout = {} } = attributes;\n\tconst templatePartId = createTemplatePartId( theme, slug );\n\tconst hasAlreadyRendered = useHasRecursion( templatePartId );\n\tconst [ isTemplatePartSelectionOpen, setIsTemplatePartSelectionOpen ] =\n\t\tuseState( false );\n\n\t// Set the postId block attribute if it did not exist,\n\t// but wait until the inner blocks have loaded to allow\n\t// new edits to trigger this.\n\tconst { isResolved, innerBlocks, isMissing, area } = useSelect(\n\t\t( select ) => {\n\t\t\tconst { getEditedEntityRecord, hasFinishedResolution } =\n\t\t\t\tselect( coreStore );\n\t\t\tconst { getBlocks } = select( blockEditorStore );\n\n\t\t\tconst getEntityArgs = [\n\t\t\t\t'postType',\n\t\t\t\t'wp_template_part',\n\t\t\t\ttemplatePartId,\n\t\t\t];\n\t\t\tconst entityRecord = templatePartId\n\t\t\t\t? getEditedEntityRecord( ...getEntityArgs )\n\t\t\t\t: null;\n\t\t\tconst _area = entityRecord?.area || attributes.area;\n\t\t\tconst hasResolvedEntity = templatePartId\n\t\t\t\t? hasFinishedResolution(\n\t\t\t\t\t\t'getEditedEntityRecord',\n\t\t\t\t\t\tgetEntityArgs\n\t\t\t\t )\n\t\t\t\t: false;\n\n\t\t\treturn {\n\t\t\t\tinnerBlocks: getBlocks( clientId ),\n\t\t\t\tisResolved: hasResolvedEntity,\n\t\t\t\tisMissing:\n\t\t\t\t\thasResolvedEntity &&\n\t\t\t\t\t( ! entityRecord ||\n\t\t\t\t\t\tObject.keys( entityRecord ).length === 0 ),\n\t\t\t\tarea: _area,\n\t\t\t};\n\t\t},\n\t\t[ templatePartId, attributes.area, clientId ]\n\t);\n\tconst { templateParts } = useAlternativeTemplateParts(\n\t\tarea,\n\t\ttemplatePartId\n\t);\n\tconst blockPatterns = useAlternativeBlockPatterns( area, clientId );\n\tconst hasReplacements = !! templateParts.length || !! blockPatterns.length;\n\tconst areaObject = useTemplatePartArea( area );\n\tconst blockProps = useBlockProps();\n\tconst isPlaceholder = ! slug;\n\tconst isEntityAvailable = ! isPlaceholder && ! isMissing && isResolved;\n\tconst TagName = tagName || areaObject.tagName;\n\n\tconst canReplace =\n\t\tisEntityAvailable &&\n\t\thasReplacements &&\n\t\t( area === 'header' || area === 'footer' );\n\n\t// We don't want to render a missing state if we have any inner blocks.\n\t// A new template part is automatically created if we have any inner blocks but no entity.\n\tif (\n\t\tinnerBlocks.length === 0 &&\n\t\t( ( slug && ! theme ) || ( slug && isMissing ) )\n\t) {\n\t\treturn (\n\t\t\t<TagName { ...blockProps }>\n\t\t\t\t<Warning>\n\t\t\t\t\t{ sprintf(\n\t\t\t\t\t\t/* translators: %s: Template part slug */\n\t\t\t\t\t\t__(\n\t\t\t\t\t\t\t'Template part has been deleted or is unavailable: %s'\n\t\t\t\t\t\t),\n\t\t\t\t\t\tslug\n\t\t\t\t\t) }\n\t\t\t\t</Warning>\n\t\t\t</TagName>\n\t\t);\n\t}\n\n\tif ( isEntityAvailable && hasAlreadyRendered ) {\n\t\treturn (\n\t\t\t<TagName { ...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</TagName>\n\t\t);\n\t}\n\n\treturn (\n\t\t<>\n\t\t\t<RecursionProvider uniqueId={ templatePartId }>\n\t\t\t\t<TemplatePartAdvancedControls\n\t\t\t\t\ttagName={ tagName }\n\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\tisEntityAvailable={ isEntityAvailable }\n\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\tdefaultWrapper={ areaObject.tagName }\n\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t/>\n\t\t\t\t{ isPlaceholder && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<TemplatePartPlaceholder\n\t\t\t\t\t\t\tarea={ attributes.area }\n\t\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\t\tonOpenSelectionModal={ () =>\n\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true )\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t/>\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t\t{ canReplace && (\n\t\t\t\t\t<BlockSettingsMenuControls>\n\t\t\t\t\t\t{ ( { selectedClientIds } ) => {\n\t\t\t\t\t\t\t// Only enable for single selection that matches the current block.\n\t\t\t\t\t\t\t// Ensures menu item doesn't render multiple times.\n\t\t\t\t\t\t\tif (\n\t\t\t\t\t\t\t\t! (\n\t\t\t\t\t\t\t\t\tselectedClientIds.length === 1 &&\n\t\t\t\t\t\t\t\t\tclientId === selectedClientIds[ 0 ]\n\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t) {\n\t\t\t\t\t\t\t\treturn null;\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t<MenuItem\n\t\t\t\t\t\t\t\t\tonClick={ () => {\n\t\t\t\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( true );\n\t\t\t\t\t\t\t\t\t} }\n\t\t\t\t\t\t\t\t\taria-expanded={\n\t\t\t\t\t\t\t\t\t\tisTemplatePartSelectionOpen\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\taria-haspopup=\"dialog\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t{ createInterpolateElement(\n\t\t\t\t\t\t\t\t\t\t__( 'Replace <BlockTitle />' ),\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tBlockTitle: (\n\t\t\t\t\t\t\t\t\t\t\t\t<BlockTitle\n\t\t\t\t\t\t\t\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\t\t\t\t\t\t\t\tmaximumLength={ 25 }\n\t\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t\t),\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t) }\n\t\t\t\t\t\t\t\t</MenuItem>\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t} }\n\t\t\t\t\t</BlockSettingsMenuControls>\n\t\t\t\t) }\n\t\t\t\t{ isEntityAvailable && (\n\t\t\t\t\t<TemplatePartInnerBlocks\n\t\t\t\t\t\ttagName={ TagName }\n\t\t\t\t\t\tblockProps={ blockProps }\n\t\t\t\t\t\tpostId={ templatePartId }\n\t\t\t\t\t\thasInnerBlocks={ innerBlocks.length > 0 }\n\t\t\t\t\t\tlayout={ layout }\n\t\t\t\t\t/>\n\t\t\t\t) }\n\t\t\t\t{ ! isPlaceholder && ! isResolved && (\n\t\t\t\t\t<TagName { ...blockProps }>\n\t\t\t\t\t\t<Spinner />\n\t\t\t\t\t</TagName>\n\t\t\t\t) }\n\t\t\t</RecursionProvider>\n\t\t\t{ isTemplatePartSelectionOpen && (\n\t\t\t\t<Modal\n\t\t\t\t\toverlayClassName=\"block-editor-template-part__selection-modal\"\n\t\t\t\t\ttitle={ sprintf(\n\t\t\t\t\t\t// Translators: %s as template part area title (\"Header\", \"Footer\", etc.).\n\t\t\t\t\t\t__( 'Choose a %s' ),\n\t\t\t\t\t\tareaObject.label.toLowerCase()\n\t\t\t\t\t) }\n\t\t\t\t\tonRequestClose={ () =>\n\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t}\n\t\t\t\t\tisFullScreen={ true }\n\t\t\t\t>\n\t\t\t\t\t<TemplatePartSelectionModal\n\t\t\t\t\t\ttemplatePartId={ templatePartId }\n\t\t\t\t\t\tclientId={ clientId }\n\t\t\t\t\t\tarea={ area }\n\t\t\t\t\t\tsetAttributes={ setAttributes }\n\t\t\t\t\t\tonClose={ () =>\n\t\t\t\t\t\t\tsetIsTemplatePartSelectionOpen( false )\n\t\t\t\t\t\t}\n\t\t\t\t\t/>\n\t\t\t\t</Modal>\n\t\t\t) }\n\t\t</>\n\t);\n}\n"],"mappings":";AAAA;AACA;AACA;AACA,SAASA,SAAS,QAAQ,iBAAiB;AAC3C,SACCC,yBAAyB,EACzBC,UAAU,EACVC,aAAa,EACbC,OAAO,EACPC,KAAK,IAAIC,gBAAgB,EACzBC,+BAA+B,IAAIC,iBAAiB,EACpDC,6BAA6B,IAAIC,eAAe,QAC1C,yBAAyB;AAChC,SAASC,OAAO,EAAEC,KAAK,EAAEC,QAAQ,QAAQ,uBAAuB;AAChE,SAASC,EAAE,EAAEC,OAAO,QAAQ,iBAAiB;AAC7C,SAASV,KAAK,IAAIW,SAAS,QAAQ,sBAAsB;AACzD,SAASC,QAAQ,EAAEC,wBAAwB,QAAQ,oBAAoB;;AAEvE;AACA;AACA;AACA,OAAOC,uBAAuB,MAAM,eAAe;AACnD,OAAOC,0BAA0B,MAAM,mBAAmB;AAC1D,SAASC,4BAA4B,QAAQ,qBAAqB;AAClE,OAAOC,uBAAuB,MAAM,gBAAgB;AACpD,SAASC,oBAAoB,QAAQ,iCAAiC;AACtE,SACCC,2BAA2B,EAC3BC,2BAA2B,EAC3BC,mBAAmB,QACb,eAAe;AAEtB,eAAe,SAASC,gBAAgBA,CAAE;EACzCC,UAAU;EACVC,aAAa;EACbC;AACD,CAAC,EAAG;EACH,MAAM;IAAEC,IAAI;IAAEC,KAAK;IAAEC,OAAO;IAAEC,MAAM,GAAG,CAAC;EAAE,CAAC,GAAGN,UAAU;EACxD,MAAMO,cAAc,GAAGZ,oBAAoB,CAAES,KAAK,EAAED,IAAK,CAAC;EAC1D,MAAMK,kBAAkB,GAAG1B,eAAe,CAAEyB,cAAe,CAAC;EAC5D,MAAM,CAAEE,2BAA2B,EAAEC,8BAA8B,CAAE,GACpErB,QAAQ,CAAE,KAAM,CAAC;;EAElB;EACA;EACA;EACA,MAAM;IAAEsB,UAAU;IAAEC,WAAW;IAAEC,SAAS;IAAEC;EAAK,CAAC,GAAG1C,SAAS,CAC3D2C,MAAM,IAAM;IACb,MAAM;MAAEC,qBAAqB;MAAEC;IAAsB,CAAC,GACrDF,MAAM,CAAE3B,SAAU,CAAC;IACpB,MAAM;MAAE8B;IAAU,CAAC,GAAGH,MAAM,CAAErC,gBAAiB,CAAC;IAEhD,MAAMyC,aAAa,GAAG,CACrB,UAAU,EACV,kBAAkB,EAClBZ,cAAc,CACd;IACD,MAAMa,YAAY,GAAGb,cAAc,GAChCS,qBAAqB,CAAE,GAAGG,aAAc,CAAC,GACzC,IAAI;IACP,MAAME,KAAK,GAAGD,YAAY,EAAEN,IAAI,IAAId,UAAU,CAACc,IAAI;IACnD,MAAMQ,iBAAiB,GAAGf,cAAc,GACrCU,qBAAqB,CACrB,uBAAuB,EACvBE,aACA,CAAC,GACD,KAAK;IAER,OAAO;MACNP,WAAW,EAAEM,SAAS,CAAEhB,QAAS,CAAC;MAClCS,UAAU,EAAEW,iBAAiB;MAC7BT,SAAS,EACRS,iBAAiB,KACf,CAAEF,YAAY,IACfG,MAAM,CAACC,IAAI,CAAEJ,YAAa,CAAC,CAACK,MAAM,KAAK,CAAC,CAAE;MAC5CX,IAAI,EAAEO;IACP,CAAC;EACF,CAAC,EACD,CAAEd,cAAc,EAAEP,UAAU,CAACc,IAAI,EAAEZ,QAAQ,CAC5C,CAAC;EACD,MAAM;IAAEwB;EAAc,CAAC,GAAG7B,2BAA2B,CACpDiB,IAAI,EACJP,cACD,CAAC;EACD,MAAMoB,aAAa,GAAG/B,2BAA2B,CAAEkB,IAAI,EAAEZ,QAAS,CAAC;EACnE,MAAM0B,eAAe,GAAG,CAAC,CAAEF,aAAa,CAACD,MAAM,IAAI,CAAC,CAAEE,aAAa,CAACF,MAAM;EAC1E,MAAMI,UAAU,GAAG/B,mBAAmB,CAAEgB,IAAK,CAAC;EAC9C,MAAMgB,UAAU,GAAGvD,aAAa,CAAC,CAAC;EAClC,MAAMwD,aAAa,GAAG,CAAE5B,IAAI;EAC5B,MAAM6B,iBAAiB,GAAG,CAAED,aAAa,IAAI,CAAElB,SAAS,IAAIF,UAAU;EACtE,MAAMsB,OAAO,GAAG5B,OAAO,IAAIwB,UAAU,CAACxB,OAAO;EAE7C,MAAM6B,UAAU,GACfF,iBAAiB,IACjBJ,eAAe,KACbd,IAAI,KAAK,QAAQ,IAAIA,IAAI,KAAK,QAAQ,CAAE;;EAE3C;EACA;EACA,IACCF,WAAW,CAACa,MAAM,KAAK,CAAC,KACpBtB,IAAI,IAAI,CAAEC,KAAK,IAAQD,IAAI,IAAIU,SAAW,CAAE,EAC/C;IACD,OACCsB,aAAA,CAACF,OAAO;MAAA,GAAMH;IAAU,GACvBK,aAAA,CAAC3D,OAAO,QACLW,OAAO,EACR;IACAD,EAAE,CACD,sDACD,CAAC,EACDiB,IACD,CACQ,CACD,CAAC;EAEZ;EAEA,IAAK6B,iBAAiB,IAAIxB,kBAAkB,EAAG;IAC9C,OACC2B,aAAA,CAACF,OAAO;MAAA,GAAMH;IAAU,GACvBK,aAAA,CAAC3D,OAAO,QACLU,EAAE,CAAE,yCAA0C,CACxC,CACD,CAAC;EAEZ;EAEA,OACCiD,aAAA,CAAAC,QAAA,QACCD,aAAA,CAACvD,iBAAiB;IAACyD,QAAQ,EAAG9B;EAAgB,GAC7C4B,aAAA,CAAC1C,4BAA4B;IAC5BY,OAAO,EAAGA,OAAS;IACnBJ,aAAa,EAAGA,aAAe;IAC/B+B,iBAAiB,EAAGA,iBAAmB;IACvCzB,cAAc,EAAGA,cAAgB;IACjC+B,cAAc,EAAGT,UAAU,CAACxB,OAAS;IACrCkC,cAAc,EAAG3B,WAAW,CAACa,MAAM,GAAG;EAAG,CACzC,CAAC,EACAM,aAAa,IACdI,aAAA,CAACF,OAAO;IAAA,GAAMH;EAAU,GACvBK,aAAA,CAAC5C,uBAAuB;IACvBuB,IAAI,EAAGd,UAAU,CAACc,IAAM;IACxBP,cAAc,EAAGA,cAAgB;IACjCL,QAAQ,EAAGA,QAAU;IACrBD,aAAa,EAAGA,aAAe;IAC/BuC,oBAAoB,EAAGA,CAAA,KACtB9B,8BAA8B,CAAE,IAAK;EACrC,CACD,CACO,CACT,EACCwB,UAAU,IACXC,aAAA,CAAC9D,yBAAyB,QACvB,CAAE;IAAEoE;EAAkB,CAAC,KAAM;IAC9B;IACA;IACA,IACC,EACCA,iBAAiB,CAAChB,MAAM,KAAK,CAAC,IAC9BvB,QAAQ,KAAKuC,iBAAiB,CAAE,CAAC,CAAE,CACnC,EACA;MACD,OAAO,IAAI;IACZ;IAEA,OACCN,aAAA,CAAClD,QAAQ;MACRyD,OAAO,EAAGA,CAAA,KAAM;QACfhC,8BAA8B,CAAE,IAAK,CAAC;MACvC,CAAG;MACH,iBACCD,2BACA;MACD,iBAAc;IAAQ,GAEpBnB,wBAAwB,CACzBJ,EAAE,CAAE,wBAAyB,CAAC,EAC9B;MACCZ,UAAU,EACT6D,aAAA,CAAC7D,UAAU;QACV4B,QAAQ,EAAGA,QAAU;QACrByC,aAAa,EAAG;MAAI,CACpB;IAEH,CACD,CACS,CAAC;EAEb,CAC0B,CAC3B,EACCX,iBAAiB,IAClBG,aAAA,CAACzC,uBAAuB;IACvBW,OAAO,EAAG4B,OAAS;IACnBH,UAAU,EAAGA,UAAY;IACzBc,MAAM,EAAGrC,cAAgB;IACzBgC,cAAc,EAAG3B,WAAW,CAACa,MAAM,GAAG,CAAG;IACzCnB,MAAM,EAAGA;EAAQ,CACjB,CACD,EACC,CAAEyB,aAAa,IAAI,CAAEpB,UAAU,IAChCwB,aAAA,CAACF,OAAO;IAAA,GAAMH;EAAU,GACvBK,aAAA,CAACpD,OAAO,MAAE,CACF,CAEQ,CAAC,EAClB0B,2BAA2B,IAC5B0B,aAAA,CAACnD,KAAK;IACL6D,gBAAgB,EAAC,6CAA6C;IAC9DC,KAAK,EAAG3D,OAAO;IACd;IACAD,EAAE,CAAE,aAAc,CAAC,EACnB2C,UAAU,CAACkB,KAAK,CAACC,WAAW,CAAC,CAC9B,CAAG;IACHC,cAAc,EAAGA,CAAA,KAChBvC,8BAA8B,CAAE,KAAM,CACtC;IACDwC,YAAY,EAAG;EAAM,GAErBf,aAAA,CAAC3C,0BAA0B;IAC1Be,cAAc,EAAGA,cAAgB;IACjCL,QAAQ,EAAGA,QAAU;IACrBY,IAAI,EAAGA,IAAM;IACbb,aAAa,EAAGA,aAAe;IAC/BkD,OAAO,EAAGA,CAAA,KACTzC,8BAA8B,CAAE,KAAM;EACtC,CACD,CACK,CAEP,CAAC;AAEL"}
|
|
@@ -2589,7 +2589,8 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
|
|
|
2589
2589
|
padding-left: 8px;
|
|
2590
2590
|
}
|
|
2591
2591
|
|
|
2592
|
-
.wp-block[data-align=center] > .wp-block-social-links
|
|
2592
|
+
.wp-block[data-align=center] > .wp-block-social-links,
|
|
2593
|
+
.wp-block.wp-block-social-links.aligncenter {
|
|
2593
2594
|
justify-content: center;
|
|
2594
2595
|
}
|
|
2595
2596
|
|
package/build-style/editor.css
CHANGED
|
@@ -2597,7 +2597,8 @@ body.editor-styles-wrapper .wp-block-navigation__responsive-container.is-menu-op
|
|
|
2597
2597
|
padding-right: 8px;
|
|
2598
2598
|
}
|
|
2599
2599
|
|
|
2600
|
-
.wp-block[data-align=center] > .wp-block-social-links
|
|
2600
|
+
.wp-block[data-align=center] > .wp-block-social-links,
|
|
2601
|
+
.wp-block.wp-block-social-links.aligncenter {
|
|
2601
2602
|
justify-content: center;
|
|
2602
2603
|
}
|
|
2603
2604
|
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a hex value into the rgb equivalent.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
5
|
+
* @return {string} comma separated rgb values
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Colors
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Breakpoints & Media Queries
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* SCSS Variables.
|
|
15
|
+
*
|
|
16
|
+
* Please use variables from this sheet to ensure consistency across the UI.
|
|
17
|
+
* Don't add to this sheet unless you're pretty sure the value will be reused in many places.
|
|
18
|
+
* For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Converts a hex value into the rgb equivalent.
|
|
22
|
+
*
|
|
23
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
24
|
+
* @return {string} comma separated rgb values
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Colors
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Fonts & basic variables.
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Grid System.
|
|
34
|
+
* https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* Dimensions.
|
|
38
|
+
*/
|
|
39
|
+
/**
|
|
40
|
+
* Shadows.
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* Editor widths.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Block & Editor UI.
|
|
47
|
+
*/
|
|
48
|
+
/**
|
|
49
|
+
* Block paddings.
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* React Native specific.
|
|
53
|
+
* These variables do not appear to be used anywhere else.
|
|
54
|
+
*/
|
|
55
|
+
/**
|
|
56
|
+
* Converts a hex value into the rgb equivalent.
|
|
57
|
+
*
|
|
58
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
59
|
+
* @return {string} comma separated rgb values
|
|
60
|
+
*/
|
|
61
|
+
/**
|
|
62
|
+
* Long content fade mixin
|
|
63
|
+
*
|
|
64
|
+
* Creates a fading overlay to signify that the content is longer
|
|
65
|
+
* than the space allows.
|
|
66
|
+
*/
|
|
67
|
+
/**
|
|
68
|
+
* Breakpoint mixins
|
|
69
|
+
*/
|
|
70
|
+
/**
|
|
71
|
+
* Focus styles.
|
|
72
|
+
*/
|
|
73
|
+
/**
|
|
74
|
+
* Applies editor left position to the selector passed as argument
|
|
75
|
+
*/
|
|
76
|
+
/**
|
|
77
|
+
* Styles that are reused verbatim in a few places
|
|
78
|
+
*/
|
|
79
|
+
/**
|
|
80
|
+
* Allows users to opt-out of animations via OS-level preferences.
|
|
81
|
+
*/
|
|
82
|
+
/**
|
|
83
|
+
* Reset default styles for JavaScript UI based pages.
|
|
84
|
+
* This is a WP-admin agnostic reset
|
|
85
|
+
*/
|
|
86
|
+
/**
|
|
87
|
+
* Reset the WP Admin page styles for Gutenberg-like pages.
|
|
88
|
+
*/
|
|
89
|
+
.wp-block-query__enhanced-pagination-animation {
|
|
90
|
+
position: fixed;
|
|
91
|
+
top: 0;
|
|
92
|
+
right: 0;
|
|
93
|
+
margin: 0;
|
|
94
|
+
padding: 0;
|
|
95
|
+
width: 100vw;
|
|
96
|
+
max-width: 100vw !important;
|
|
97
|
+
height: 4px;
|
|
98
|
+
background-color: var(--wp--preset--color--primary, #000);
|
|
99
|
+
opacity: 0;
|
|
100
|
+
}
|
|
101
|
+
.wp-block-query__enhanced-pagination-animation.start-animation {
|
|
102
|
+
animation: wp-block-query__enhanced-pagination-start-animation 30s cubic-bezier(0, 1, 0, 1) infinite;
|
|
103
|
+
}
|
|
104
|
+
.wp-block-query__enhanced-pagination-animation.finish-animation {
|
|
105
|
+
animation: wp-block-query__enhanced-pagination-finish-animation 300ms ease-in;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@keyframes wp-block-query__enhanced-pagination-start-animation {
|
|
109
|
+
0% {
|
|
110
|
+
transform: scaleX(0);
|
|
111
|
+
transform-origin: 100% 0%;
|
|
112
|
+
opacity: 1;
|
|
113
|
+
}
|
|
114
|
+
100% {
|
|
115
|
+
transform: scaleX(1);
|
|
116
|
+
transform-origin: 100% 0%;
|
|
117
|
+
opacity: 1;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
@keyframes wp-block-query__enhanced-pagination-finish-animation {
|
|
121
|
+
0% {
|
|
122
|
+
opacity: 1;
|
|
123
|
+
}
|
|
124
|
+
50% {
|
|
125
|
+
opacity: 1;
|
|
126
|
+
}
|
|
127
|
+
100% {
|
|
128
|
+
opacity: 0;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
.wp-block-query__enhanced-pagination-navigation-announce {
|
|
132
|
+
position: absolute;
|
|
133
|
+
clip: rect(0, 0, 0, 0);
|
|
134
|
+
width: 1px;
|
|
135
|
+
height: 1px;
|
|
136
|
+
padding: 0;
|
|
137
|
+
margin: -1px;
|
|
138
|
+
overflow: hidden;
|
|
139
|
+
border: 0;
|
|
140
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a hex value into the rgb equivalent.
|
|
3
|
+
*
|
|
4
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
5
|
+
* @return {string} comma separated rgb values
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Colors
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Breakpoints & Media Queries
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* SCSS Variables.
|
|
15
|
+
*
|
|
16
|
+
* Please use variables from this sheet to ensure consistency across the UI.
|
|
17
|
+
* Don't add to this sheet unless you're pretty sure the value will be reused in many places.
|
|
18
|
+
* For example, don't add rules to this sheet that affect block visuals. It's purely for UI.
|
|
19
|
+
*/
|
|
20
|
+
/**
|
|
21
|
+
* Converts a hex value into the rgb equivalent.
|
|
22
|
+
*
|
|
23
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
24
|
+
* @return {string} comma separated rgb values
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Colors
|
|
28
|
+
*/
|
|
29
|
+
/**
|
|
30
|
+
* Fonts & basic variables.
|
|
31
|
+
*/
|
|
32
|
+
/**
|
|
33
|
+
* Grid System.
|
|
34
|
+
* https://make.wordpress.org/design/2019/10/31/proposal-a-consistent-spacing-system-for-wordpress/
|
|
35
|
+
*/
|
|
36
|
+
/**
|
|
37
|
+
* Dimensions.
|
|
38
|
+
*/
|
|
39
|
+
/**
|
|
40
|
+
* Shadows.
|
|
41
|
+
*/
|
|
42
|
+
/**
|
|
43
|
+
* Editor widths.
|
|
44
|
+
*/
|
|
45
|
+
/**
|
|
46
|
+
* Block & Editor UI.
|
|
47
|
+
*/
|
|
48
|
+
/**
|
|
49
|
+
* Block paddings.
|
|
50
|
+
*/
|
|
51
|
+
/**
|
|
52
|
+
* React Native specific.
|
|
53
|
+
* These variables do not appear to be used anywhere else.
|
|
54
|
+
*/
|
|
55
|
+
/**
|
|
56
|
+
* Converts a hex value into the rgb equivalent.
|
|
57
|
+
*
|
|
58
|
+
* @param {string} hex - the hexadecimal value to convert
|
|
59
|
+
* @return {string} comma separated rgb values
|
|
60
|
+
*/
|
|
61
|
+
/**
|
|
62
|
+
* Long content fade mixin
|
|
63
|
+
*
|
|
64
|
+
* Creates a fading overlay to signify that the content is longer
|
|
65
|
+
* than the space allows.
|
|
66
|
+
*/
|
|
67
|
+
/**
|
|
68
|
+
* Breakpoint mixins
|
|
69
|
+
*/
|
|
70
|
+
/**
|
|
71
|
+
* Focus styles.
|
|
72
|
+
*/
|
|
73
|
+
/**
|
|
74
|
+
* Applies editor left position to the selector passed as argument
|
|
75
|
+
*/
|
|
76
|
+
/**
|
|
77
|
+
* Styles that are reused verbatim in a few places
|
|
78
|
+
*/
|
|
79
|
+
/**
|
|
80
|
+
* Allows users to opt-out of animations via OS-level preferences.
|
|
81
|
+
*/
|
|
82
|
+
/**
|
|
83
|
+
* Reset default styles for JavaScript UI based pages.
|
|
84
|
+
* This is a WP-admin agnostic reset
|
|
85
|
+
*/
|
|
86
|
+
/**
|
|
87
|
+
* Reset the WP Admin page styles for Gutenberg-like pages.
|
|
88
|
+
*/
|
|
89
|
+
.wp-block-query__enhanced-pagination-animation {
|
|
90
|
+
position: fixed;
|
|
91
|
+
top: 0;
|
|
92
|
+
left: 0;
|
|
93
|
+
margin: 0;
|
|
94
|
+
padding: 0;
|
|
95
|
+
width: 100vw;
|
|
96
|
+
max-width: 100vw !important;
|
|
97
|
+
height: 4px;
|
|
98
|
+
background-color: var(--wp--preset--color--primary, #000);
|
|
99
|
+
opacity: 0;
|
|
100
|
+
}
|
|
101
|
+
.wp-block-query__enhanced-pagination-animation.start-animation {
|
|
102
|
+
animation: wp-block-query__enhanced-pagination-start-animation 30s cubic-bezier(0, 1, 0, 1) infinite;
|
|
103
|
+
}
|
|
104
|
+
.wp-block-query__enhanced-pagination-animation.finish-animation {
|
|
105
|
+
animation: wp-block-query__enhanced-pagination-finish-animation 300ms ease-in;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
@keyframes wp-block-query__enhanced-pagination-start-animation {
|
|
109
|
+
0% {
|
|
110
|
+
transform: scaleX(0);
|
|
111
|
+
transform-origin: 0% 0%;
|
|
112
|
+
opacity: 1;
|
|
113
|
+
}
|
|
114
|
+
100% {
|
|
115
|
+
transform: scaleX(1);
|
|
116
|
+
transform-origin: 0% 0%;
|
|
117
|
+
opacity: 1;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
@keyframes wp-block-query__enhanced-pagination-finish-animation {
|
|
121
|
+
0% {
|
|
122
|
+
opacity: 1;
|
|
123
|
+
}
|
|
124
|
+
50% {
|
|
125
|
+
opacity: 1;
|
|
126
|
+
}
|
|
127
|
+
100% {
|
|
128
|
+
opacity: 0;
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
.wp-block-query__enhanced-pagination-navigation-announce {
|
|
132
|
+
position: absolute;
|
|
133
|
+
clip: rect(0, 0, 0, 0);
|
|
134
|
+
width: 1px;
|
|
135
|
+
height: 1px;
|
|
136
|
+
padding: 0;
|
|
137
|
+
margin: -1px;
|
|
138
|
+
overflow: hidden;
|
|
139
|
+
border: 0;
|
|
140
|
+
}
|
package/build-style/style.css
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/block-library",
|
|
3
|
-
"version": "8.
|
|
3
|
+
"version": "8.18.0",
|
|
4
4
|
"description": "Block library for the WordPress editor.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -31,36 +31,36 @@
|
|
|
31
31
|
],
|
|
32
32
|
"dependencies": {
|
|
33
33
|
"@babel/runtime": "^7.16.0",
|
|
34
|
-
"@wordpress/a11y": "^3.
|
|
35
|
-
"@wordpress/api-fetch": "^6.
|
|
36
|
-
"@wordpress/autop": "^3.
|
|
37
|
-
"@wordpress/blob": "^3.
|
|
38
|
-
"@wordpress/block-editor": "^12.
|
|
39
|
-
"@wordpress/blocks": "^12.
|
|
40
|
-
"@wordpress/components": "^25.
|
|
41
|
-
"@wordpress/compose": "^6.
|
|
42
|
-
"@wordpress/core-data": "^6.
|
|
43
|
-
"@wordpress/data": "^9.
|
|
44
|
-
"@wordpress/date": "^4.
|
|
45
|
-
"@wordpress/deprecated": "^3.
|
|
46
|
-
"@wordpress/dom": "^3.
|
|
47
|
-
"@wordpress/element": "^5.
|
|
48
|
-
"@wordpress/escape-html": "^2.
|
|
49
|
-
"@wordpress/hooks": "^3.
|
|
50
|
-
"@wordpress/html-entities": "^3.
|
|
51
|
-
"@wordpress/i18n": "^4.
|
|
52
|
-
"@wordpress/icons": "^9.
|
|
53
|
-
"@wordpress/interactivity": "^2.
|
|
54
|
-
"@wordpress/keycodes": "^3.
|
|
55
|
-
"@wordpress/notices": "^4.
|
|
56
|
-
"@wordpress/primitives": "^3.
|
|
57
|
-
"@wordpress/private-apis": "^0.
|
|
58
|
-
"@wordpress/reusable-blocks": "^4.
|
|
59
|
-
"@wordpress/rich-text": "^6.
|
|
60
|
-
"@wordpress/server-side-render": "^4.
|
|
61
|
-
"@wordpress/url": "^3.
|
|
62
|
-
"@wordpress/viewport": "^5.
|
|
63
|
-
"@wordpress/wordcount": "^3.
|
|
34
|
+
"@wordpress/a11y": "^3.41.0",
|
|
35
|
+
"@wordpress/api-fetch": "^6.38.0",
|
|
36
|
+
"@wordpress/autop": "^3.41.0",
|
|
37
|
+
"@wordpress/blob": "^3.41.0",
|
|
38
|
+
"@wordpress/block-editor": "^12.9.0",
|
|
39
|
+
"@wordpress/blocks": "^12.18.0",
|
|
40
|
+
"@wordpress/components": "^25.7.0",
|
|
41
|
+
"@wordpress/compose": "^6.18.0",
|
|
42
|
+
"@wordpress/core-data": "^6.18.0",
|
|
43
|
+
"@wordpress/data": "^9.11.0",
|
|
44
|
+
"@wordpress/date": "^4.41.0",
|
|
45
|
+
"@wordpress/deprecated": "^3.41.0",
|
|
46
|
+
"@wordpress/dom": "^3.41.0",
|
|
47
|
+
"@wordpress/element": "^5.18.0",
|
|
48
|
+
"@wordpress/escape-html": "^2.41.0",
|
|
49
|
+
"@wordpress/hooks": "^3.41.0",
|
|
50
|
+
"@wordpress/html-entities": "^3.41.0",
|
|
51
|
+
"@wordpress/i18n": "^4.41.0",
|
|
52
|
+
"@wordpress/icons": "^9.32.0",
|
|
53
|
+
"@wordpress/interactivity": "^2.2.0",
|
|
54
|
+
"@wordpress/keycodes": "^3.41.0",
|
|
55
|
+
"@wordpress/notices": "^4.9.0",
|
|
56
|
+
"@wordpress/primitives": "^3.39.0",
|
|
57
|
+
"@wordpress/private-apis": "^0.23.0",
|
|
58
|
+
"@wordpress/reusable-blocks": "^4.18.0",
|
|
59
|
+
"@wordpress/rich-text": "^6.18.0",
|
|
60
|
+
"@wordpress/server-side-render": "^4.18.0",
|
|
61
|
+
"@wordpress/url": "^3.42.0",
|
|
62
|
+
"@wordpress/viewport": "^5.18.0",
|
|
63
|
+
"@wordpress/wordcount": "^3.41.0",
|
|
64
64
|
"change-case": "^4.1.2",
|
|
65
65
|
"classnames": "^2.3.1",
|
|
66
66
|
"colord": "^2.7.0",
|
|
@@ -79,5 +79,5 @@
|
|
|
79
79
|
"publishConfig": {
|
|
80
80
|
"access": "public"
|
|
81
81
|
},
|
|
82
|
-
"gitHead": "
|
|
82
|
+
"gitHead": "5eac1734bcdca2301fdd37ec8cfe2a45e722a2c4"
|
|
83
83
|
}
|