File "TermsControl.js"
Full path: /home/webcknlt/admissiontell.com/wp-content/plugins/generateblocks/src/extend/dynamic-content/inspector-controls/TermsControl.js
File
size: 1.17 B
MIME-type: text/x-java
Charset: utf-8
Download Open Edit Advanced Editor &nnbsp; Back
import SimpleSelect from '../../../components/simple-select';
import { useTaxonomies } from '../../../hooks';
import { useMemo } from '@wordpress/element';
import { __ } from '@wordpress/i18n';
import { TextControl } from '@wordpress/components';
export default function TermsControl( props ) {
const {
isActive,
postType,
termTaxonomy,
termSeparator,
setAttributes,
name,
} = props;
const taxonomies = useTaxonomies();
const taxonomiesOptions = useMemo( () => (
taxonomies
.filter( ( tax ) => ( tax.types.includes( postType ) ) )
.map( ( tax ) => ( { value: tax.slug, label: tax.name } ) )
), [ taxonomies, postType ] );
return (
<>
{ isActive &&
<>
<SimpleSelect
label={ __( 'Taxonomy', 'generateblocks' ) }
options={ taxonomiesOptions }
value={ termTaxonomy }
onChange={ ( option ) => {
setAttributes( { termTaxonomy: option.value } );
} }
/>
{ 'generateblocks/button' !== name &&
<TextControl
label={ __( 'Term separator', 'generateblocks' ) }
value={ termSeparator }
onChange={ ( value ) => setAttributes( { termSeparator: value } ) }
/>
}
</>
}
</>
);
}