PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.1.1
JetFormBuilder — Dynamic Blocks Form Builder v3.1.1
3.6.3.1 3.6.3 3.6.2.2 3.6.2.1 3.6.2 3.6.1.1 3.6.1 3.6.0.1 trunk 1.0.0 1.0.1 1.0.2 1.0.3 1.1.0 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.6 1.1.7 1.2.0 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.2.7 1.3.0 1.3.1 1.3.2 1.3.3 1.4.0 1.4.1 1.4.2 1.4.3 1.5.0 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 2.0.0 2.0.1 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.1.0 2.1.1 2.1.10 2.1.11 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.1.8 2.1.9 3.0.0 3.0.0.1 3.0.0.2 3.0.0.3 3.0.1 3.0.1.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.0.8 3.0.9 3.1.0 3.1.0.1 3.1.1 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.2 3.2.3 3.3.0 3.3.1 3.3.2 3.3.3 3.3.3.1 3.3.4 3.3.4.1 3.3.4.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.5.1 3.4.5.2 3.4.6 3.4.7 3.4.7.1 3.5.0 3.5.1 3.5.1.1 3.5.1.2 3.5.2 3.5.2.1 3.5.3 3.5.4 3.5.5 3.5.6 3.5.6.1 3.5.6.2 3.5.6.3 3.6.0
jetformbuilder / assets / src / package / blocks / components / BlockRequired.js
jetformbuilder / assets / src / package / blocks / components Last commit date
AdvancedFields.js 2 years ago AttributeHelp.js 2 years ago BlockAddPrevButton.js 2 years ago BlockAdvancedValue.js 2 years ago BlockClassName.js 2 years ago BlockDefaultValue.js 2 years ago BlockDescription.js 2 years ago BlockLabel.js 2 years ago BlockName.js 2 years ago BlockPlaceholder.js 2 years ago BlockPrevButtonLabel.js 2 years ago BlockRequired.js 2 years ago BlockVisibility.js 2 years ago FieldControl.js 2 years ago FieldSettingsWrapper.js 2 years ago FieldWrapper.js 2 years ago GeneralFields.js 2 years ago SelectVariations.js 2 years ago ToggleGroupVariations.js 2 years ago ToolBarDefault.js 2 years ago ToolBarFields.js 2 years ago
BlockRequired.js
54 lines
1 import useBlockAttributes from '../hooks/useBlockAttributes';
2 import useIsHasAttribute from '../../hooks/useIsHasAttribute';
3
4 const {
5 __,
6 } = wp.i18n;
7
8 const {
9 ToolbarButton,
10 } = wp.components;
11
12 const {
13 BlockControls,
14 } = wp.blockEditor;
15
16 const { SVG, Path } = wp.primitives;
17
18 function BlockRequired() {
19 const [
20 attributes,
21 setAttributes,
22 ] = useBlockAttributes();
23
24 if ( !useIsHasAttribute( 'required' ) ) {
25 return null;
26 }
27
28 return <BlockControls group="block">
29 <ToolbarButton
30 icon={ <SVG xmlns="http://www.w3.org/2000/svg" width="800px" height="800px" viewBox="0 0 24 24" fill="none">
31 <Path d="M12 4L12 20" stroke="currentcolor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
32 <Path d="M17.3137 6.00024L6.00001 17.314" stroke="currentcolor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
33 <Path d="M20 12L4 12" stroke="currentcolor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
34 <Path d="M17.3137 17.3137L6.00001 6.00001" stroke="currentcolor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round"/>
35 </SVG> }
36 title={ attributes.required
37 ? __(
38 'Click to make this field optional',
39 'jet-form-builder',
40 )
41 : __(
42 'Click to make this field required',
43 'jet-form-builder',
44 )
45 }
46 onClick={ () => setAttributes( {
47 required: !attributes.required,
48 } ) }
49 isActive={ attributes.required }
50 />
51 </BlockControls>;
52 }
53
54 export default BlockRequired;