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 / editor / blocks / submit-field / index.js
jetformbuilder / assets / src / editor / blocks / submit-field Last commit date
change.state.action.js 2 years ago edit.js 2 years ago index.js 2 years ago preview.js 2 years ago
index.js
92 lines
1 import ActionButtonEdit from './edit';
2 import metadata from '@blocks/submit-field/block.json';
3
4 const { __ } = wp.i18n;
5
6 const { createBlock } = wp.blocks;
7
8 const { name, icon = '' } = metadata;
9
10 /**
11 * Available items for `useEditProps`:
12 * - uniqKey
13 * - formFields
14 * - blockName
15 * - attrHelp
16 */
17 const settings = {
18 icon: <span dangerouslySetInnerHTML={ { __html: icon } }></span>,
19 description: __(
20 `Add the button by clicking which users can submit the form, proceed
21 to any form part, or change the render state (switch login to sign-up form).`,
22 'jet-form-builder'
23 ),
24 edit: ActionButtonEdit,
25 useEditProps: [ 'uniqKey', 'blockName', 'attrHelp' ],
26 example: {
27 attributes: {
28 isPreview: true,
29 },
30 },
31 /**
32 * @param attributes
33 * @param context {{|'accessibility'|'visual'|'list-view'}}
34 * @returns {*}
35 * @private
36 */
37 __experimentalLabel: ( { action_type }, { context } ) => {
38 if ( context !== 'list-view' ) {
39 return;
40 }
41 const action = JetFormActionButton.actions.find(
42 ( { value } ) => value === action_type,
43 );
44
45 return action?.label || JetFormActionButton.actions[ 0 ].label;
46 },
47 transforms: {
48 to: [
49 {
50 type: 'block',
51 blocks: [
52 'jet-forms/text-field',
53 ],
54 transform: ( attributes ) => {
55 return createBlock( 'jet-forms/text-field',
56 { ...attributes } );
57 },
58 priority: 0,
59 },
60 ],
61 from: [
62 {
63 type: 'block',
64 blocks: [
65 'jet-forms/text-field',
66 ],
67 transform: ( attributes ) => {
68 return createBlock( name, { ...attributes } );
69 },
70 priority: 0,
71 },
72 {
73 type: 'block',
74 blocks: [
75 'core/buttons',
76 ],
77 transform: ( attributes, innerBlocks ) => {
78 return createBlock( name, {
79 label: innerBlocks[ 0 ]?.attributes?.text || '',
80 } );
81 },
82 priority: 0,
83 },
84 ],
85 },
86 };
87
88 export {
89 metadata,
90 name,
91 settings,
92 };