@formio/js 5.0.0-dev.5646.8734cf4 → 5.0.0-dev.5650.f58394c
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/dist/formio.form.js +23 -22
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.full.js +23 -22
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.js +1 -1
- package/dist/formio.min.js +1 -1
- package/dist/formio.utils.js +3 -3
- package/dist/formio.utils.min.js +1 -1
- package/lib/cjs/Webform.js +8 -1
- package/lib/cjs/components/datagrid/fixtures/index.d.ts +1 -2
- package/lib/cjs/components/datagrid/fixtures/index.js +1 -3
- package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +3 -4
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +3 -3
- package/lib/cjs/utils/utils.d.ts +10 -0
- package/lib/cjs/utils/utils.js +7 -59
- package/lib/mjs/Webform.js +7 -1
- package/lib/mjs/components/datagrid/fixtures/index.d.ts +1 -2
- package/lib/mjs/components/datagrid/fixtures/index.js +1 -2
- package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +3 -3
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +1 -1
- package/lib/mjs/utils/utils.d.ts +10 -0
- package/lib/mjs/utils/utils.js +7 -58
- package/package.json +2 -2
- package/lib/cjs/components/datagrid/fixtures/comp9.d.ts +0 -81
- package/lib/cjs/components/datagrid/fixtures/comp9.js +0 -87
- package/lib/mjs/components/datagrid/fixtures/comp9.d.ts +0 -81
- package/lib/mjs/components/datagrid/fixtures/comp9.js +0 -85
package/lib/cjs/Webform.js
CHANGED
|
@@ -1222,9 +1222,16 @@ class Webform extends NestedDataComponent_1.default {
|
|
|
1222
1222
|
* @param flags
|
|
1223
1223
|
*/
|
|
1224
1224
|
onChange(flags, changed, modified, changes) {
|
|
1225
|
+
var _a;
|
|
1225
1226
|
flags = flags || {};
|
|
1226
1227
|
let isChangeEventEmitted = false;
|
|
1227
|
-
|
|
1228
|
+
// If this Webform is a nested form, continue to bubble `modified` change to the root
|
|
1229
|
+
if (((_a = this.parent) === null || _a === void 0 ? void 0 : _a.subForm) === this) {
|
|
1230
|
+
super.onChange(Object.assign(Object.assign({}, flags), { modified }), false);
|
|
1231
|
+
}
|
|
1232
|
+
else {
|
|
1233
|
+
super.onChange(flags, true);
|
|
1234
|
+
}
|
|
1228
1235
|
const value = lodash_1.default.clone(this.submission);
|
|
1229
1236
|
flags.changed = value.changed = changed;
|
|
1230
1237
|
flags.changes = changes;
|
|
@@ -6,7 +6,6 @@ import comp5 from './comp5';
|
|
|
6
6
|
import comp6 from './comp6';
|
|
7
7
|
import comp7 from './comp7';
|
|
8
8
|
import comp8 from './comp8';
|
|
9
|
-
import comp9 from './comp9';
|
|
10
9
|
import withCollapsibleRowGroups from './comp-with-collapsible-groups';
|
|
11
10
|
import withConditionalFieldsAndValidations from './comp-with-conditional-components-and-validations';
|
|
12
11
|
import withDefValue from './comp-with-def-value';
|
|
@@ -15,4 +14,4 @@ import withRowGroupsAndDefValue from './comp-row-groups-with-def-value';
|
|
|
15
14
|
import modalWithRequiredFields from './comp-modal-with-required-fields';
|
|
16
15
|
import withAllowCalculateOverride from './comp-with-allow-calculate-override';
|
|
17
16
|
import twoWithAllowCalculatedOverride from './two-comp-with-allow-calculate-override';
|
|
18
|
-
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8,
|
|
17
|
+
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, withCollapsibleRowGroups, withConditionalFieldsAndValidations, withDefValue, withLogic, withRowGroupsAndDefValue, modalWithRequiredFields, withAllowCalculateOverride, twoWithAllowCalculatedOverride };
|
|
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.twoWithAllowCalculatedOverride = exports.withAllowCalculateOverride = exports.modalWithRequiredFields = exports.withRowGroupsAndDefValue = exports.withLogic = exports.withDefValue = exports.withConditionalFieldsAndValidations = exports.withCollapsibleRowGroups = exports.
|
|
6
|
+
exports.twoWithAllowCalculatedOverride = exports.withAllowCalculateOverride = exports.modalWithRequiredFields = exports.withRowGroupsAndDefValue = exports.withLogic = exports.withDefValue = exports.withConditionalFieldsAndValidations = exports.withCollapsibleRowGroups = exports.comp8 = exports.comp7 = exports.comp6 = exports.comp5 = exports.comp4 = exports.comp3 = exports.comp2 = exports.comp1 = void 0;
|
|
7
7
|
const comp1_1 = __importDefault(require("./comp1"));
|
|
8
8
|
exports.comp1 = comp1_1.default;
|
|
9
9
|
const comp2_1 = __importDefault(require("./comp2"));
|
|
@@ -20,8 +20,6 @@ const comp7_1 = __importDefault(require("./comp7"));
|
|
|
20
20
|
exports.comp7 = comp7_1.default;
|
|
21
21
|
const comp8_1 = __importDefault(require("./comp8"));
|
|
22
22
|
exports.comp8 = comp8_1.default;
|
|
23
|
-
const comp9_1 = __importDefault(require("./comp9"));
|
|
24
|
-
exports.comp9 = comp9_1.default;
|
|
25
23
|
const comp_with_def_value_1 = __importDefault(require("./comp-with-def-value"));
|
|
26
24
|
exports.withDefValue = comp_with_def_value_1.default;
|
|
27
25
|
const comp_row_groups_with_def_value_1 = __importDefault(require("./comp-row-groups-with-def-value"));
|
|
@@ -16,11 +16,10 @@ class IsEmptyValue extends ConditionOperator_1.default {
|
|
|
16
16
|
return false;
|
|
17
17
|
}
|
|
18
18
|
execute({ value, instance, conditionComponentPath }) {
|
|
19
|
-
|
|
20
|
-
const isEmptyValue = lodash_1.default.isEmpty(lodash_1.default.isNumber(value) ? String(value) : value);
|
|
19
|
+
const isEmptyValue = lodash_1.default.isEmpty(value);
|
|
21
20
|
if (instance && instance.root) {
|
|
22
|
-
const conditionTriggerComponent =
|
|
23
|
-
return
|
|
21
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
|
22
|
+
return conditionTriggerComponent ? conditionTriggerComponent.isEmpty() : isEmptyValue;
|
|
24
23
|
}
|
|
25
24
|
return isEmptyValue;
|
|
26
25
|
}
|
|
@@ -14,7 +14,7 @@ class IsEqualTo extends ConditionOperator_1.default {
|
|
|
14
14
|
return 'Is Equal To';
|
|
15
15
|
}
|
|
16
16
|
execute({ value, comparedValue, instance, conditionComponentPath }) {
|
|
17
|
-
var _a
|
|
17
|
+
var _a;
|
|
18
18
|
if ((value || value === false) && comparedValue && typeof value !== typeof comparedValue && lodash_1.default.isString(comparedValue)) {
|
|
19
19
|
try {
|
|
20
20
|
comparedValue = JSON.parse(comparedValue);
|
|
@@ -23,10 +23,10 @@ class IsEqualTo extends ConditionOperator_1.default {
|
|
|
23
23
|
catch (e) { }
|
|
24
24
|
}
|
|
25
25
|
if (instance && instance.root) {
|
|
26
|
-
const conditionTriggerComponent =
|
|
26
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
|
27
27
|
if (conditionTriggerComponent
|
|
28
28
|
&& (0, utils_1.isSelectResourceWithObjectValue)(conditionTriggerComponent.component)
|
|
29
|
-
&& ((
|
|
29
|
+
&& ((_a = conditionTriggerComponent.component) === null || _a === void 0 ? void 0 : _a.template)) {
|
|
30
30
|
if (!value || !lodash_1.default.isPlainObject(value)) {
|
|
31
31
|
return false;
|
|
32
32
|
}
|
package/lib/cjs/utils/utils.d.ts
CHANGED
|
@@ -60,6 +60,16 @@ export function isMongoId(text: any): any[] | {
|
|
|
60
60
|
* The full submission data.
|
|
61
61
|
*/
|
|
62
62
|
export function checkCalculated(component: Object, submission: Object, rowData: any): void;
|
|
63
|
+
/**
|
|
64
|
+
* Check if a simple conditional evaluates to true.
|
|
65
|
+
*
|
|
66
|
+
* @param condition
|
|
67
|
+
* @param condition
|
|
68
|
+
* @param row
|
|
69
|
+
* @param data
|
|
70
|
+
* @param instance
|
|
71
|
+
* @returns {boolean}
|
|
72
|
+
*/
|
|
63
73
|
export function checkSimpleConditional(component: any, condition: any, row: any, data: any, instance: any): boolean;
|
|
64
74
|
export function getComponentActualValue(compPath: any, data: any, row: any): any;
|
|
65
75
|
/**
|
package/lib/cjs/utils/utils.js
CHANGED
|
@@ -246,44 +246,6 @@ exports.checkCalculated = checkCalculated;
|
|
|
246
246
|
* @param instance
|
|
247
247
|
* @returns {boolean}
|
|
248
248
|
*/
|
|
249
|
-
function getConditionalPathsRecursive(conditionPaths, data) {
|
|
250
|
-
let currentGlobalIndex = 0;
|
|
251
|
-
const conditionalPathsArray = [];
|
|
252
|
-
const getConditionalPaths = (data, currentPath = '', localIndex = 0) => {
|
|
253
|
-
currentPath = currentPath.replace(/^\.+|\.+$/g, '');
|
|
254
|
-
const currentLocalIndex = localIndex;
|
|
255
|
-
const currentData = lodash_1.default.get(data, currentPath);
|
|
256
|
-
if (Array.isArray(currentData) && currentData.filter(Boolean).length > 0) {
|
|
257
|
-
if (currentData.some(element => typeof element !== 'object')) {
|
|
258
|
-
return;
|
|
259
|
-
}
|
|
260
|
-
const hasInnerDataArray = currentData.find(x => Array.isArray(x[conditionPaths[currentLocalIndex]]));
|
|
261
|
-
if (hasInnerDataArray) {
|
|
262
|
-
currentData.forEach((_, indexOutside) => {
|
|
263
|
-
const innerCompDataPath = `${currentPath}[${indexOutside}].${conditionPaths[currentLocalIndex]}`;
|
|
264
|
-
getConditionalPaths(data, innerCompDataPath, currentLocalIndex + 1);
|
|
265
|
-
});
|
|
266
|
-
}
|
|
267
|
-
else {
|
|
268
|
-
currentData.forEach((x, index) => {
|
|
269
|
-
if (!lodash_1.default.isNil(x[conditionPaths[currentLocalIndex]])) {
|
|
270
|
-
const compDataPath = `${currentPath}[${index}].${conditionPaths[currentLocalIndex]}`;
|
|
271
|
-
conditionalPathsArray.push(compDataPath);
|
|
272
|
-
}
|
|
273
|
-
});
|
|
274
|
-
}
|
|
275
|
-
}
|
|
276
|
-
else {
|
|
277
|
-
if (!conditionPaths[currentGlobalIndex]) {
|
|
278
|
-
return;
|
|
279
|
-
}
|
|
280
|
-
currentGlobalIndex = currentGlobalIndex + 1;
|
|
281
|
-
getConditionalPaths(data, `${currentPath}.${conditionPaths[currentGlobalIndex - 1]}`, currentGlobalIndex);
|
|
282
|
-
}
|
|
283
|
-
};
|
|
284
|
-
getConditionalPaths(data);
|
|
285
|
-
return conditionalPathsArray;
|
|
286
|
-
}
|
|
287
249
|
function checkSimpleConditional(component, condition, row, data, instance) {
|
|
288
250
|
if (condition.when) {
|
|
289
251
|
const value = getComponentActualValue(condition.when, data, row);
|
|
@@ -305,37 +267,23 @@ function checkSimpleConditional(component, condition, row, data, instance) {
|
|
|
305
267
|
return true;
|
|
306
268
|
}
|
|
307
269
|
const conditionsResult = lodash_1.default.map(conditions, (cond) => {
|
|
308
|
-
var _a, _b;
|
|
309
270
|
const { value: comparedValue, operator, component: conditionComponentPath } = cond;
|
|
310
271
|
if (!conditionComponentPath) {
|
|
311
272
|
return true;
|
|
312
273
|
}
|
|
313
|
-
const
|
|
314
|
-
const
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
const ConditionOperator = conditionOperators_1.default[operator];
|
|
319
|
-
return ConditionOperator
|
|
320
|
-
? new ConditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
321
|
-
: true;
|
|
322
|
-
});
|
|
323
|
-
}
|
|
324
|
-
else {
|
|
325
|
-
const value = getComponentActualValue(conditionComponentPath, data, row);
|
|
326
|
-
const СonditionOperator = conditionOperators_1.default[operator];
|
|
327
|
-
return СonditionOperator
|
|
328
|
-
? new СonditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
329
|
-
: true;
|
|
330
|
-
}
|
|
274
|
+
const value = getComponentActualValue(conditionComponentPath, data, row);
|
|
275
|
+
const ConditionOperator = conditionOperators_1.default[operator];
|
|
276
|
+
return ConditionOperator
|
|
277
|
+
? new ConditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
278
|
+
: true;
|
|
331
279
|
});
|
|
332
280
|
let result = false;
|
|
333
281
|
switch (conjunction) {
|
|
334
282
|
case 'any':
|
|
335
|
-
result = lodash_1.default.some(conditionsResult
|
|
283
|
+
result = lodash_1.default.some(conditionsResult, res => !!res);
|
|
336
284
|
break;
|
|
337
285
|
default:
|
|
338
|
-
result = lodash_1.default.every(conditionsResult
|
|
286
|
+
result = lodash_1.default.every(conditionsResult, res => !!res);
|
|
339
287
|
}
|
|
340
288
|
return show ? result : !result;
|
|
341
289
|
}
|
package/lib/mjs/Webform.js
CHANGED
|
@@ -1226,7 +1226,13 @@ export default class Webform extends NestedDataComponent {
|
|
|
1226
1226
|
onChange(flags, changed, modified, changes) {
|
|
1227
1227
|
flags = flags || {};
|
|
1228
1228
|
let isChangeEventEmitted = false;
|
|
1229
|
-
|
|
1229
|
+
// If this Webform is a nested form, continue to bubble `modified` change to the root
|
|
1230
|
+
if (this.parent?.subForm === this) {
|
|
1231
|
+
super.onChange({ ...flags, modified }, false);
|
|
1232
|
+
}
|
|
1233
|
+
else {
|
|
1234
|
+
super.onChange(flags, true);
|
|
1235
|
+
}
|
|
1230
1236
|
const value = _.clone(this.submission);
|
|
1231
1237
|
flags.changed = value.changed = changed;
|
|
1232
1238
|
flags.changes = changes;
|
|
@@ -6,7 +6,6 @@ import comp5 from './comp5';
|
|
|
6
6
|
import comp6 from './comp6';
|
|
7
7
|
import comp7 from './comp7';
|
|
8
8
|
import comp8 from './comp8';
|
|
9
|
-
import comp9 from './comp9';
|
|
10
9
|
import withCollapsibleRowGroups from './comp-with-collapsible-groups';
|
|
11
10
|
import withConditionalFieldsAndValidations from './comp-with-conditional-components-and-validations';
|
|
12
11
|
import withDefValue from './comp-with-def-value';
|
|
@@ -15,4 +14,4 @@ import withRowGroupsAndDefValue from './comp-row-groups-with-def-value';
|
|
|
15
14
|
import modalWithRequiredFields from './comp-modal-with-required-fields';
|
|
16
15
|
import withAllowCalculateOverride from './comp-with-allow-calculate-override';
|
|
17
16
|
import twoWithAllowCalculatedOverride from './two-comp-with-allow-calculate-override';
|
|
18
|
-
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8,
|
|
17
|
+
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, withCollapsibleRowGroups, withConditionalFieldsAndValidations, withDefValue, withLogic, withRowGroupsAndDefValue, modalWithRequiredFields, withAllowCalculateOverride, twoWithAllowCalculatedOverride };
|
|
@@ -6,7 +6,6 @@ import comp5 from './comp5';
|
|
|
6
6
|
import comp6 from './comp6';
|
|
7
7
|
import comp7 from './comp7';
|
|
8
8
|
import comp8 from './comp8';
|
|
9
|
-
import comp9 from './comp9';
|
|
10
9
|
import withDefValue from './comp-with-def-value';
|
|
11
10
|
import withRowGroupsAndDefValue from './comp-row-groups-with-def-value';
|
|
12
11
|
import modalWithRequiredFields from './comp-modal-with-required-fields';
|
|
@@ -15,4 +14,4 @@ import withLogic from './comp-with-logic';
|
|
|
15
14
|
import withCollapsibleRowGroups from './comp-with-collapsible-groups';
|
|
16
15
|
import withAllowCalculateOverride from './comp-with-allow-calculate-override';
|
|
17
16
|
import twoWithAllowCalculatedOverride from './two-comp-with-allow-calculate-override';
|
|
18
|
-
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8,
|
|
17
|
+
export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, withCollapsibleRowGroups, withConditionalFieldsAndValidations, withDefValue, withLogic, withRowGroupsAndDefValue, modalWithRequiredFields, withAllowCalculateOverride, twoWithAllowCalculatedOverride };
|
|
@@ -11,10 +11,10 @@ export default class IsEmptyValue extends ConditionOperator {
|
|
|
11
11
|
return false;
|
|
12
12
|
}
|
|
13
13
|
execute({ value, instance, conditionComponentPath }) {
|
|
14
|
-
const isEmptyValue = _.isEmpty(
|
|
14
|
+
const isEmptyValue = _.isEmpty(value);
|
|
15
15
|
if (instance && instance.root) {
|
|
16
|
-
const conditionTriggerComponent = instance.root
|
|
17
|
-
return conditionTriggerComponent
|
|
16
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
|
17
|
+
return conditionTriggerComponent ? conditionTriggerComponent.isEmpty() : isEmptyValue;
|
|
18
18
|
}
|
|
19
19
|
return isEmptyValue;
|
|
20
20
|
}
|
|
@@ -17,7 +17,7 @@ export default class IsEqualTo extends ConditionOperator {
|
|
|
17
17
|
catch (e) { }
|
|
18
18
|
}
|
|
19
19
|
if (instance && instance.root) {
|
|
20
|
-
const conditionTriggerComponent = instance.root
|
|
20
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
|
21
21
|
if (conditionTriggerComponent
|
|
22
22
|
&& isSelectResourceWithObjectValue(conditionTriggerComponent.component)
|
|
23
23
|
&& conditionTriggerComponent.component?.template) {
|
package/lib/mjs/utils/utils.d.ts
CHANGED
|
@@ -60,6 +60,16 @@ export function isMongoId(text: any): any[] | {
|
|
|
60
60
|
* The full submission data.
|
|
61
61
|
*/
|
|
62
62
|
export function checkCalculated(component: Object, submission: Object, rowData: any): void;
|
|
63
|
+
/**
|
|
64
|
+
* Check if a simple conditional evaluates to true.
|
|
65
|
+
*
|
|
66
|
+
* @param condition
|
|
67
|
+
* @param condition
|
|
68
|
+
* @param row
|
|
69
|
+
* @param data
|
|
70
|
+
* @param instance
|
|
71
|
+
* @returns {boolean}
|
|
72
|
+
*/
|
|
63
73
|
export function checkSimpleConditional(component: any, condition: any, row: any, data: any, instance: any): boolean;
|
|
64
74
|
export function getComponentActualValue(compPath: any, data: any, row: any): any;
|
|
65
75
|
/**
|
package/lib/mjs/utils/utils.js
CHANGED
|
@@ -201,44 +201,6 @@ export function checkCalculated(component, submission, rowData) {
|
|
|
201
201
|
* @param instance
|
|
202
202
|
* @returns {boolean}
|
|
203
203
|
*/
|
|
204
|
-
function getConditionalPathsRecursive(conditionPaths, data) {
|
|
205
|
-
let currentGlobalIndex = 0;
|
|
206
|
-
const conditionalPathsArray = [];
|
|
207
|
-
const getConditionalPaths = (data, currentPath = '', localIndex = 0) => {
|
|
208
|
-
currentPath = currentPath.replace(/^\.+|\.+$/g, '');
|
|
209
|
-
const currentLocalIndex = localIndex;
|
|
210
|
-
const currentData = _.get(data, currentPath);
|
|
211
|
-
if (Array.isArray(currentData) && currentData.filter(Boolean).length > 0) {
|
|
212
|
-
if (currentData.some(element => typeof element !== 'object')) {
|
|
213
|
-
return;
|
|
214
|
-
}
|
|
215
|
-
const hasInnerDataArray = currentData.find(x => Array.isArray(x[conditionPaths[currentLocalIndex]]));
|
|
216
|
-
if (hasInnerDataArray) {
|
|
217
|
-
currentData.forEach((_, indexOutside) => {
|
|
218
|
-
const innerCompDataPath = `${currentPath}[${indexOutside}].${conditionPaths[currentLocalIndex]}`;
|
|
219
|
-
getConditionalPaths(data, innerCompDataPath, currentLocalIndex + 1);
|
|
220
|
-
});
|
|
221
|
-
}
|
|
222
|
-
else {
|
|
223
|
-
currentData.forEach((x, index) => {
|
|
224
|
-
if (!_.isNil(x[conditionPaths[currentLocalIndex]])) {
|
|
225
|
-
const compDataPath = `${currentPath}[${index}].${conditionPaths[currentLocalIndex]}`;
|
|
226
|
-
conditionalPathsArray.push(compDataPath);
|
|
227
|
-
}
|
|
228
|
-
});
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
else {
|
|
232
|
-
if (!conditionPaths[currentGlobalIndex]) {
|
|
233
|
-
return;
|
|
234
|
-
}
|
|
235
|
-
currentGlobalIndex = currentGlobalIndex + 1;
|
|
236
|
-
getConditionalPaths(data, `${currentPath}.${conditionPaths[currentGlobalIndex - 1]}`, currentGlobalIndex);
|
|
237
|
-
}
|
|
238
|
-
};
|
|
239
|
-
getConditionalPaths(data);
|
|
240
|
-
return conditionalPathsArray;
|
|
241
|
-
}
|
|
242
204
|
export function checkSimpleConditional(component, condition, row, data, instance) {
|
|
243
205
|
if (condition.when) {
|
|
244
206
|
const value = getComponentActualValue(condition.when, data, row);
|
|
@@ -264,32 +226,19 @@ export function checkSimpleConditional(component, condition, row, data, instance
|
|
|
264
226
|
if (!conditionComponentPath) {
|
|
265
227
|
return true;
|
|
266
228
|
}
|
|
267
|
-
const
|
|
268
|
-
const
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
const ConditionOperator = ConditionOperators[operator];
|
|
273
|
-
return ConditionOperator
|
|
274
|
-
? new ConditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
275
|
-
: true;
|
|
276
|
-
});
|
|
277
|
-
}
|
|
278
|
-
else {
|
|
279
|
-
const value = getComponentActualValue(conditionComponentPath, data, row);
|
|
280
|
-
const СonditionOperator = ConditionOperators[operator];
|
|
281
|
-
return СonditionOperator
|
|
282
|
-
? new СonditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
283
|
-
: true;
|
|
284
|
-
}
|
|
229
|
+
const value = getComponentActualValue(conditionComponentPath, data, row);
|
|
230
|
+
const ConditionOperator = ConditionOperators[operator];
|
|
231
|
+
return ConditionOperator
|
|
232
|
+
? new ConditionOperator().getResult({ value, comparedValue, instance, component, conditionComponentPath })
|
|
233
|
+
: true;
|
|
285
234
|
});
|
|
286
235
|
let result = false;
|
|
287
236
|
switch (conjunction) {
|
|
288
237
|
case 'any':
|
|
289
|
-
result = _.some(conditionsResult
|
|
238
|
+
result = _.some(conditionsResult, res => !!res);
|
|
290
239
|
break;
|
|
291
240
|
default:
|
|
292
|
-
result = _.every(conditionsResult
|
|
241
|
+
result = _.every(conditionsResult, res => !!res);
|
|
293
242
|
}
|
|
294
243
|
return show ? result : !result;
|
|
295
244
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@formio/js",
|
|
3
|
-
"version": "5.0.0-dev.
|
|
3
|
+
"version": "5.0.0-dev.5650.f58394c",
|
|
4
4
|
"description": "JavaScript powered Forms with JSON Form Builder",
|
|
5
5
|
"main": "lib/cjs/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -77,7 +77,7 @@
|
|
|
77
77
|
"dependencies": {
|
|
78
78
|
"@formio/bootstrap": "^3.0.0-rc.22",
|
|
79
79
|
"@formio/choices.js": "^10.2.1",
|
|
80
|
-
"@formio/core": "2.0.0-dev.
|
|
80
|
+
"@formio/core": "2.0.0-dev.102.df37631",
|
|
81
81
|
"@formio/text-mask-addons": "^3.8.0-formio.2",
|
|
82
82
|
"@formio/vanilla-text-mask": "^5.1.1-formio.1",
|
|
83
83
|
"abortcontroller-polyfill": "^1.7.5",
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
declare namespace _default {
|
|
2
|
-
let title: string;
|
|
3
|
-
let name: string;
|
|
4
|
-
let path: string;
|
|
5
|
-
let type: string;
|
|
6
|
-
let display: string;
|
|
7
|
-
let components: ({
|
|
8
|
-
label: string;
|
|
9
|
-
reorder: boolean;
|
|
10
|
-
addAnotherPosition: string;
|
|
11
|
-
layoutFixed: boolean;
|
|
12
|
-
enableRowGroups: boolean;
|
|
13
|
-
initEmpty: boolean;
|
|
14
|
-
tableView: boolean;
|
|
15
|
-
defaultValue: {}[];
|
|
16
|
-
validate: {
|
|
17
|
-
required: boolean;
|
|
18
|
-
};
|
|
19
|
-
key: string;
|
|
20
|
-
type: string;
|
|
21
|
-
input: boolean;
|
|
22
|
-
components: {
|
|
23
|
-
label: string;
|
|
24
|
-
columns: ({
|
|
25
|
-
components: {
|
|
26
|
-
label: string;
|
|
27
|
-
applyMaskOn: string;
|
|
28
|
-
tableView: boolean;
|
|
29
|
-
key: string;
|
|
30
|
-
type: string;
|
|
31
|
-
input: boolean;
|
|
32
|
-
}[];
|
|
33
|
-
width: number;
|
|
34
|
-
offset: number;
|
|
35
|
-
push: number;
|
|
36
|
-
pull: number;
|
|
37
|
-
size: string;
|
|
38
|
-
currentWidth: number;
|
|
39
|
-
} | {
|
|
40
|
-
components: {
|
|
41
|
-
label: string;
|
|
42
|
-
tableView: boolean;
|
|
43
|
-
key: string;
|
|
44
|
-
type: string;
|
|
45
|
-
input: boolean;
|
|
46
|
-
}[];
|
|
47
|
-
width: number;
|
|
48
|
-
offset: number;
|
|
49
|
-
push: number;
|
|
50
|
-
pull: number;
|
|
51
|
-
size: string;
|
|
52
|
-
currentWidth: number;
|
|
53
|
-
})[];
|
|
54
|
-
key: string;
|
|
55
|
-
type: string;
|
|
56
|
-
input: boolean;
|
|
57
|
-
tableView: boolean;
|
|
58
|
-
}[];
|
|
59
|
-
disableOnInvalid?: undefined;
|
|
60
|
-
} | {
|
|
61
|
-
type: string;
|
|
62
|
-
label: string;
|
|
63
|
-
key: string;
|
|
64
|
-
disableOnInvalid: boolean;
|
|
65
|
-
input: boolean;
|
|
66
|
-
tableView: boolean;
|
|
67
|
-
reorder?: undefined;
|
|
68
|
-
addAnotherPosition?: undefined;
|
|
69
|
-
layoutFixed?: undefined;
|
|
70
|
-
enableRowGroups?: undefined;
|
|
71
|
-
initEmpty?: undefined;
|
|
72
|
-
defaultValue?: undefined;
|
|
73
|
-
validate?: undefined;
|
|
74
|
-
components?: undefined;
|
|
75
|
-
})[];
|
|
76
|
-
let pdfComponents: never[];
|
|
77
|
-
namespace settings {
|
|
78
|
-
let logs: string;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
export default _default;
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.default = {
|
|
4
|
-
title: 'randomName',
|
|
5
|
-
name: 'randomName',
|
|
6
|
-
path: 'randomName',
|
|
7
|
-
type: 'form',
|
|
8
|
-
display: 'form',
|
|
9
|
-
components: [
|
|
10
|
-
{
|
|
11
|
-
label: 'Data Grid',
|
|
12
|
-
reorder: false,
|
|
13
|
-
addAnotherPosition: 'bottom',
|
|
14
|
-
layoutFixed: false,
|
|
15
|
-
enableRowGroups: false,
|
|
16
|
-
initEmpty: false,
|
|
17
|
-
tableView: false,
|
|
18
|
-
defaultValue: [
|
|
19
|
-
{}
|
|
20
|
-
],
|
|
21
|
-
validate: {
|
|
22
|
-
required: true
|
|
23
|
-
},
|
|
24
|
-
key: 'dataGrid',
|
|
25
|
-
type: 'datagrid',
|
|
26
|
-
input: true,
|
|
27
|
-
components: [
|
|
28
|
-
{
|
|
29
|
-
label: 'Columns',
|
|
30
|
-
columns: [
|
|
31
|
-
{
|
|
32
|
-
components: [
|
|
33
|
-
{
|
|
34
|
-
label: 'Text Field',
|
|
35
|
-
applyMaskOn: 'change',
|
|
36
|
-
tableView: true,
|
|
37
|
-
key: 'textField',
|
|
38
|
-
type: 'textfield',
|
|
39
|
-
input: true
|
|
40
|
-
}
|
|
41
|
-
],
|
|
42
|
-
width: 6,
|
|
43
|
-
offset: 0,
|
|
44
|
-
push: 0,
|
|
45
|
-
pull: 0,
|
|
46
|
-
size: 'md',
|
|
47
|
-
currentWidth: 6
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
components: [
|
|
51
|
-
{
|
|
52
|
-
label: 'Checkbox',
|
|
53
|
-
tableView: false,
|
|
54
|
-
key: 'checkbox',
|
|
55
|
-
type: 'checkbox',
|
|
56
|
-
input: true
|
|
57
|
-
}
|
|
58
|
-
],
|
|
59
|
-
width: 6,
|
|
60
|
-
offset: 0,
|
|
61
|
-
push: 0,
|
|
62
|
-
pull: 0,
|
|
63
|
-
size: 'md',
|
|
64
|
-
currentWidth: 6
|
|
65
|
-
}
|
|
66
|
-
],
|
|
67
|
-
key: 'columns',
|
|
68
|
-
type: 'columns',
|
|
69
|
-
input: false,
|
|
70
|
-
tableView: false
|
|
71
|
-
}
|
|
72
|
-
]
|
|
73
|
-
},
|
|
74
|
-
{
|
|
75
|
-
type: 'button',
|
|
76
|
-
label: 'Submit',
|
|
77
|
-
key: 'submit',
|
|
78
|
-
disableOnInvalid: true,
|
|
79
|
-
input: true,
|
|
80
|
-
tableView: false
|
|
81
|
-
}
|
|
82
|
-
],
|
|
83
|
-
pdfComponents: [],
|
|
84
|
-
settings: {
|
|
85
|
-
logs: 'true'
|
|
86
|
-
}
|
|
87
|
-
};
|
|
@@ -1,81 +0,0 @@
|
|
|
1
|
-
declare namespace _default {
|
|
2
|
-
let title: string;
|
|
3
|
-
let name: string;
|
|
4
|
-
let path: string;
|
|
5
|
-
let type: string;
|
|
6
|
-
let display: string;
|
|
7
|
-
let components: ({
|
|
8
|
-
label: string;
|
|
9
|
-
reorder: boolean;
|
|
10
|
-
addAnotherPosition: string;
|
|
11
|
-
layoutFixed: boolean;
|
|
12
|
-
enableRowGroups: boolean;
|
|
13
|
-
initEmpty: boolean;
|
|
14
|
-
tableView: boolean;
|
|
15
|
-
defaultValue: {}[];
|
|
16
|
-
validate: {
|
|
17
|
-
required: boolean;
|
|
18
|
-
};
|
|
19
|
-
key: string;
|
|
20
|
-
type: string;
|
|
21
|
-
input: boolean;
|
|
22
|
-
components: {
|
|
23
|
-
label: string;
|
|
24
|
-
columns: ({
|
|
25
|
-
components: {
|
|
26
|
-
label: string;
|
|
27
|
-
applyMaskOn: string;
|
|
28
|
-
tableView: boolean;
|
|
29
|
-
key: string;
|
|
30
|
-
type: string;
|
|
31
|
-
input: boolean;
|
|
32
|
-
}[];
|
|
33
|
-
width: number;
|
|
34
|
-
offset: number;
|
|
35
|
-
push: number;
|
|
36
|
-
pull: number;
|
|
37
|
-
size: string;
|
|
38
|
-
currentWidth: number;
|
|
39
|
-
} | {
|
|
40
|
-
components: {
|
|
41
|
-
label: string;
|
|
42
|
-
tableView: boolean;
|
|
43
|
-
key: string;
|
|
44
|
-
type: string;
|
|
45
|
-
input: boolean;
|
|
46
|
-
}[];
|
|
47
|
-
width: number;
|
|
48
|
-
offset: number;
|
|
49
|
-
push: number;
|
|
50
|
-
pull: number;
|
|
51
|
-
size: string;
|
|
52
|
-
currentWidth: number;
|
|
53
|
-
})[];
|
|
54
|
-
key: string;
|
|
55
|
-
type: string;
|
|
56
|
-
input: boolean;
|
|
57
|
-
tableView: boolean;
|
|
58
|
-
}[];
|
|
59
|
-
disableOnInvalid?: undefined;
|
|
60
|
-
} | {
|
|
61
|
-
type: string;
|
|
62
|
-
label: string;
|
|
63
|
-
key: string;
|
|
64
|
-
disableOnInvalid: boolean;
|
|
65
|
-
input: boolean;
|
|
66
|
-
tableView: boolean;
|
|
67
|
-
reorder?: undefined;
|
|
68
|
-
addAnotherPosition?: undefined;
|
|
69
|
-
layoutFixed?: undefined;
|
|
70
|
-
enableRowGroups?: undefined;
|
|
71
|
-
initEmpty?: undefined;
|
|
72
|
-
defaultValue?: undefined;
|
|
73
|
-
validate?: undefined;
|
|
74
|
-
components?: undefined;
|
|
75
|
-
})[];
|
|
76
|
-
let pdfComponents: never[];
|
|
77
|
-
namespace settings {
|
|
78
|
-
let logs: string;
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
export default _default;
|