PluginProbe ʕ •ᴥ•ʔ
JetFormBuilder — Dynamic Blocks Form Builder / 3.1.3
JetFormBuilder — Dynamic Blocks Form Builder v3.1.3
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 / actions / hooks / useSanitizeFieldsMap.js
jetformbuilder / assets / src / package / actions / hooks Last commit date
useActionCallback.js 2 years ago useActionDetail.js 2 years ago useActions.js 2 years ago useActionsEdit.js 2 years ago useCurrentAction.js 2 years ago useRequestFields.js 2 years ago useSanitizeFieldsMap.js 2 years ago useUpdateCurrentAction.js 2 years ago useUpdateCurrentActionMeta.js 2 years ago withCurrentAction.js 2 years ago withDispatchActionLoading.js 2 years ago withRequestFields.js 2 years ago withSelectActionLoading.js 2 years ago
useSanitizeFieldsMap.js
44 lines
1 import CurrentActionEditContext from '../context/CurrentActionEditContext';
2 import useRequestFields from './useRequestFields';
3 import getFormFieldsBlocks from '../../blocks/helpers/getFormFieldsBlocks';
4
5 const {
6 useEffect,
7 useContext,
8 } = wp.element;
9
10 function useSanitizeFieldsMap( mapProperty = 'fields_map' ) {
11 const requestFields = useRequestFields();
12
13 const {
14 settings,
15 onChangeSettingObj,
16 } = useContext( CurrentActionEditContext );
17
18 useEffect( () => {
19 if ( !settings.hasOwnProperty( mapProperty ) ) {
20 return;
21 }
22 const fields = [ ...getFormFieldsBlocks(), ...requestFields ];
23 const fieldsMap = settings[ mapProperty ];
24
25 const hasField = fieldName => {
26 return -1 !== fields.findIndex(
27 current => current.value === fieldName,
28 );
29 };
30
31 for ( const fieldName in fieldsMap ) {
32 if ( !fieldsMap.hasOwnProperty( fieldName ) ) {
33 continue;
34 }
35
36 if ( !hasField( fieldName ) ) {
37 delete fieldsMap[ fieldName ];
38 }
39 }
40 onChangeSettingObj( { [ mapProperty ]: fieldsMap } );
41 }, [] );
42 }
43
44 export default useSanitizeFieldsMap;