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 / conditional-block / index.js
jetformbuilder / assets / src / editor / blocks / conditional-block Last commit date
deprecations 2 years ago condition.group.item.js 2 years ago conditional.model.context.js 2 years ago conditions.is.empty.js 2 years ago conditions.list.js 2 years ago conditions.modal.content.js 2 years ago conditions.modal.js 2 years ago edit.js 2 years ago index.js 2 years ago options.js 2 years ago preview.js 2 years ago save.js 2 years ago
index.js
90 lines
1 import ConditionalBlockEdit from './edit';
2 import metadata from '@blocks/conditional-block/block.json';
3 import ConditionalSave from './save';
4 import v3 from './deprecations/v3';
5
6 const { __, sprintf } = wp.i18n;
7
8 const { createBlock, createBlocksFromInnerBlocksTemplate } = wp.blocks;
9
10 const { name, icon = '' } = metadata;
11
12 /**
13 * Available items for `useEditProps`:
14 * - uniqKey
15 * - formFields
16 * - blockName
17 * - attrHelp
18 */
19 const settings = {
20 icon: <span dangerouslySetInnerHTML={ { __html: icon } }></span>,
21 description: __(
22 `Utilize the Conditional Visibility functionality allowing
23 to make fields of the form invisible to the users until some conditions are met.`,
24 'jet-form-builder',
25 ),
26 edit: ConditionalBlockEdit,
27 save: ConditionalSave,
28 useEditProps: [ 'uniqKey' ],
29 jfbGetFields: () => [],
30 /**
31 * @param attributes
32 * @param context {{|'accessibility'|'visual'|'list-view'}}
33 * @returns {*}
34 * @private
35 */
36 __experimentalLabel: ( attributes, { context } ) => {
37 if ( context !== 'list-view' ) {
38 return;
39 }
40 const funcObject = wp.data.select( 'jet-forms/block-conditions' ).
41 getFunction(
42 attributes?.func_type,
43 );
44
45 const funcLabel = funcObject?.label;
46 const conditionsCount = attributes?.conditions?.reduce(
47 ( prev, current ) => current?.or_operator ? prev : prev + 1,
48 0,
49 ) ?? 0;
50
51 return sprintf(
52 __( '%s %d condition(s)', 'jet-form-builder' ),
53 funcLabel,
54 conditionsCount,
55 );
56 },
57 example: {
58 attributes: {
59 isPreview: true,
60 },
61 },
62 transforms: {
63 from: [
64 {
65 type: 'block',
66 blocks: [ '*' ],
67 isMultiBlock: true,
68 __experimentalConvert: blocks => {
69 const innerBlocksTemplate = blocks.map( ( {
70 name,
71 attributes,
72 innerBlocks,
73 } ) => [ name, { ...attributes }, innerBlocks ] );
74
75 return createBlock( name, {},
76 createBlocksFromInnerBlocksTemplate(
77 innerBlocksTemplate ) );
78 },
79 priority: 0,
80 },
81 ],
82 },
83 deprecated: [ v3 ],
84 };
85
86 export {
87 metadata,
88 name,
89 settings,
90 };