@formio/js 5.1.0-dev.6048.c77fe06 → 5.1.0-dev.6053.1bce8e0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Changelog.md +140 -6
- package/dist/formio.form.js +2 -2
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.full.js +4 -4
- package/dist/formio.full.min.js +1 -1
- package/lib/cjs/WebformBuilder.js +4 -0
- package/lib/cjs/Wizard.d.ts +1 -0
- package/lib/cjs/Wizard.js +17 -0
- package/lib/cjs/components/select/Select.js +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +74 -116
- package/lib/cjs/components/select/editForm/Select.edit.data.js +0 -36
- package/lib/mjs/WebformBuilder.js +4 -0
- package/lib/mjs/Wizard.d.ts +1 -0
- package/lib/mjs/Wizard.js +17 -0
- package/lib/mjs/components/select/Select.js +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +74 -116
- package/lib/mjs/components/select/editForm/Select.edit.data.js +0 -36
- package/package.json +1 -1
@@ -1623,6 +1623,10 @@ class WebformBuilder extends Component_1.default {
|
|
1623
1623
|
info.type);
|
1624
1624
|
}
|
1625
1625
|
hasEditTabs(type) {
|
1626
|
+
// If the component type does not exist then it has no edit tabs
|
1627
|
+
if (!Components_1.default.components[type]) {
|
1628
|
+
return false;
|
1629
|
+
}
|
1626
1630
|
const editTabs = (0, formUtils_1.getComponent)(Components_1.default.components[type === 'custom' ? 'unknown' : type].editForm().components, 'tabs', true).components;
|
1627
1631
|
const hiddenEditTabs = lodash_1.default.filter(lodash_1.default.get(this.options, `editForm.${type}`, []), 'ignore');
|
1628
1632
|
return lodash_1.default.intersectionBy(editTabs, hiddenEditTabs, 'key').length !== editTabs.length;
|
package/lib/cjs/Wizard.d.ts
CHANGED
@@ -106,6 +106,7 @@ declare class Wizard extends Webform {
|
|
106
106
|
onChange(flags: any, changed: any, modified: any, changes: any): void;
|
107
107
|
checkValidity(data: any, dirty: any, row: any, currentPageOnly: any, childErrors?: any[]): any;
|
108
108
|
focusOnComponent(key: any): void | Promise<void>;
|
109
|
+
triggerButtonCaptcha(page: any): void;
|
109
110
|
}
|
110
111
|
declare namespace Wizard {
|
111
112
|
let setBaseUrl: any;
|
package/lib/cjs/Wizard.js
CHANGED
@@ -670,6 +670,7 @@ class Wizard extends Webform_1.default {
|
|
670
670
|
beforeSubmit() {
|
671
671
|
const pages = this.getPages({ all: true });
|
672
672
|
return Promise.all(pages.map((page) => {
|
673
|
+
this.triggerButtonCaptcha(page);
|
673
674
|
page.options.beforeSubmit = true;
|
674
675
|
return page.beforeSubmit();
|
675
676
|
}));
|
@@ -945,6 +946,22 @@ class Wizard extends Webform_1.default {
|
|
945
946
|
}
|
946
947
|
return super.focusOnComponent(key);
|
947
948
|
}
|
949
|
+
triggerButtonCaptcha(page) {
|
950
|
+
if (!page.components) {
|
951
|
+
return;
|
952
|
+
}
|
953
|
+
let captchaComponent;
|
954
|
+
page.eachComponent((component) => {
|
955
|
+
if (/^(re)?captcha$/.test(component.component.type) &&
|
956
|
+
component.component.eventType === 'buttonClick' &&
|
957
|
+
component.component.buttonKey === 'submit') {
|
958
|
+
captchaComponent = component;
|
959
|
+
}
|
960
|
+
});
|
961
|
+
if (captchaComponent) {
|
962
|
+
captchaComponent.verify(`submitClick`);
|
963
|
+
}
|
964
|
+
}
|
948
965
|
}
|
949
966
|
exports.default = Wizard;
|
950
967
|
Wizard.setBaseUrl = Formio_1.Formio.setBaseUrl;
|
@@ -1459,7 +1459,7 @@ class SelectComponent extends ListComponent_1.default {
|
|
1459
1459
|
asString(value, options = {}) {
|
1460
1460
|
var _a;
|
1461
1461
|
value = value !== null && value !== void 0 ? value : this.getValue();
|
1462
|
-
if (options.modalPreview || this.inDataTable) {
|
1462
|
+
if (options.modalPreview || this.inDataTable || options.email) {
|
1463
1463
|
if (this.inDataTable) {
|
1464
1464
|
value = this.undoValueTyping(value);
|
1465
1465
|
}
|
@@ -9,100 +9,16 @@ declare const _default: ({
|
|
9
9
|
custom?: undefined;
|
10
10
|
};
|
11
11
|
type?: undefined;
|
12
|
+
as?: undefined;
|
13
|
+
editor?: undefined;
|
12
14
|
weight?: undefined;
|
13
15
|
input?: undefined;
|
14
16
|
label?: undefined;
|
15
17
|
tooltip?: undefined;
|
16
|
-
conditional?: undefined;
|
17
|
-
as?: undefined;
|
18
|
-
editor?: undefined;
|
19
|
-
defaultValue?: undefined;
|
20
18
|
description?: undefined;
|
19
|
+
conditional?: undefined;
|
21
20
|
reorder?: undefined;
|
22
|
-
components?: undefined;
|
23
|
-
dataSrc?: undefined;
|
24
|
-
authenticate?: undefined;
|
25
|
-
template?: undefined;
|
26
|
-
valueProperty?: undefined;
|
27
|
-
clearOnHide?: undefined;
|
28
|
-
lazyLoad?: undefined;
|
29
|
-
skipMerge?: undefined;
|
30
|
-
refreshOn?: undefined;
|
31
|
-
onSetItems?: undefined;
|
32
|
-
onChange?: undefined;
|
33
|
-
placeholder?: undefined;
|
34
|
-
validate?: undefined;
|
35
|
-
delimiter?: undefined;
|
36
|
-
requireDecimal?: undefined;
|
37
|
-
encrypted?: undefined;
|
38
|
-
rows?: undefined;
|
39
|
-
mask?: undefined;
|
40
|
-
tableView?: undefined;
|
41
|
-
alwaysEnabled?: undefined;
|
42
|
-
} | {
|
43
|
-
type: string;
|
44
|
-
weight: number;
|
45
|
-
input: boolean;
|
46
|
-
key: string;
|
47
|
-
label: string;
|
48
|
-
tooltip: string;
|
49
|
-
conditional: {
|
50
|
-
json: {
|
51
|
-
'===': (string | {
|
52
|
-
var: string;
|
53
|
-
})[];
|
54
|
-
and?: undefined;
|
55
|
-
in?: undefined;
|
56
|
-
};
|
57
|
-
};
|
58
|
-
data?: undefined;
|
59
|
-
as?: undefined;
|
60
|
-
editor?: undefined;
|
61
21
|
defaultValue?: undefined;
|
62
|
-
description?: undefined;
|
63
|
-
reorder?: undefined;
|
64
|
-
components?: undefined;
|
65
|
-
dataSrc?: undefined;
|
66
|
-
authenticate?: undefined;
|
67
|
-
template?: undefined;
|
68
|
-
valueProperty?: undefined;
|
69
|
-
clearOnHide?: undefined;
|
70
|
-
lazyLoad?: undefined;
|
71
|
-
skipMerge?: undefined;
|
72
|
-
refreshOn?: undefined;
|
73
|
-
onSetItems?: undefined;
|
74
|
-
onChange?: undefined;
|
75
|
-
placeholder?: undefined;
|
76
|
-
validate?: undefined;
|
77
|
-
delimiter?: undefined;
|
78
|
-
requireDecimal?: undefined;
|
79
|
-
encrypted?: undefined;
|
80
|
-
rows?: undefined;
|
81
|
-
mask?: undefined;
|
82
|
-
tableView?: undefined;
|
83
|
-
alwaysEnabled?: undefined;
|
84
|
-
} | {
|
85
|
-
type: string;
|
86
|
-
as: string;
|
87
|
-
editor: string;
|
88
|
-
weight: number;
|
89
|
-
input: boolean;
|
90
|
-
key: string;
|
91
|
-
label: string;
|
92
|
-
tooltip: string;
|
93
|
-
defaultValue: {};
|
94
|
-
conditional: {
|
95
|
-
json: {
|
96
|
-
'===': (string | {
|
97
|
-
var: string;
|
98
|
-
})[];
|
99
|
-
and?: undefined;
|
100
|
-
in?: undefined;
|
101
|
-
};
|
102
|
-
};
|
103
|
-
data?: undefined;
|
104
|
-
description?: undefined;
|
105
|
-
reorder?: undefined;
|
106
22
|
components?: undefined;
|
107
23
|
dataSrc?: undefined;
|
108
24
|
authenticate?: undefined;
|
@@ -143,8 +59,8 @@ declare const _default: ({
|
|
143
59
|
};
|
144
60
|
};
|
145
61
|
data?: undefined;
|
146
|
-
defaultValue?: undefined;
|
147
62
|
reorder?: undefined;
|
63
|
+
defaultValue?: undefined;
|
148
64
|
components?: undefined;
|
149
65
|
dataSrc?: undefined;
|
150
66
|
authenticate?: undefined;
|
@@ -192,9 +108,9 @@ declare const _default: ({
|
|
192
108
|
data?: undefined;
|
193
109
|
as?: undefined;
|
194
110
|
editor?: undefined;
|
195
|
-
defaultValue?: undefined;
|
196
111
|
description?: undefined;
|
197
112
|
reorder?: undefined;
|
113
|
+
defaultValue?: undefined;
|
198
114
|
components?: undefined;
|
199
115
|
dataSrc?: undefined;
|
200
116
|
authenticate?: undefined;
|
@@ -303,9 +219,9 @@ declare const _default: ({
|
|
303
219
|
};
|
304
220
|
as?: undefined;
|
305
221
|
editor?: undefined;
|
306
|
-
defaultValue?: undefined;
|
307
222
|
description?: undefined;
|
308
223
|
reorder?: undefined;
|
224
|
+
defaultValue?: undefined;
|
309
225
|
components?: undefined;
|
310
226
|
skipMerge?: undefined;
|
311
227
|
refreshOn?: undefined;
|
@@ -340,8 +256,8 @@ declare const _default: ({
|
|
340
256
|
data?: undefined;
|
341
257
|
as?: undefined;
|
342
258
|
editor?: undefined;
|
343
|
-
defaultValue?: undefined;
|
344
259
|
reorder?: undefined;
|
260
|
+
defaultValue?: undefined;
|
345
261
|
components?: undefined;
|
346
262
|
dataSrc?: undefined;
|
347
263
|
authenticate?: undefined;
|
@@ -411,9 +327,9 @@ declare const _default: ({
|
|
411
327
|
};
|
412
328
|
as?: undefined;
|
413
329
|
editor?: undefined;
|
414
|
-
defaultValue?: undefined;
|
415
330
|
description?: undefined;
|
416
331
|
reorder?: undefined;
|
332
|
+
defaultValue?: undefined;
|
417
333
|
components?: undefined;
|
418
334
|
authenticate?: undefined;
|
419
335
|
placeholder?: undefined;
|
@@ -443,12 +359,12 @@ declare const _default: ({
|
|
443
359
|
url?: undefined;
|
444
360
|
custom?: undefined;
|
445
361
|
};
|
446
|
-
conditional?: undefined;
|
447
362
|
as?: undefined;
|
448
363
|
editor?: undefined;
|
449
|
-
defaultValue?: undefined;
|
450
364
|
description?: undefined;
|
365
|
+
conditional?: undefined;
|
451
366
|
reorder?: undefined;
|
367
|
+
defaultValue?: undefined;
|
452
368
|
components?: undefined;
|
453
369
|
authenticate?: undefined;
|
454
370
|
valueProperty?: undefined;
|
@@ -475,12 +391,53 @@ declare const _default: ({
|
|
475
391
|
placeholder: string;
|
476
392
|
tooltip: string;
|
477
393
|
data?: undefined;
|
478
|
-
conditional?: undefined;
|
479
394
|
as?: undefined;
|
480
395
|
editor?: undefined;
|
396
|
+
description?: undefined;
|
397
|
+
conditional?: undefined;
|
398
|
+
reorder?: undefined;
|
481
399
|
defaultValue?: undefined;
|
400
|
+
components?: undefined;
|
401
|
+
dataSrc?: undefined;
|
402
|
+
authenticate?: undefined;
|
403
|
+
template?: undefined;
|
404
|
+
valueProperty?: undefined;
|
405
|
+
clearOnHide?: undefined;
|
406
|
+
lazyLoad?: undefined;
|
407
|
+
skipMerge?: undefined;
|
408
|
+
refreshOn?: undefined;
|
409
|
+
onSetItems?: undefined;
|
410
|
+
onChange?: undefined;
|
411
|
+
validate?: undefined;
|
412
|
+
delimiter?: undefined;
|
413
|
+
requireDecimal?: undefined;
|
414
|
+
encrypted?: undefined;
|
415
|
+
rows?: undefined;
|
416
|
+
mask?: undefined;
|
417
|
+
tableView?: undefined;
|
418
|
+
alwaysEnabled?: undefined;
|
419
|
+
} | {
|
420
|
+
type: string;
|
421
|
+
input: boolean;
|
422
|
+
key: string;
|
423
|
+
label: string;
|
424
|
+
tooltip: string;
|
425
|
+
weight: number;
|
426
|
+
conditional: {
|
427
|
+
json: {
|
428
|
+
'===': (string | {
|
429
|
+
var: string;
|
430
|
+
})[];
|
431
|
+
and?: undefined;
|
432
|
+
in?: undefined;
|
433
|
+
};
|
434
|
+
};
|
435
|
+
data?: undefined;
|
436
|
+
as?: undefined;
|
437
|
+
editor?: undefined;
|
482
438
|
description?: undefined;
|
483
439
|
reorder?: undefined;
|
440
|
+
defaultValue?: undefined;
|
484
441
|
components?: undefined;
|
485
442
|
dataSrc?: undefined;
|
486
443
|
authenticate?: undefined;
|
@@ -492,6 +449,7 @@ declare const _default: ({
|
|
492
449
|
refreshOn?: undefined;
|
493
450
|
onSetItems?: undefined;
|
494
451
|
onChange?: undefined;
|
452
|
+
placeholder?: undefined;
|
495
453
|
validate?: undefined;
|
496
454
|
delimiter?: undefined;
|
497
455
|
requireDecimal?: undefined;
|
@@ -520,8 +478,8 @@ declare const _default: ({
|
|
520
478
|
data?: undefined;
|
521
479
|
as?: undefined;
|
522
480
|
editor?: undefined;
|
523
|
-
defaultValue?: undefined;
|
524
481
|
reorder?: undefined;
|
482
|
+
defaultValue?: undefined;
|
525
483
|
components?: undefined;
|
526
484
|
dataSrc?: undefined;
|
527
485
|
authenticate?: undefined;
|
@@ -668,8 +626,8 @@ declare const _default: ({
|
|
668
626
|
data?: undefined;
|
669
627
|
as?: undefined;
|
670
628
|
editor?: undefined;
|
671
|
-
defaultValue?: undefined;
|
672
629
|
reorder?: undefined;
|
630
|
+
defaultValue?: undefined;
|
673
631
|
components?: undefined;
|
674
632
|
dataSrc?: undefined;
|
675
633
|
authenticate?: undefined;
|
@@ -710,9 +668,9 @@ declare const _default: ({
|
|
710
668
|
};
|
711
669
|
data?: undefined;
|
712
670
|
as?: undefined;
|
713
|
-
defaultValue?: undefined;
|
714
671
|
description?: undefined;
|
715
672
|
reorder?: undefined;
|
673
|
+
defaultValue?: undefined;
|
716
674
|
components?: undefined;
|
717
675
|
dataSrc?: undefined;
|
718
676
|
authenticate?: undefined;
|
@@ -759,9 +717,9 @@ declare const _default: ({
|
|
759
717
|
};
|
760
718
|
as?: undefined;
|
761
719
|
editor?: undefined;
|
762
|
-
defaultValue?: undefined;
|
763
720
|
description?: undefined;
|
764
721
|
reorder?: undefined;
|
722
|
+
defaultValue?: undefined;
|
765
723
|
components?: undefined;
|
766
724
|
authenticate?: undefined;
|
767
725
|
template?: undefined;
|
@@ -831,10 +789,10 @@ declare const _default: ({
|
|
831
789
|
defaultValue: boolean;
|
832
790
|
tooltip: string;
|
833
791
|
data?: undefined;
|
834
|
-
conditional?: undefined;
|
835
792
|
as?: undefined;
|
836
793
|
editor?: undefined;
|
837
794
|
description?: undefined;
|
795
|
+
conditional?: undefined;
|
838
796
|
reorder?: undefined;
|
839
797
|
components?: undefined;
|
840
798
|
dataSrc?: undefined;
|
@@ -927,10 +885,10 @@ declare const _default: ({
|
|
927
885
|
weight: number;
|
928
886
|
tooltip: string;
|
929
887
|
data?: undefined;
|
930
|
-
conditional?: undefined;
|
931
888
|
as?: undefined;
|
932
889
|
editor?: undefined;
|
933
890
|
description?: undefined;
|
891
|
+
conditional?: undefined;
|
934
892
|
reorder?: undefined;
|
935
893
|
components?: undefined;
|
936
894
|
dataSrc?: undefined;
|
@@ -973,9 +931,9 @@ declare const _default: ({
|
|
973
931
|
data?: undefined;
|
974
932
|
as?: undefined;
|
975
933
|
editor?: undefined;
|
976
|
-
defaultValue?: undefined;
|
977
934
|
description?: undefined;
|
978
935
|
reorder?: undefined;
|
936
|
+
defaultValue?: undefined;
|
979
937
|
components?: undefined;
|
980
938
|
dataSrc?: undefined;
|
981
939
|
authenticate?: undefined;
|
@@ -1003,12 +961,12 @@ declare const _default: ({
|
|
1003
961
|
label: string;
|
1004
962
|
tooltip: string;
|
1005
963
|
data?: undefined;
|
1006
|
-
conditional?: undefined;
|
1007
964
|
as?: undefined;
|
1008
965
|
editor?: undefined;
|
1009
|
-
defaultValue?: undefined;
|
1010
966
|
description?: undefined;
|
967
|
+
conditional?: undefined;
|
1011
968
|
reorder?: undefined;
|
969
|
+
defaultValue?: undefined;
|
1012
970
|
components?: undefined;
|
1013
971
|
dataSrc?: undefined;
|
1014
972
|
authenticate?: undefined;
|
@@ -1040,8 +998,8 @@ declare const _default: ({
|
|
1040
998
|
tooltip: string;
|
1041
999
|
defaultValue: {};
|
1042
1000
|
data?: undefined;
|
1043
|
-
conditional?: undefined;
|
1044
1001
|
description?: undefined;
|
1002
|
+
conditional?: undefined;
|
1045
1003
|
reorder?: undefined;
|
1046
1004
|
components?: undefined;
|
1047
1005
|
dataSrc?: undefined;
|
@@ -1069,16 +1027,16 @@ declare const _default: ({
|
|
1069
1027
|
onChange(context: any): void;
|
1070
1028
|
data?: undefined;
|
1071
1029
|
type?: undefined;
|
1030
|
+
as?: undefined;
|
1031
|
+
editor?: undefined;
|
1072
1032
|
weight?: undefined;
|
1073
1033
|
input?: undefined;
|
1074
1034
|
label?: undefined;
|
1075
1035
|
tooltip?: undefined;
|
1076
|
-
conditional?: undefined;
|
1077
|
-
as?: undefined;
|
1078
|
-
editor?: undefined;
|
1079
|
-
defaultValue?: undefined;
|
1080
1036
|
description?: undefined;
|
1037
|
+
conditional?: undefined;
|
1081
1038
|
reorder?: undefined;
|
1039
|
+
defaultValue?: undefined;
|
1082
1040
|
components?: undefined;
|
1083
1041
|
dataSrc?: undefined;
|
1084
1042
|
authenticate?: undefined;
|
@@ -1150,15 +1108,15 @@ declare const _default: ({
|
|
1150
1108
|
};
|
1151
1109
|
};
|
1152
1110
|
data?: undefined;
|
1111
|
+
as?: undefined;
|
1112
|
+
editor?: undefined;
|
1153
1113
|
weight?: undefined;
|
1154
1114
|
input?: undefined;
|
1155
1115
|
label?: undefined;
|
1156
1116
|
tooltip?: undefined;
|
1157
|
-
as?: undefined;
|
1158
|
-
editor?: undefined;
|
1159
|
-
defaultValue?: undefined;
|
1160
1117
|
description?: undefined;
|
1161
1118
|
reorder?: undefined;
|
1119
|
+
defaultValue?: undefined;
|
1162
1120
|
components?: undefined;
|
1163
1121
|
dataSrc?: undefined;
|
1164
1122
|
authenticate?: undefined;
|
@@ -1184,16 +1142,16 @@ declare const _default: ({
|
|
1184
1142
|
onChange(context: any): void;
|
1185
1143
|
data?: undefined;
|
1186
1144
|
type?: undefined;
|
1145
|
+
as?: undefined;
|
1146
|
+
editor?: undefined;
|
1187
1147
|
weight?: undefined;
|
1188
1148
|
input?: undefined;
|
1189
1149
|
label?: undefined;
|
1190
1150
|
tooltip?: undefined;
|
1191
|
-
conditional?: undefined;
|
1192
|
-
as?: undefined;
|
1193
|
-
editor?: undefined;
|
1194
|
-
defaultValue?: undefined;
|
1195
1151
|
description?: undefined;
|
1152
|
+
conditional?: undefined;
|
1196
1153
|
reorder?: undefined;
|
1154
|
+
defaultValue?: undefined;
|
1197
1155
|
components?: undefined;
|
1198
1156
|
dataSrc?: undefined;
|
1199
1157
|
authenticate?: undefined;
|
@@ -62,42 +62,6 @@ exports.default = [
|
|
62
62
|
],
|
63
63
|
},
|
64
64
|
},
|
65
|
-
{
|
66
|
-
type: 'textfield',
|
67
|
-
weight: 10,
|
68
|
-
input: true,
|
69
|
-
key: 'indexeddb.database',
|
70
|
-
label: 'Database name',
|
71
|
-
tooltip: 'The name of the indexeddb database.',
|
72
|
-
conditional: {
|
73
|
-
json: { '===': [{ var: 'data.dataSrc' }, 'indexeddb'] },
|
74
|
-
},
|
75
|
-
},
|
76
|
-
{
|
77
|
-
type: 'textfield',
|
78
|
-
input: true,
|
79
|
-
key: 'indexeddb.table',
|
80
|
-
label: 'Table name',
|
81
|
-
weight: 16,
|
82
|
-
tooltip: 'The name of table in the indexeddb database.',
|
83
|
-
conditional: {
|
84
|
-
json: { '===': [{ var: 'data.dataSrc' }, 'indexeddb'] },
|
85
|
-
}
|
86
|
-
},
|
87
|
-
{
|
88
|
-
type: 'textarea',
|
89
|
-
as: 'json',
|
90
|
-
editor: 'ace',
|
91
|
-
weight: 18,
|
92
|
-
input: true,
|
93
|
-
key: 'indexeddb.filter',
|
94
|
-
label: 'Row Filter',
|
95
|
-
tooltip: 'Filter table items that match the object.',
|
96
|
-
defaultValue: {},
|
97
|
-
conditional: {
|
98
|
-
json: { '===': [{ var: 'data.dataSrc' }, 'indexeddb'] },
|
99
|
-
},
|
100
|
-
},
|
101
65
|
{
|
102
66
|
type: 'textarea',
|
103
67
|
as: 'json',
|
@@ -1626,6 +1626,10 @@ export default class WebformBuilder extends Component {
|
|
1626
1626
|
info.type);
|
1627
1627
|
}
|
1628
1628
|
hasEditTabs(type) {
|
1629
|
+
// If the component type does not exist then it has no edit tabs
|
1630
|
+
if (!Components.components[type]) {
|
1631
|
+
return false;
|
1632
|
+
}
|
1629
1633
|
const editTabs = getComponent(Components.components[type === 'custom' ? 'unknown' : type].editForm().components, 'tabs', true).components;
|
1630
1634
|
const hiddenEditTabs = _.filter(_.get(this.options, `editForm.${type}`, []), 'ignore');
|
1631
1635
|
return _.intersectionBy(editTabs, hiddenEditTabs, 'key').length !== editTabs.length;
|
package/lib/mjs/Wizard.d.ts
CHANGED
@@ -106,6 +106,7 @@ declare class Wizard extends Webform {
|
|
106
106
|
onChange(flags: any, changed: any, modified: any, changes: any): void;
|
107
107
|
checkValidity(data: any, dirty: any, row: any, currentPageOnly: any, childErrors?: any[]): any;
|
108
108
|
focusOnComponent(key: any): void | Promise<void>;
|
109
|
+
triggerButtonCaptcha(page: any): void;
|
109
110
|
}
|
110
111
|
declare namespace Wizard {
|
111
112
|
let setBaseUrl: any;
|
package/lib/mjs/Wizard.js
CHANGED
@@ -660,6 +660,7 @@ export default class Wizard extends Webform {
|
|
660
660
|
beforeSubmit() {
|
661
661
|
const pages = this.getPages({ all: true });
|
662
662
|
return Promise.all(pages.map((page) => {
|
663
|
+
this.triggerButtonCaptcha(page);
|
663
664
|
page.options.beforeSubmit = true;
|
664
665
|
return page.beforeSubmit();
|
665
666
|
}));
|
@@ -933,6 +934,22 @@ export default class Wizard extends Webform {
|
|
933
934
|
}
|
934
935
|
return super.focusOnComponent(key);
|
935
936
|
}
|
937
|
+
triggerButtonCaptcha(page) {
|
938
|
+
if (!page.components) {
|
939
|
+
return;
|
940
|
+
}
|
941
|
+
let captchaComponent;
|
942
|
+
page.eachComponent((component) => {
|
943
|
+
if (/^(re)?captcha$/.test(component.component.type) &&
|
944
|
+
component.component.eventType === 'buttonClick' &&
|
945
|
+
component.component.buttonKey === 'submit') {
|
946
|
+
captchaComponent = component;
|
947
|
+
}
|
948
|
+
});
|
949
|
+
if (captchaComponent) {
|
950
|
+
captchaComponent.verify(`submitClick`);
|
951
|
+
}
|
952
|
+
}
|
936
953
|
}
|
937
954
|
Wizard.setBaseUrl = Formio.setBaseUrl;
|
938
955
|
Wizard.setApiUrl = Formio.setApiUrl;
|
@@ -1487,7 +1487,7 @@ export default class SelectComponent extends ListComponent {
|
|
1487
1487
|
}
|
1488
1488
|
asString(value, options = {}) {
|
1489
1489
|
value = value ?? this.getValue();
|
1490
|
-
if (options.modalPreview || this.inDataTable) {
|
1490
|
+
if (options.modalPreview || this.inDataTable || options.email) {
|
1491
1491
|
if (this.inDataTable) {
|
1492
1492
|
value = this.undoValueTyping(value);
|
1493
1493
|
}
|