@formio/js 5.0.0-rc.84 → 5.0.0-rc.86

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.
Files changed (34) hide show
  1. package/dist/formio.embed.js +1 -1
  2. package/dist/formio.embed.min.js +1 -1
  3. package/dist/formio.embed.min.js.LICENSE.txt +1 -1
  4. package/dist/formio.form.js +8 -8
  5. package/dist/formio.form.min.js +1 -1
  6. package/dist/formio.form.min.js.LICENSE.txt +1 -1
  7. package/dist/formio.full.js +8 -8
  8. package/dist/formio.full.min.js +1 -1
  9. package/dist/formio.full.min.js.LICENSE.txt +1 -1
  10. package/dist/formio.js +3 -3
  11. package/dist/formio.min.js +1 -1
  12. package/dist/formio.min.js.LICENSE.txt +1 -1
  13. package/dist/formio.utils.js +2 -2
  14. package/dist/formio.utils.min.js +1 -1
  15. package/dist/formio.utils.min.js.LICENSE.txt +1 -1
  16. package/lib/cjs/Wizard.js +1 -1
  17. package/lib/cjs/components/_classes/component/Component.d.ts +1 -1
  18. package/lib/cjs/components/_classes/component/Component.js +2 -2
  19. package/lib/cjs/components/_classes/nested/NestedComponent.js +4 -1
  20. package/lib/cjs/components/radio/Radio.js +7 -6
  21. package/lib/cjs/components/radio/fixtures/comp12.d.ts +29 -0
  22. package/lib/cjs/components/radio/fixtures/comp12.js +36 -0
  23. package/lib/cjs/components/radio/fixtures/index.d.ts +2 -1
  24. package/lib/cjs/components/radio/fixtures/index.js +3 -1
  25. package/lib/mjs/Wizard.js +1 -1
  26. package/lib/mjs/components/_classes/component/Component.d.ts +1 -1
  27. package/lib/mjs/components/_classes/component/Component.js +2 -2
  28. package/lib/mjs/components/_classes/nested/NestedComponent.js +3 -1
  29. package/lib/mjs/components/radio/Radio.js +7 -6
  30. package/lib/mjs/components/radio/fixtures/comp12.d.ts +29 -0
  31. package/lib/mjs/components/radio/fixtures/comp12.js +34 -0
  32. package/lib/mjs/components/radio/fixtures/index.d.ts +2 -1
  33. package/lib/mjs/components/radio/fixtures/index.js +2 -1
  34. package/package.json +2 -2
@@ -20,7 +20,7 @@
20
20
 
21
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.84 | https://unpkg.com/formiojs@5.0.0-rc.84/LICENSE.txt */
23
+ /*! formiojs v5.0.0-rc.85 | https://unpkg.com/formiojs@5.0.0-rc.85/LICENSE.txt */
24
24
 
25
25
  /**
26
26
  * @license
package/lib/cjs/Wizard.js CHANGED
@@ -715,7 +715,7 @@ class Wizard extends Webform_1.default {
715
715
  }
716
716
  else {
717
717
  this.currentPage.components.forEach((comp) => comp.setPristine(false));
718
- this.scrollIntoView(this.element);
718
+ this.scrollIntoView(this.element, true);
719
719
  return Promise.reject(this.showErrors(errors, true));
720
720
  }
721
721
  }
@@ -1061,7 +1061,7 @@ declare class Component extends Element {
1061
1061
  */
1062
1062
  elementInfo(): any;
1063
1063
  autofocus(): void;
1064
- scrollIntoView(element?: any): void;
1064
+ scrollIntoView(element: any, verticalOnly: any): void;
1065
1065
  focus(index?: number): void;
1066
1066
  /**
1067
1067
  * Get `Formio` instance for working with files
@@ -3421,12 +3421,12 @@ class Component extends Element_1.default {
3421
3421
  this.on('render', () => this.focus(), true);
3422
3422
  }
3423
3423
  }
3424
- scrollIntoView(element = this.element) {
3424
+ scrollIntoView(element = this.element, verticalOnly) {
3425
3425
  if (!element) {
3426
3426
  return;
3427
3427
  }
3428
3428
  const { left, top } = element.getBoundingClientRect();
3429
- window.scrollTo(left + window.scrollX, top + window.scrollY);
3429
+ window.scrollTo(verticalOnly ? window.scrollX : left + window.scrollX, top + window.scrollY);
3430
3430
  }
3431
3431
  focus(index = (this.refs.input.length - 1)) {
3432
3432
  var _a, _b;
@@ -683,9 +683,12 @@ class NestedComponent extends Field_1.default {
683
683
  return this.getComponents().reduce((valid, comp) => comp.isValid(data, dirty) && valid, super.isValid(data, dirty));
684
684
  }
685
685
  validationProcessor({ scope, data, row, instance, component }, flags) {
686
+ var _a;
686
687
  const { dirty } = flags;
687
688
  if (this.root.hasExtraPages && this.page !== this.root.page) {
688
- instance = this.getComponent(component.path);
689
+ instance = ((_a = this.childComponentsMap) === null || _a === void 0 ? void 0 : _a.hasOwnProperty(component.path))
690
+ ? this.childComponentsMap[component.path]
691
+ : this.getComponent(component.path);
689
692
  }
690
693
  if (!instance) {
691
694
  return;
@@ -286,14 +286,15 @@ class RadioComponent extends ListComponent_1.default {
286
286
  setItems(items) {
287
287
  const listData = [];
288
288
  items === null || items === void 0 ? void 0 : items.forEach((item, i) => {
289
+ const valueAtProperty = lodash_1.default.get(item, this.component.valueProperty);
289
290
  this.loadedOptions[i] = {
290
- value: this.component.valueProperty ? item[this.component.valueProperty] : item,
291
- label: this.component.valueProperty ? this.itemTemplate(item, item[this.component.valueProperty]) : this.itemTemplate(item, item, i)
291
+ value: this.component.valueProperty ? valueAtProperty : item,
292
+ label: this.component.valueProperty ? this.itemTemplate(item, valueAtProperty) : this.itemTemplate(item, item, i)
292
293
  };
293
- listData.push(this.templateData[this.component.valueProperty ? item[this.component.valueProperty] : i]);
294
- if ((this.component.valueProperty || !this.isRadio) && (lodash_1.default.isUndefined(item[this.component.valueProperty]) ||
295
- (!this.isRadio && lodash_1.default.isObject(item[this.component.valueProperty])) ||
296
- (!this.isRadio && lodash_1.default.isBoolean(item[this.component.valueProperty])))) {
294
+ listData.push(this.templateData[this.component.valueProperty ? valueAtProperty : i]);
295
+ if ((this.component.valueProperty || !this.isRadio) && (lodash_1.default.isUndefined(valueAtProperty) ||
296
+ (!this.isRadio && lodash_1.default.isObject(valueAtProperty)) ||
297
+ (!this.isRadio && lodash_1.default.isBoolean(valueAtProperty)))) {
297
298
  this.loadedOptions[i].invalid = true;
298
299
  }
299
300
  });
@@ -0,0 +1,29 @@
1
+ declare namespace _default {
2
+ let components: {
3
+ label: string;
4
+ optionsLabelPosition: string;
5
+ tableView: boolean;
6
+ dataSrc: string;
7
+ values: {
8
+ label: string;
9
+ value: string;
10
+ shortcut: string;
11
+ }[];
12
+ valueProperty: string;
13
+ validateWhenHidden: boolean;
14
+ key: string;
15
+ type: string;
16
+ data: {
17
+ url: string;
18
+ headers: {
19
+ key: string;
20
+ value: string;
21
+ }[];
22
+ };
23
+ template: string;
24
+ authenticate: boolean;
25
+ input: boolean;
26
+ inputType: string;
27
+ }[];
28
+ }
29
+ export default _default;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = {
4
+ components: [
5
+ {
6
+ "label": "Select Boxes",
7
+ "optionsLabelPosition": "right",
8
+ "tableView": false,
9
+ "dataSrc": "url",
10
+ "values": [
11
+ {
12
+ "label": "",
13
+ "value": "",
14
+ "shortcut": ""
15
+ }
16
+ ],
17
+ "valueProperty": "data.name",
18
+ "validateWhenHidden": false,
19
+ "key": "selectBoxes",
20
+ "type": "selectboxes",
21
+ "data": {
22
+ "url": "https://remote-dev.form.io/projectId/name/submission",
23
+ "headers": [
24
+ {
25
+ "key": "",
26
+ "value": ""
27
+ }
28
+ ]
29
+ },
30
+ "template": "<span>{{ item.data.name }}</span>",
31
+ "authenticate": true,
32
+ "input": true,
33
+ "inputType": "checkbox"
34
+ }
35
+ ]
36
+ };
@@ -9,4 +9,5 @@ import comp8 from './comp8';
9
9
  import comp9 from './comp9';
10
10
  import comp10 from './comp10';
11
11
  import comp11 from './comp11';
12
- export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11 };
12
+ import comp12 from './comp12';
13
+ export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11, comp12 };
@@ -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.comp11 = exports.comp10 = exports.comp9 = exports.comp8 = exports.comp7 = exports.comp6 = exports.comp5 = exports.comp4 = exports.comp3 = exports.comp2 = exports.comp1 = void 0;
6
+ exports.comp12 = exports.comp11 = exports.comp10 = exports.comp9 = 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"));
@@ -26,3 +26,5 @@ const comp10_1 = __importDefault(require("./comp10"));
26
26
  exports.comp10 = comp10_1.default;
27
27
  const comp11_1 = __importDefault(require("./comp11"));
28
28
  exports.comp11 = comp11_1.default;
29
+ const comp12_1 = __importDefault(require("./comp12"));
30
+ exports.comp12 = comp12_1.default;
package/lib/mjs/Wizard.js CHANGED
@@ -705,7 +705,7 @@ export default class Wizard extends Webform {
705
705
  }
706
706
  else {
707
707
  this.currentPage.components.forEach((comp) => comp.setPristine(false));
708
- this.scrollIntoView(this.element);
708
+ this.scrollIntoView(this.element, true);
709
709
  return Promise.reject(this.showErrors(errors, true));
710
710
  }
711
711
  }
@@ -1061,7 +1061,7 @@ declare class Component extends Element {
1061
1061
  */
1062
1062
  elementInfo(): any;
1063
1063
  autofocus(): void;
1064
- scrollIntoView(element?: any): void;
1064
+ scrollIntoView(element: any, verticalOnly: any): void;
1065
1065
  focus(index?: number): void;
1066
1066
  /**
1067
1067
  * Get `Formio` instance for working with files
@@ -3386,12 +3386,12 @@ export default class Component extends Element {
3386
3386
  this.on('render', () => this.focus(), true);
3387
3387
  }
3388
3388
  }
3389
- scrollIntoView(element = this.element) {
3389
+ scrollIntoView(element = this.element, verticalOnly) {
3390
3390
  if (!element) {
3391
3391
  return;
3392
3392
  }
3393
3393
  const { left, top } = element.getBoundingClientRect();
3394
- window.scrollTo(left + window.scrollX, top + window.scrollY);
3394
+ window.scrollTo(verticalOnly ? window.scrollX : left + window.scrollX, top + window.scrollY);
3395
3395
  }
3396
3396
  focus(index = (this.refs.input.length - 1)) {
3397
3397
  if ('beforeFocus' in this.parent) {
@@ -681,7 +681,9 @@ export default class NestedComponent extends Field {
681
681
  validationProcessor({ scope, data, row, instance, component }, flags) {
682
682
  const { dirty } = flags;
683
683
  if (this.root.hasExtraPages && this.page !== this.root.page) {
684
- instance = this.getComponent(component.path);
684
+ instance = this.childComponentsMap?.hasOwnProperty(component.path)
685
+ ? this.childComponentsMap[component.path]
686
+ : this.getComponent(component.path);
685
687
  }
686
688
  if (!instance) {
687
689
  return;
@@ -286,14 +286,15 @@ export default class RadioComponent extends ListComponent {
286
286
  setItems(items) {
287
287
  const listData = [];
288
288
  items?.forEach((item, i) => {
289
+ const valueAtProperty = _.get(item, this.component.valueProperty);
289
290
  this.loadedOptions[i] = {
290
- value: this.component.valueProperty ? item[this.component.valueProperty] : item,
291
- label: this.component.valueProperty ? this.itemTemplate(item, item[this.component.valueProperty]) : this.itemTemplate(item, item, i)
291
+ value: this.component.valueProperty ? valueAtProperty : item,
292
+ label: this.component.valueProperty ? this.itemTemplate(item, valueAtProperty) : this.itemTemplate(item, item, i)
292
293
  };
293
- listData.push(this.templateData[this.component.valueProperty ? item[this.component.valueProperty] : i]);
294
- if ((this.component.valueProperty || !this.isRadio) && (_.isUndefined(item[this.component.valueProperty]) ||
295
- (!this.isRadio && _.isObject(item[this.component.valueProperty])) ||
296
- (!this.isRadio && _.isBoolean(item[this.component.valueProperty])))) {
294
+ listData.push(this.templateData[this.component.valueProperty ? valueAtProperty : i]);
295
+ if ((this.component.valueProperty || !this.isRadio) && (_.isUndefined(valueAtProperty) ||
296
+ (!this.isRadio && _.isObject(valueAtProperty)) ||
297
+ (!this.isRadio && _.isBoolean(valueAtProperty)))) {
297
298
  this.loadedOptions[i].invalid = true;
298
299
  }
299
300
  });
@@ -0,0 +1,29 @@
1
+ declare namespace _default {
2
+ let components: {
3
+ label: string;
4
+ optionsLabelPosition: string;
5
+ tableView: boolean;
6
+ dataSrc: string;
7
+ values: {
8
+ label: string;
9
+ value: string;
10
+ shortcut: string;
11
+ }[];
12
+ valueProperty: string;
13
+ validateWhenHidden: boolean;
14
+ key: string;
15
+ type: string;
16
+ data: {
17
+ url: string;
18
+ headers: {
19
+ key: string;
20
+ value: string;
21
+ }[];
22
+ };
23
+ template: string;
24
+ authenticate: boolean;
25
+ input: boolean;
26
+ inputType: string;
27
+ }[];
28
+ }
29
+ export default _default;
@@ -0,0 +1,34 @@
1
+ export default {
2
+ components: [
3
+ {
4
+ "label": "Select Boxes",
5
+ "optionsLabelPosition": "right",
6
+ "tableView": false,
7
+ "dataSrc": "url",
8
+ "values": [
9
+ {
10
+ "label": "",
11
+ "value": "",
12
+ "shortcut": ""
13
+ }
14
+ ],
15
+ "valueProperty": "data.name",
16
+ "validateWhenHidden": false,
17
+ "key": "selectBoxes",
18
+ "type": "selectboxes",
19
+ "data": {
20
+ "url": "https://remote-dev.form.io/projectId/name/submission",
21
+ "headers": [
22
+ {
23
+ "key": "",
24
+ "value": ""
25
+ }
26
+ ]
27
+ },
28
+ "template": "<span>{{ item.data.name }}</span>",
29
+ "authenticate": true,
30
+ "input": true,
31
+ "inputType": "checkbox"
32
+ }
33
+ ]
34
+ };
@@ -9,4 +9,5 @@ import comp8 from './comp8';
9
9
  import comp9 from './comp9';
10
10
  import comp10 from './comp10';
11
11
  import comp11 from './comp11';
12
- export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11 };
12
+ import comp12 from './comp12';
13
+ export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11, comp12 };
@@ -9,4 +9,5 @@ import comp8 from './comp8';
9
9
  import comp9 from './comp9';
10
10
  import comp10 from './comp10';
11
11
  import comp11 from './comp11';
12
- export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11 };
12
+ import comp12 from './comp12';
13
+ export { comp1, comp2, comp3, comp4, comp5, comp6, comp7, comp8, comp9, comp10, comp11, comp12 };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@formio/js",
3
- "version": "5.0.0-rc.84",
3
+ "version": "5.0.0-rc.86",
4
4
  "description": "JavaScript powered Forms with JSON Form Builder",
5
5
  "main": "lib/cjs/index.js",
6
6
  "exports": {
@@ -81,7 +81,7 @@
81
81
  "dependencies": {
82
82
  "@formio/bootstrap": "3.0.0-rc.37",
83
83
  "@formio/choices.js": "^10.2.1",
84
- "@formio/core": "2.3.0-rc.3",
84
+ "@formio/core": "2.3.0-rc.6",
85
85
  "@formio/text-mask-addons": "^3.8.0-formio.2",
86
86
  "@formio/vanilla-text-mask": "^5.1.1-formio.1",
87
87
  "abortcontroller-polyfill": "^1.7.5",