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 / hooks / useBlockAttributes.js
jetformbuilder / assets / src / package / blocks / hooks Last commit date
useBlockAttributes.js 2 years ago useFields.js 2 years ago useIsAdvancedValidation.js 2 years ago useIsUniqueFieldName.js 2 years ago useSupport.js 2 years ago useUniqKey.js 2 years ago useUniqueNameOnDuplicate.js 2 years ago
useBlockAttributes.js
42 lines
1 const {
2 useBlockEditContext,
3 } = wp.blockEditor;
4 const {
5 useSelect,
6 useDispatch,
7 select,
8 } = wp.data;
9
10 function useBlockAttributes( otherClientId = null ) {
11 const blockProps = useBlockEditContext();
12 let { clientId } = blockProps;
13
14 if ( otherClientId ) {
15 clientId = otherClientId;
16 }
17
18 const attributes = useSelect( select => {
19 return select( 'core/block-editor' ).getBlockAttributes( clientId );
20 } );
21 const { updateBlock } = useDispatch( 'core/block-editor', [] );
22
23 /**
24 * @param props {Object|Function}
25 */
26 const updateAttributes = props => {
27 props = 'object' === typeof props
28 ? props
29 : props( attributes );
30
31 props = select( 'jet-forms/fields' ).getSanitizedAttributes(
32 props,
33 blockProps,
34 );
35
36 updateBlock( clientId, { attributes: props } );
37 };
38
39 return [ attributes, updateAttributes ];
40 }
41
42 export default useBlockAttributes;