@formio/js 5.0.0-rc.78 → 5.0.0-rc.79
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/formio.embed.js +1 -1
- package/dist/formio.embed.min.js +1 -1
- package/dist/formio.embed.min.js.LICENSE.txt +1 -1
- package/dist/formio.form.js +21 -21
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.form.min.js.LICENSE.txt +2 -2
- package/dist/formio.full.js +28 -28
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.full.min.js.LICENSE.txt +2 -2
- package/dist/formio.js +3 -3
- package/dist/formio.min.js +1 -1
- package/dist/formio.min.js.LICENSE.txt +1 -1
- package/dist/formio.utils.js +12 -12
- package/dist/formio.utils.min.js +1 -1
- package/dist/formio.utils.min.js.LICENSE.txt +2 -2
- package/lib/cjs/Webform.js +5 -2
- package/lib/cjs/components/_classes/component/Component.js +2 -2
- package/lib/cjs/components/_classes/multivalue/Multivalue.d.ts +8 -0
- package/lib/cjs/components/_classes/multivalue/Multivalue.js +18 -12
- package/lib/cjs/components/day/Day.d.ts +5 -0
- package/lib/cjs/components/day/Day.js +52 -12
- package/lib/cjs/components/day/editForm/Day.edit.day.d.ts +17 -0
- package/lib/cjs/components/day/editForm/Day.edit.day.js +19 -0
- package/lib/cjs/components/day/editForm/Day.edit.month.d.ts +5 -0
- package/lib/cjs/components/day/editForm/Day.edit.month.js +19 -0
- package/lib/cjs/components/day/editForm/Day.edit.year.d.ts +5 -0
- package/lib/cjs/components/day/editForm/Day.edit.year.js +13 -0
- package/lib/cjs/components/radio/Radio.js +1 -1
- package/lib/cjs/components/select/Select.js +5 -2
- package/lib/cjs/components/select/editForm/Select.edit.validation.js +2 -1
- package/lib/cjs/components/select/fixtures/comp27.d.ts +18 -0
- package/lib/cjs/components/select/fixtures/comp27.js +19 -0
- package/lib/cjs/components/select/fixtures/index.d.ts +2 -1
- package/lib/cjs/components/select/fixtures/index.js +5 -1
- package/lib/cjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/cjs/utils/conditionOperators/DateGreaterThan.js +2 -1
- package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +2 -2
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +2 -2
- package/lib/cjs/utils/formUtils.d.ts +1 -2
- package/lib/cjs/utils/formUtils.js +2 -3
- package/lib/mjs/Webform.js +9 -2
- package/lib/mjs/components/_classes/component/Component.js +2 -2
- package/lib/mjs/components/_classes/multivalue/Multivalue.d.ts +8 -0
- package/lib/mjs/components/_classes/multivalue/Multivalue.js +18 -12
- package/lib/mjs/components/day/Day.d.ts +5 -0
- package/lib/mjs/components/day/Day.js +52 -12
- package/lib/mjs/components/day/editForm/Day.edit.day.d.ts +17 -0
- package/lib/mjs/components/day/editForm/Day.edit.day.js +16 -0
- package/lib/mjs/components/day/editForm/Day.edit.month.d.ts +5 -0
- package/lib/mjs/components/day/editForm/Day.edit.month.js +16 -0
- package/lib/mjs/components/day/editForm/Day.edit.year.d.ts +5 -0
- package/lib/mjs/components/day/editForm/Day.edit.year.js +10 -0
- package/lib/mjs/components/radio/Radio.js +1 -1
- package/lib/mjs/components/select/Select.js +5 -2
- package/lib/mjs/components/select/editForm/Select.edit.validation.js +2 -1
- package/lib/mjs/components/select/fixtures/comp27.d.ts +18 -0
- package/lib/mjs/components/select/fixtures/comp27.js +17 -0
- package/lib/mjs/components/select/fixtures/index.d.ts +2 -1
- package/lib/mjs/components/select/fixtures/index.js +3 -1
- package/lib/mjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/mjs/utils/conditionOperators/DateGreaterThan.js +1 -1
- package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +2 -2
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +2 -2
- package/lib/mjs/utils/formUtils.d.ts +1 -2
- package/lib/mjs/utils/formUtils.js +2 -2
- package/package.json +2 -2
@@ -18,9 +18,9 @@
|
|
18
18
|
* MIT licensed
|
19
19
|
*/
|
20
20
|
|
21
|
-
/*! @license DOMPurify 3.1.
|
21
|
+
/*! @license DOMPurify 3.1.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.1.6/LICENSE */
|
22
22
|
|
23
|
-
/*! formiojs v5.0.0-rc.
|
23
|
+
/*! formiojs v5.0.0-rc.79 | https://unpkg.com/formiojs@5.0.0-rc.79/LICENSE.txt */
|
24
24
|
|
25
25
|
/**
|
26
26
|
* @license
|
package/lib/cjs/Webform.js
CHANGED
@@ -1089,6 +1089,9 @@ class Webform extends NestedDataComponent_1.default {
|
|
1089
1089
|
if (!Array.isArray(errors)) {
|
1090
1090
|
errors = [errors];
|
1091
1091
|
}
|
1092
|
+
if (Array.isArray(this.errors)) {
|
1093
|
+
errors = lodash_1.default.union(errors, this.errors);
|
1094
|
+
}
|
1092
1095
|
errors = errors.concat(this.customErrors).filter((err) => !!err);
|
1093
1096
|
if (!errors.length) {
|
1094
1097
|
this.setAlert(false);
|
@@ -1236,10 +1239,10 @@ class Webform extends NestedDataComponent_1.default {
|
|
1236
1239
|
}
|
1237
1240
|
this.checkData(value.data, flags);
|
1238
1241
|
const shouldValidate = !flags.noValidate ||
|
1239
|
-
flags.
|
1242
|
+
flags.fromIframe ||
|
1240
1243
|
(flags.fromSubmission && this.rootPristine && this.pristine && flags.changed);
|
1241
1244
|
const errors = shouldValidate
|
1242
|
-
? this.validate(value.data, Object.assign(Object.assign({}, flags), { process:
|
1245
|
+
? this.validate(value.data, Object.assign(Object.assign({}, flags), { noValidate: false, process: 'change' }))
|
1243
1246
|
: [];
|
1244
1247
|
value.isValid = errors.length === 0;
|
1245
1248
|
this.loading = false;
|
@@ -2996,7 +2996,7 @@ class Component extends Element_1.default {
|
|
2996
2996
|
this.parent.childErrors.push(...errors);
|
2997
2997
|
}
|
2998
2998
|
else {
|
2999
|
-
lodash_1.default.remove(this.parent.childErrors, (err) => err.component.key === this.component.key);
|
2999
|
+
lodash_1.default.remove(this.parent.childErrors, (err) => { var _a, _b; return (((_a = err === null || err === void 0 ? void 0 : err.component) === null || _a === void 0 ? void 0 : _a.key) || ((_b = err === null || err === void 0 ? void 0 : err.context) === null || _b === void 0 ? void 0 : _b.key)) === this.component.key; });
|
3000
3000
|
}
|
3001
3001
|
}
|
3002
3002
|
this.showValidationErrors(errors, data, row, flags);
|
@@ -3012,7 +3012,7 @@ class Component extends Element_1.default {
|
|
3012
3012
|
this.parent.childErrors.push(...errors);
|
3013
3013
|
}
|
3014
3014
|
else {
|
3015
|
-
lodash_1.default.remove(this.parent.childErrors, (err) => err.component.key === this.component.key);
|
3015
|
+
lodash_1.default.remove(this.parent.childErrors, (err) => { var _a, _b; return (((_a = err === null || err === void 0 ? void 0 : err.component) === null || _a === void 0 ? void 0 : _a.key) || ((_b = err === null || err === void 0 ? void 0 : err.context) === null || _b === void 0 ? void 0 : _b.key)) === this.component.key; });
|
3016
3016
|
}
|
3017
3017
|
}
|
3018
3018
|
return errors.length === 0;
|
@@ -1,4 +1,12 @@
|
|
1
1
|
export default class Multivalue extends Field {
|
2
|
+
/**
|
3
|
+
* Normalize values coming into updateValue.
|
4
|
+
* @param {*} value - The value to normalize before setting.
|
5
|
+
* @param {object} flags - Flags to use when normalizing the value.
|
6
|
+
* @param {*} emptyValue - The empty value for the field.
|
7
|
+
* @returns {*} - The normalized value.
|
8
|
+
*/
|
9
|
+
normalizeValue(value: any, flags?: object, emptyValue?: any): any;
|
2
10
|
get addAnother(): string;
|
3
11
|
/**
|
4
12
|
* @returns {Field} - The created field.
|
@@ -5,41 +5,47 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
6
|
const Field_1 = __importDefault(require("../field/Field"));
|
7
7
|
const lodash_1 = __importDefault(require("lodash"));
|
8
|
+
const core_1 = require("@formio/core");
|
8
9
|
class Multivalue extends Field_1.default {
|
9
10
|
/**
|
10
11
|
* Normalize values coming into updateValue.
|
11
12
|
* @param {*} value - The value to normalize before setting.
|
13
|
+
* @param {object} flags - Flags to use when normalizing the value.
|
14
|
+
* @param {*} emptyValue - The empty value for the field.
|
12
15
|
* @returns {*} - The normalized value.
|
13
16
|
*/
|
14
|
-
normalizeValue(value) {
|
17
|
+
normalizeValue(value, flags = {}, emptyValue = this.emptyValue) {
|
18
|
+
const underlyingValueShouldBeArray = core_1.Utils.getModelType(this.component) === 'array' || this.component.storeas === 'array' || Array.isArray(emptyValue);
|
15
19
|
if (this.component.multiple) {
|
16
20
|
if (Array.isArray(value)) {
|
17
|
-
if (
|
18
|
-
|
21
|
+
if (underlyingValueShouldBeArray) {
|
22
|
+
if (value.length === 0 || !Array.isArray(value[0])) {
|
23
|
+
return [value];
|
24
|
+
}
|
19
25
|
}
|
20
|
-
if (
|
21
|
-
return
|
26
|
+
if (value.length === 0) {
|
27
|
+
return [emptyValue];
|
22
28
|
}
|
23
|
-
return super.normalizeValue(value);
|
29
|
+
return super.normalizeValue(value, flags);
|
24
30
|
}
|
25
31
|
else {
|
26
|
-
return super.normalizeValue(value == null ? [
|
32
|
+
return super.normalizeValue(value == null ? [emptyValue] : [value], flags);
|
27
33
|
}
|
28
34
|
}
|
29
35
|
else {
|
30
|
-
if (Array.isArray(value) &&
|
36
|
+
if (Array.isArray(value) && !underlyingValueShouldBeArray) {
|
31
37
|
if (this.component.storeas === 'string') {
|
32
|
-
return super.normalizeValue(value.join(this.delimiter || ''));
|
38
|
+
return super.normalizeValue(value.join(this.delimiter || ''), flags);
|
33
39
|
}
|
34
|
-
return super.normalizeValue(value[0] ||
|
40
|
+
return super.normalizeValue(value[0] || emptyValue, flags);
|
35
41
|
}
|
36
42
|
else {
|
37
|
-
return super.normalizeValue(value);
|
43
|
+
return super.normalizeValue(value, flags);
|
38
44
|
}
|
39
45
|
}
|
40
46
|
}
|
41
47
|
get dataValue() {
|
42
|
-
return super.dataValue;
|
48
|
+
return this.normalizeValue(super.dataValue);
|
43
49
|
}
|
44
50
|
set dataValue(value) {
|
45
51
|
super.dataValue = value;
|
@@ -97,6 +97,11 @@ export default class DayComponent extends Field {
|
|
97
97
|
* @returns {null|void} - Returns null if the value is invalid, otherwise void.
|
98
98
|
*/
|
99
99
|
setValueAt(index: number, value: any): null | void;
|
100
|
+
getDayWithHiddenFields(parts: any): {
|
101
|
+
month: any;
|
102
|
+
day: any;
|
103
|
+
year: any;
|
104
|
+
};
|
100
105
|
getFieldValue(name: any): number;
|
101
106
|
get parts(): {
|
102
107
|
day: number;
|
@@ -344,6 +344,18 @@ class DayComponent extends Field_1.default {
|
|
344
344
|
const valueParts = value.split('/');
|
345
345
|
const [DAY, MONTH, YEAR] = this.component.dayFirst ? [0, 1, 2] : [1, 0, 2];
|
346
346
|
const defaultValue = this.component.defaultValue ? this.component.defaultValue.split('/') : '';
|
347
|
+
let defaultDay = '';
|
348
|
+
let defaultMonth = '';
|
349
|
+
let defaultYear = '';
|
350
|
+
if (defaultValue) {
|
351
|
+
const hasHiddenFields = defaultValue.length !== 3;
|
352
|
+
defaultDay = hasHiddenFields ? this.getDayWithHiddenFields(defaultValue).day : defaultValue[DAY];
|
353
|
+
defaultMonth = hasHiddenFields ? this.getDayWithHiddenFields(defaultValue).month : defaultValue[MONTH];
|
354
|
+
defaultYear = hasHiddenFields ? this.getDayWithHiddenFields(defaultValue).year : defaultValue[YEAR];
|
355
|
+
}
|
356
|
+
if (this.options.building && defaultValue.length === 3) {
|
357
|
+
return this.component.defaultValue;
|
358
|
+
}
|
347
359
|
const getNextPart = (shouldTake, defaultValue) => {
|
348
360
|
// Only push the part if it's not an empty string
|
349
361
|
const part = shouldTake ? valueParts.shift() : defaultValue;
|
@@ -352,13 +364,13 @@ class DayComponent extends Field_1.default {
|
|
352
364
|
}
|
353
365
|
};
|
354
366
|
if (this.dayFirst) {
|
355
|
-
getNextPart(this.showDay,
|
367
|
+
getNextPart(this.showDay, defaultDay);
|
356
368
|
}
|
357
|
-
getNextPart(this.showMonth,
|
369
|
+
getNextPart(this.showMonth, defaultMonth);
|
358
370
|
if (!this.dayFirst) {
|
359
|
-
getNextPart(this.showDay,
|
371
|
+
getNextPart(this.showDay, defaultDay);
|
360
372
|
}
|
361
|
-
getNextPart(this.showYear,
|
373
|
+
getNextPart(this.showYear, defaultYear);
|
362
374
|
return dateParts.join('/');
|
363
375
|
}
|
364
376
|
/**
|
@@ -373,16 +385,23 @@ class DayComponent extends Field_1.default {
|
|
373
385
|
if (value === 'Invalid date') {
|
374
386
|
return null;
|
375
387
|
}
|
388
|
+
let day, month, year;
|
376
389
|
const parts = value.split('/');
|
377
|
-
|
378
|
-
|
379
|
-
|
390
|
+
if (parts.length !== 3) {
|
391
|
+
day = this.getDayWithHiddenFields(parts).day;
|
392
|
+
month = this.getDayWithHiddenFields(parts).month;
|
393
|
+
year = this.getDayWithHiddenFields(parts).year;
|
380
394
|
}
|
381
|
-
|
382
|
-
|
383
|
-
|
395
|
+
else {
|
396
|
+
if (this.component.dayFirst) {
|
397
|
+
day = parts.shift();
|
398
|
+
}
|
399
|
+
month = parts.shift();
|
400
|
+
if (!this.component.dayFirst) {
|
401
|
+
day = parts.shift();
|
402
|
+
}
|
403
|
+
year = parts.shift();
|
384
404
|
}
|
385
|
-
const year = parts.shift();
|
386
405
|
if (this.refs.day && this.showDay) {
|
387
406
|
this.refs.day.value = day === '00' ? '' : parseInt(day, 10);
|
388
407
|
}
|
@@ -393,6 +412,27 @@ class DayComponent extends Field_1.default {
|
|
393
412
|
this.refs.year.value = year === '0000' ? '' : parseInt(year, 10);
|
394
413
|
}
|
395
414
|
}
|
415
|
+
getDayWithHiddenFields(parts) {
|
416
|
+
let [DAY, MONTH, YEAR] = this.component.dayFirst ? [0, 1, 2] : [1, 0, 2];
|
417
|
+
if (!this.showDay) {
|
418
|
+
MONTH = MONTH === 0 ? 0 : MONTH - 1;
|
419
|
+
YEAR = YEAR - 1;
|
420
|
+
DAY = null;
|
421
|
+
}
|
422
|
+
if (!this.showMonth) {
|
423
|
+
DAY = DAY === 0 ? 0 : DAY - 1;
|
424
|
+
YEAR = YEAR - 1;
|
425
|
+
MONTH = null;
|
426
|
+
}
|
427
|
+
if (!this.showYear) {
|
428
|
+
YEAR = null;
|
429
|
+
}
|
430
|
+
return {
|
431
|
+
month: lodash_1.default.isNull(MONTH) ? '' : parts[MONTH],
|
432
|
+
day: lodash_1.default.isNull(DAY) ? '' : parts[DAY],
|
433
|
+
year: lodash_1.default.isNull(YEAR) ? '' : parts[YEAR],
|
434
|
+
};
|
435
|
+
}
|
396
436
|
getFieldValue(name) {
|
397
437
|
const parts = this.dataValue ? this.dataValue.split('/') : [];
|
398
438
|
let val = 0;
|
@@ -561,7 +601,7 @@ class DayComponent extends Field_1.default {
|
|
561
601
|
}
|
562
602
|
isPartialDay(value) {
|
563
603
|
if (!value) {
|
564
|
-
return
|
604
|
+
return true;
|
565
605
|
}
|
566
606
|
const [DAY, MONTH, YEAR] = this.component.dayFirst ? [0, 1, 2] : [1, 0, 2];
|
567
607
|
const values = value.split('/');
|
@@ -14,6 +14,7 @@ declare const _default: ({
|
|
14
14
|
input?: undefined;
|
15
15
|
placeholder?: undefined;
|
16
16
|
tooltip?: undefined;
|
17
|
+
onChange?: undefined;
|
17
18
|
} | {
|
18
19
|
weight: number;
|
19
20
|
type: string;
|
@@ -25,16 +26,32 @@ declare const _default: ({
|
|
25
26
|
wieght?: undefined;
|
26
27
|
datasrc?: undefined;
|
27
28
|
data?: undefined;
|
29
|
+
onChange?: undefined;
|
28
30
|
} | {
|
29
31
|
weight: number;
|
30
32
|
type: string;
|
31
33
|
label: string;
|
32
34
|
tooltip: string;
|
33
35
|
key: string;
|
36
|
+
onChange: ({ data }: {
|
37
|
+
data: any;
|
38
|
+
}) => void;
|
34
39
|
input: boolean;
|
35
40
|
wieght?: undefined;
|
36
41
|
datasrc?: undefined;
|
37
42
|
data?: undefined;
|
38
43
|
placeholder?: undefined;
|
44
|
+
} | {
|
45
|
+
weight: number;
|
46
|
+
type: string;
|
47
|
+
label: string;
|
48
|
+
tooltip: string;
|
49
|
+
key: string;
|
50
|
+
input: boolean;
|
51
|
+
wieght?: undefined;
|
52
|
+
datasrc?: undefined;
|
53
|
+
data?: undefined;
|
54
|
+
placeholder?: undefined;
|
55
|
+
onChange?: undefined;
|
39
56
|
})[];
|
40
57
|
export default _default;
|
@@ -1,5 +1,9 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const lodash_1 = __importDefault(require("lodash"));
|
3
7
|
exports.default = [
|
4
8
|
{
|
5
9
|
wieght: 200,
|
@@ -35,6 +39,21 @@ exports.default = [
|
|
35
39
|
label: 'Hidden',
|
36
40
|
tooltip: 'Hide the Day part of the component.',
|
37
41
|
key: 'fields.day.hide',
|
42
|
+
onChange: ({ data }) => {
|
43
|
+
if (data.defaultValue) {
|
44
|
+
const defaultValueParts = data.defaultValue.split('/');
|
45
|
+
if (!data.fields.day.hide && defaultValueParts.length !== 3) {
|
46
|
+
const newDefaultValue = ['00'];
|
47
|
+
if (!data.fields.month.hide) {
|
48
|
+
data.dayFirst ? newDefaultValue.push(defaultValueParts[0]) : newDefaultValue.unshift(defaultValueParts[0]);
|
49
|
+
}
|
50
|
+
if (!data.fields.year.hide) {
|
51
|
+
newDefaultValue.push(defaultValueParts[1]);
|
52
|
+
}
|
53
|
+
lodash_1.default.set(data, 'defaultValue', newDefaultValue.join('/'));
|
54
|
+
}
|
55
|
+
}
|
56
|
+
},
|
38
57
|
input: true
|
39
58
|
},
|
40
59
|
{
|
@@ -14,6 +14,7 @@ declare const _default: ({
|
|
14
14
|
input?: undefined;
|
15
15
|
placeholder?: undefined;
|
16
16
|
tooltip?: undefined;
|
17
|
+
onChange?: undefined;
|
17
18
|
} | {
|
18
19
|
weight: number;
|
19
20
|
type: string;
|
@@ -25,12 +26,16 @@ declare const _default: ({
|
|
25
26
|
wieght?: undefined;
|
26
27
|
datasrc?: undefined;
|
27
28
|
data?: undefined;
|
29
|
+
onChange?: undefined;
|
28
30
|
} | {
|
29
31
|
weight: number;
|
30
32
|
type: string;
|
31
33
|
label: string;
|
32
34
|
tooltip: string;
|
33
35
|
key: string;
|
36
|
+
onChange: ({ data }: {
|
37
|
+
data: any;
|
38
|
+
}) => void;
|
34
39
|
input: boolean;
|
35
40
|
wieght?: undefined;
|
36
41
|
datasrc?: undefined;
|
@@ -1,5 +1,9 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const lodash_1 = __importDefault(require("lodash"));
|
3
7
|
exports.default = [
|
4
8
|
{
|
5
9
|
wieght: 200,
|
@@ -35,6 +39,21 @@ exports.default = [
|
|
35
39
|
label: 'Hidden',
|
36
40
|
tooltip: 'Hide the Month part of the component.',
|
37
41
|
key: 'fields.month.hide',
|
42
|
+
onChange: ({ data }) => {
|
43
|
+
if (data.defaultValue) {
|
44
|
+
const defaultValueParts = data.defaultValue.split('/');
|
45
|
+
if (!data.fields.month.hide && defaultValueParts.length !== 3) {
|
46
|
+
const newDefaultValue = ['00'];
|
47
|
+
if (!data.fields.day.hide) {
|
48
|
+
data.dayFirst ? newDefaultValue.unshift(defaultValueParts[0]) : newDefaultValue.push(defaultValueParts[0]);
|
49
|
+
}
|
50
|
+
if (!data.fields.year.hide) {
|
51
|
+
newDefaultValue.push(defaultValueParts[1]);
|
52
|
+
}
|
53
|
+
lodash_1.default.set(data, 'defaultValue', newDefaultValue.join('/'));
|
54
|
+
}
|
55
|
+
}
|
56
|
+
},
|
38
57
|
input: true
|
39
58
|
},
|
40
59
|
];
|
@@ -14,6 +14,7 @@ declare const _default: ({
|
|
14
14
|
input?: undefined;
|
15
15
|
placeholder?: undefined;
|
16
16
|
tooltip?: undefined;
|
17
|
+
onChange?: undefined;
|
17
18
|
} | {
|
18
19
|
weight: number;
|
19
20
|
type: string;
|
@@ -25,12 +26,16 @@ declare const _default: ({
|
|
25
26
|
wieght?: undefined;
|
26
27
|
datasrc?: undefined;
|
27
28
|
data?: undefined;
|
29
|
+
onChange?: undefined;
|
28
30
|
} | {
|
29
31
|
weight: number;
|
30
32
|
type: string;
|
31
33
|
label: string;
|
32
34
|
tooltip: string;
|
33
35
|
key: string;
|
36
|
+
onChange: ({ data }: {
|
37
|
+
data: any;
|
38
|
+
}) => void;
|
34
39
|
input: boolean;
|
35
40
|
wieght?: undefined;
|
36
41
|
datasrc?: undefined;
|
@@ -1,5 +1,9 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
2
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const lodash_1 = __importDefault(require("lodash"));
|
3
7
|
exports.default = [
|
4
8
|
{
|
5
9
|
wieght: 200,
|
@@ -53,6 +57,15 @@ exports.default = [
|
|
53
57
|
label: 'Hidden',
|
54
58
|
tooltip: 'Hide the Year part of the component.',
|
55
59
|
key: 'fields.year.hide',
|
60
|
+
onChange: ({ data }) => {
|
61
|
+
if (data.defaultValue) {
|
62
|
+
const defaultValueParts = data.defaultValue.split('/');
|
63
|
+
if (!data.fields.month.hide && defaultValueParts.length !== 3) {
|
64
|
+
defaultValueParts.push('0000');
|
65
|
+
lodash_1.default.set(data, 'defaultValue', defaultValueParts.join('/'));
|
66
|
+
}
|
67
|
+
}
|
68
|
+
},
|
56
69
|
input: true
|
57
70
|
},
|
58
71
|
];
|
@@ -212,7 +212,7 @@ class RadioComponent extends ListComponent_1.default {
|
|
212
212
|
if (!(0, utils_1.boolValue)(setting) || !value) {
|
213
213
|
return true;
|
214
214
|
}
|
215
|
-
const values = this.component.values;
|
215
|
+
const values = this.component.dataSrc === 'values' ? this.component.values : this.loadedOptions;
|
216
216
|
if (values) {
|
217
217
|
return values.findIndex(({ value: optionValue }) => this.normalizeValue(optionValue) === value) !== -1;
|
218
218
|
}
|
@@ -1430,6 +1430,9 @@ class SelectComponent extends ListComponent_1.default {
|
|
1430
1430
|
case 'custom':
|
1431
1431
|
rawItems = this.getCustomItems();
|
1432
1432
|
break;
|
1433
|
+
case 'url':
|
1434
|
+
rawItems = this.selectItems;
|
1435
|
+
break;
|
1433
1436
|
}
|
1434
1437
|
if (typeof rawItems === 'string') {
|
1435
1438
|
try {
|
@@ -1488,7 +1491,7 @@ class SelectComponent extends ListComponent_1.default {
|
|
1488
1491
|
if (Array.isArray(data)) {
|
1489
1492
|
data.forEach((item) => item[valueProperty] = item[valueProperty].toString());
|
1490
1493
|
}
|
1491
|
-
else {
|
1494
|
+
else if (lodash_1.default.isObject(data)) {
|
1492
1495
|
data[valueProperty] = data[valueProperty].toString();
|
1493
1496
|
}
|
1494
1497
|
return data;
|
@@ -1523,7 +1526,7 @@ class SelectComponent extends ListComponent_1.default {
|
|
1523
1526
|
};
|
1524
1527
|
value = (this.component.multiple && Array.isArray(value))
|
1525
1528
|
? lodash_1.default.filter(items, (item) => value.includes(item.value))
|
1526
|
-
: valueProperty
|
1529
|
+
: (valueProperty && items)
|
1527
1530
|
? (_a = getFromValues()) !== null && _a !== void 0 ? _a : { value, label: value }
|
1528
1531
|
: value;
|
1529
1532
|
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
declare namespace _default {
|
2
|
+
let type: string;
|
3
|
+
let label: string;
|
4
|
+
let widget: string;
|
5
|
+
let tableView: boolean;
|
6
|
+
let dataSrc: string;
|
7
|
+
namespace data {
|
8
|
+
let custom: string;
|
9
|
+
}
|
10
|
+
let dataType: string;
|
11
|
+
let idPath: string;
|
12
|
+
let valueProperty: string;
|
13
|
+
let template: string;
|
14
|
+
let validateWhenHidden: boolean;
|
15
|
+
let key: string;
|
16
|
+
let input: boolean;
|
17
|
+
}
|
18
|
+
export default _default;
|
@@ -0,0 +1,19 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
exports.default = {
|
4
|
+
type: 'select',
|
5
|
+
label: 'Select',
|
6
|
+
widget: 'choicesjs',
|
7
|
+
tableView: true,
|
8
|
+
dataSrc: 'custom',
|
9
|
+
data: {
|
10
|
+
custom: 'values = data.dataSource;'
|
11
|
+
},
|
12
|
+
dataType: 'string',
|
13
|
+
idPath: 'name',
|
14
|
+
valueProperty: 'name',
|
15
|
+
template: '<span>{{ item.name }}</span>',
|
16
|
+
validateWhenHidden: false,
|
17
|
+
key: 'select',
|
18
|
+
input: true
|
19
|
+
};
|
@@ -22,5 +22,6 @@ import comp22 from './comp22';
|
|
22
22
|
import comp23 from './comp23';
|
23
23
|
import comp24 from './comp24';
|
24
24
|
import comp25 from './comp25';
|
25
|
-
|
25
|
+
import comp27 from './comp27';
|
26
|
+
export { comp1, comp2, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11, comp12, comp13, comp14, comp15, comp16, comp17, comp18, comp19, comp20, comp21, comp22, comp23, comp24, comp25, comp26, comp27 };
|
26
27
|
export { multiSelect, multiSelectOptions } from "./comp3";
|
@@ -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.comp25 = exports.comp24 = exports.comp23 = exports.comp22 = exports.comp21 = exports.comp20 = exports.comp19 = exports.comp18 = exports.comp17 = exports.comp16 = exports.comp15 = exports.comp14 = exports.comp13 = exports.comp12 = exports.comp11 = exports.comp10 = exports.comp9 = exports.comp8 = exports.comp7 = exports.comp6 = exports.comp5 = exports.comp4 = exports.comp2 = exports.comp1 = exports.multiSelectOptions = exports.multiSelect = void 0;
|
6
|
+
exports.comp27 = exports.comp26 = exports.comp25 = exports.comp24 = exports.comp23 = exports.comp22 = exports.comp21 = exports.comp20 = exports.comp19 = exports.comp18 = exports.comp17 = exports.comp16 = exports.comp15 = exports.comp14 = exports.comp13 = exports.comp12 = exports.comp11 = exports.comp10 = exports.comp9 = exports.comp8 = exports.comp7 = exports.comp6 = exports.comp5 = exports.comp4 = exports.comp2 = exports.comp1 = exports.multiSelectOptions = exports.multiSelect = 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"));
|
@@ -55,3 +55,7 @@ const comp24_1 = __importDefault(require("./comp24"));
|
|
55
55
|
exports.comp24 = comp24_1.default;
|
56
56
|
const comp25_1 = __importDefault(require("./comp25"));
|
57
57
|
exports.comp25 = comp25_1.default;
|
58
|
+
const comp26_1 = __importDefault(require("./comp26"));
|
59
|
+
exports.comp26 = comp26_1.default;
|
60
|
+
const comp27_1 = __importDefault(require("./comp27"));
|
61
|
+
exports.comp27 = comp27_1.default;
|
@@ -254,7 +254,7 @@ class SelectBoxesComponent extends Radio_1.default {
|
|
254
254
|
if (!(0, utils_1.boolValue)(setting) || !value) {
|
255
255
|
return true;
|
256
256
|
}
|
257
|
-
const values = this.component.values;
|
257
|
+
const values = this.component.dataSrc === 'values' ? this.component.values : this.loadedOptions;
|
258
258
|
const availableValueKeys = (values || []).map(({ value: optionValue }) => optionValue);
|
259
259
|
const valueKeys = Object.keys(value);
|
260
260
|
return valueKeys.every((key) => availableValueKeys.includes(key));
|
@@ -19,12 +19,13 @@ class DateGeaterThan extends ConditionOperator_1.default {
|
|
19
19
|
return { date, comparedDate };
|
20
20
|
}
|
21
21
|
execute(options, functionName = 'isAfter') {
|
22
|
+
var _a;
|
22
23
|
const { value, instance, conditionComponentPath } = options;
|
23
24
|
if (!value) {
|
24
25
|
return false;
|
25
26
|
}
|
26
27
|
let conditionTriggerComponent = null;
|
27
|
-
if (instance
|
28
|
+
if ((_a = instance === null || instance === void 0 ? void 0 : instance.root) === null || _a === void 0 ? void 0 : _a.getComponent) {
|
28
29
|
conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
29
30
|
}
|
30
31
|
if (conditionTriggerComponent && conditionTriggerComponent.isPartialDay && conditionTriggerComponent.isPartialDay(value)) {
|
@@ -18,8 +18,8 @@ class IsEmptyValue extends ConditionOperator_1.default {
|
|
18
18
|
execute({ value, instance, conditionComponentPath }) {
|
19
19
|
var _a;
|
20
20
|
const isEmptyValue = lodash_1.default.isEmpty(lodash_1.default.isNumber(value) ? String(value) : value);
|
21
|
-
if (instance
|
22
|
-
const conditionTriggerComponent =
|
21
|
+
if ((_a = instance === null || instance === void 0 ? void 0 : instance.root) === null || _a === void 0 ? void 0 : _a.getComponent) {
|
22
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
23
23
|
return (conditionTriggerComponent === null || conditionTriggerComponent === void 0 ? void 0 : conditionTriggerComponent.isEmpty) ? conditionTriggerComponent.isEmpty() : isEmptyValue;
|
24
24
|
}
|
25
25
|
return isEmptyValue;
|
@@ -22,8 +22,8 @@ class IsEqualTo extends ConditionOperator_1.default {
|
|
22
22
|
// eslint-disable-next-line no-empty
|
23
23
|
catch (e) { }
|
24
24
|
}
|
25
|
-
if (instance
|
26
|
-
const conditionTriggerComponent =
|
25
|
+
if ((_a = instance === null || instance === void 0 ? void 0 : instance.root) === null || _a === void 0 ? void 0 : _a.getComponent) {
|
26
|
+
const conditionTriggerComponent = instance.root.getComponent(conditionComponentPath);
|
27
27
|
if (conditionTriggerComponent
|
28
28
|
&& (0, utils_1.isSelectResourceWithObjectValue)(conditionTriggerComponent.component)
|
29
29
|
&& ((_b = conditionTriggerComponent.component) === null || _b === void 0 ? void 0 : _b.template)) {
|
@@ -8,11 +8,10 @@ export function findComponents(components: import('@formio/core').Component[], q
|
|
8
8
|
export const flattenComponents: typeof Utils.flattenComponents;
|
9
9
|
export const guid: typeof Utils.guid;
|
10
10
|
export const uniqueName: typeof Utils.uniqueName;
|
11
|
-
export const MODEL_TYPES:
|
11
|
+
export const MODEL_TYPES: any;
|
12
12
|
export const getModelType: typeof Utils.getModelType;
|
13
13
|
export const getComponentAbsolutePath: typeof Utils.getComponentAbsolutePath;
|
14
14
|
export const getComponentPath: typeof Utils.getComponentPath;
|
15
|
-
export const isComponentModelType: typeof Utils.isComponentModelType;
|
16
15
|
export const isComponentNestedDataType: typeof Utils.isComponentNestedDataType;
|
17
16
|
export const componentPath: typeof Utils.componentPath;
|
18
17
|
export const componentChildPath: any;
|
@@ -1,8 +1,8 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.isComponentDataEmpty = exports.getEmptyValue = exports.findComponent = exports.applyFormChanges = exports.generateFormChange = exports.getStrings = exports.getValue = exports.escapeRegExCharacters = exports.formatAsCurrency = exports.parseFloatExt = exports.hasCondition = exports.removeComponent = exports.searchComponents = exports.getComponent = exports.matchComponent = exports.isLayoutComponent = exports.getComponentActualValue = exports.getComponentData = exports.eachComponentAsync = exports.eachComponent = exports.componentInfo = exports.getContextualRowData = exports.getContextualRowPath = exports.getComponentKey = exports.eachComponentData = exports.eachComponentDataAsync = exports.componentChildPath = exports.componentPath = exports.isComponentNestedDataType = exports.
|
3
|
+
exports.isComponentDataEmpty = exports.getEmptyValue = exports.findComponent = exports.applyFormChanges = exports.generateFormChange = exports.getStrings = exports.getValue = exports.escapeRegExCharacters = exports.formatAsCurrency = exports.parseFloatExt = exports.hasCondition = exports.removeComponent = exports.searchComponents = exports.getComponent = exports.matchComponent = exports.isLayoutComponent = exports.getComponentActualValue = exports.getComponentData = exports.eachComponentAsync = exports.eachComponent = exports.componentInfo = exports.getContextualRowData = exports.getContextualRowPath = exports.getComponentKey = exports.eachComponentData = exports.eachComponentDataAsync = exports.componentChildPath = exports.componentPath = exports.isComponentNestedDataType = exports.getComponentPath = exports.getComponentAbsolutePath = exports.getModelType = exports.MODEL_TYPES = exports.uniqueName = exports.guid = exports.flattenComponents = exports.findComponents = void 0;
|
4
4
|
const core_1 = require("@formio/core");
|
5
|
-
const { flattenComponents, guid, uniqueName, MODEL_TYPES, getModelType, getComponentAbsolutePath, getComponentPath,
|
5
|
+
const { flattenComponents, guid, uniqueName, MODEL_TYPES, getModelType, getComponentAbsolutePath, getComponentPath, isComponentNestedDataType, componentPath, componentChildPath, eachComponentDataAsync, eachComponentData, getComponentKey, getContextualRowPath, getContextualRowData, componentInfo, eachComponent, eachComponentAsync, getComponentData, getComponentActualValue, isLayoutComponent, matchComponent, getComponent, searchComponents, removeComponent, hasCondition, parseFloatExt, formatAsCurrency, escapeRegExCharacters, getValue, getStrings, generateFormChange, applyFormChanges, findComponent, getEmptyValue, isComponentDataEmpty } = core_1.Utils;
|
6
6
|
exports.flattenComponents = flattenComponents;
|
7
7
|
exports.guid = guid;
|
8
8
|
exports.uniqueName = uniqueName;
|
@@ -10,7 +10,6 @@ exports.MODEL_TYPES = MODEL_TYPES;
|
|
10
10
|
exports.getModelType = getModelType;
|
11
11
|
exports.getComponentAbsolutePath = getComponentAbsolutePath;
|
12
12
|
exports.getComponentPath = getComponentPath;
|
13
|
-
exports.isComponentModelType = isComponentModelType;
|
14
13
|
exports.isComponentNestedDataType = isComponentNestedDataType;
|
15
14
|
exports.componentPath = componentPath;
|
16
15
|
exports.componentChildPath = componentChildPath;
|