PluginProbe ʕ •ᴥ•ʔ
GenerateBlocks / 1.5.3
GenerateBlocks v1.5.3
trunk 1.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.2.0 1.3.0 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.6.0 1.7.0 1.7.1 1.7.2 1.7.3 1.8.0 1.8.1 1.8.2 1.8.3 1.9.0 1.9.1 2.0.0 2.0.1 2.0.2 2.1.0 2.1.1 2.1.2 2.2.0 2.2.1 2.3.0
generateblocks / src / extend / dynamic-content / components / SelectSource.js
generateblocks / src / extend / dynamic-content / components Last commit date
SelectPostType.js 4 years ago SelectSource.js 4 years ago
SelectSource.js
35 lines
1 import { __ } from '@wordpress/i18n';
2 import AdvancedSelect from '../../../components/advanced-select';
3 import { applyFilters } from '@wordpress/hooks';
4
5 const getOptions = ( dynamicContentType ) => {
6 const defaultOptions = [
7 { value: 'current-post', label: 'caption' === dynamicContentType
8 ? __( 'Current image', 'generateblocks' )
9 : __( 'Current post', 'generateblocks' ) },
10 { value: 'post-type', label: __( 'Post type', 'generateblocks' ) },
11 ];
12
13 return applyFilters(
14 'generateblocks.editor.dynamicContent.sourceOptions',
15 defaultOptions,
16 );
17 };
18
19 export default ( { source, onChange, help, dynamicContentType } ) => {
20 const options = getOptions( dynamicContentType );
21 const value = options.filter( ( option ) => ( option.value === source ) );
22
23 return (
24 <AdvancedSelect
25 id={ 'gblocks-select-source-control' }
26 label={ __( 'Data source', 'generateblocks' ) }
27 help={ help }
28 placeholder={ __( 'Select source', 'generateblocks' ) }
29 options={ options }
30 value={ value }
31 onChange={ onChange }
32 />
33 );
34 };
35