芝麻web文件管理V1.00
编辑当前文件:/home/r5772835/public_html/ycreate.jp/wp-content/plugins/snow-monkey-blocks/src/blocks/rss/edit.js
import { times } from 'lodash'; import { InspectorControls, BlockControls, useBlockProps, } from '@wordpress/block-editor'; import { BaseControl, Button, Disabled, Placeholder, RangeControl, SelectControl, TextareaControl, ToggleControl, ToolbarButton, __experimentalHStack as HStack, __experimentalInputControl as InputControl, __experimentalToolsPanel as ToolsPanel, __experimentalToolsPanelItem as ToolsPanelItem, } from '@wordpress/components'; import { useState, useEffect } from '@wordpress/element'; import { __, sprintf } from '@wordpress/i18n'; import ServerSideRender from '@wordpress/server-side-render'; import { toNumber } from '@smb/helper'; import metadata from './block.json'; export default function ( { attributes, setAttributes, clientId } ) { const [ isEditing, setIsEditing ] = useState( ! attributes.feedURL ); const { feedURL, postsPerPage, layout, gap, smCols, noPostsText, itemTitleTagName, arrows, dots, interval, autoplayButton, } = attributes; useEffect( () => { setAttributes( { clientId } ); }, [ clientId ] ); const itemTitleTagNames = [ 'h2', 'h3', 'h4' ]; return ( <>
setIsEditing( true ) } />
postsPerPage !== metadata.attributes.postsPerPage.default } isShownByDefault label={ __( 'Number of posts', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { postsPerPage: metadata.attributes.postsPerPage.default, } ) } >
setAttributes( { postsPerPage: toNumber( value, 1, 12 ), } ) } min="1" max="12" />
layout !== metadata.attributes.layout.default } isShownByDefault label={ __( 'Layout', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { layout: metadata.attributes.layout.default, } ) } >
setAttributes( { layout: value, } ) } options={ [ { value: 'rich-media', label: __( 'Rich media', 'snow-monkey-blocks' ), }, { value: 'simple', label: __( 'Simple', 'snow-monkey-blocks' ), }, { value: 'text', label: __( 'Text', 'snow-monkey-blocks' ), }, { value: 'text2', label: __( 'Text 2', 'snow-monkey-blocks' ), }, { value: 'panel', label: __( 'Panels', 'snow-monkey-blocks' ), }, { value: 'carousel', label: sprintf( // translators: %1$s: Layout __( 'Carousel (%1$s)', 'snow-monkey-blocks' ), __( 'Rich media', 'snow-monkey-blocks' ) ), }, { value: 'large-image', label: __( 'Large image', 'snow-monkey-blocks' ), }, ] } />
{ 'carousel' === layout && ( <>
arrows !== metadata.attributes.arrows.default } isShownByDefault label={ __( 'Display arrows', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { arrows: metadata.attributes.arrows .default, } ) } >
setAttributes( { arrows: value, } ) } />
dots !== metadata.attributes.dots.default } isShownByDefault label={ __( 'Display dots', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { dots: metadata.attributes.dots.default, } ) } >
setAttributes( { dots: value, } ) } />
interval !== metadata.attributes.interval.default } isShownByDefault label={ __( 'Autoplay Speed in seconds', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { interval: metadata.attributes.interval .default, } ) } >
setAttributes( { interval: toNumber( value, 0, 10 ), } ) } min="0" max="10" />
{ 0 < interval && (
autoplayButton !== metadata.attributes.autoplayButton .default } isShownByDefault label={ __( 'Autoplay Speed in seconds', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { autoplayButton: metadata.attributes .autoplayButton.default, } ) } >
setAttributes( { autoplayButton: value, } ) } />
) } > ) }
gap !== metadata.attributes.gap.default } isShownByDefault label={ __( 'The gap between each item', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { gap: metadata.attributes.gap.default, } ) } >
setAttributes( { gap: value, } ) } options={ [ { value: '', label: __( 'Default', 'snow-monkey-blocks' ), }, { value: 's', label: __( 'S', 'snow-monkey-blocks' ), }, { value: 'm', label: __( 'M', 'snow-monkey-blocks' ), }, { value: 'l', label: __( 'L', 'snow-monkey-blocks' ), }, ] } />
itemTitleTagName !== metadata.attributes.itemTitleTagName.default } isShownByDefault label={ __( 'Title tag of each items', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { itemTitleTagName: metadata.attributes.itemTitleTagName .default, } ) } >
{ times( itemTitleTagNames.length, ( index ) => { const onClickItemTitleTagName = () => setAttributes( { itemTitleTagName: itemTitleTagNames[ index ], } ); return (
{ itemTitleTagNames[ index ] }
); } ) }
{ ( 'rich-media' === layout || 'panel' === layout ) && (
smCols !== metadata.attributes.smCols.default } isShownByDefault label={ __( 'Number of columns displayed on mobile device', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { smCols: metadata.attributes.smCols.default, } ) } >
setAttributes( { smCols: toNumber( value ), } ) } options={ [ { value: 0, label: __( 'Default', 'snow-monkey-blocks' ), }, { value: 1, label: __( '1 column', 'snow-monkey-blocks' ), }, { value: 2, label: __( '2 columns', 'snow-monkey-blocks' ), }, ] } />
) }
noPostsText !== metadata.attributes.noPostsText.default } isShownByDefault label={ __( 'Text if no posts matched', 'snow-monkey-blocks' ) } onDeselect={ () => setAttributes( { noPostsText: metadata.attributes.noPostsText.default, } ) } >
setAttributes( { noPostsText: value, } ) } />
{ isEditing ? (
{ event.preventDefault(); if ( feedURL ) { setIsEditing( false ); } } } className="wp-block-rss__placeholder-form" >
setAttributes( { feedURL: value, } ) } className="wp-block-rss__placeholder-input" />
{ __( 'Use URL' ) }
) : (
) }
> ); }