@formio/js 5.1.0-dev.6102.8eddaab → 5.1.0-dev.6104.98e707b

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 (135) hide show
  1. package/dist/formio.form.js +117 -84
  2. package/dist/formio.form.min.js +1 -1
  3. package/dist/formio.full.js +123 -90
  4. package/dist/formio.full.min.js +1 -1
  5. package/dist/formio.js +44 -33
  6. package/dist/formio.min.js +1 -1
  7. package/dist/formio.utils.js +66 -44
  8. package/dist/formio.utils.min.js +1 -1
  9. package/lib/cjs/Element.js +36 -13
  10. package/lib/cjs/EventEmitter.js +25 -2
  11. package/lib/cjs/Form.js +25 -2
  12. package/lib/cjs/PDF.js +1 -1
  13. package/lib/cjs/PDFBuilder.js +5 -4
  14. package/lib/cjs/Webform.js +4 -3
  15. package/lib/cjs/WebformBuilder.js +10 -9
  16. package/lib/cjs/Wizard.js +1 -1
  17. package/lib/cjs/WizardBuilder.js +1 -1
  18. package/lib/cjs/components/_classes/component/Component.d.ts +1 -0
  19. package/lib/cjs/components/_classes/component/Component.js +53 -29
  20. package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
  21. package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
  22. package/lib/cjs/components/_classes/componentModal/ComponentModal.js +1 -1
  23. package/lib/cjs/components/_classes/input/Input.js +1 -1
  24. package/lib/cjs/components/_classes/list/ListComponent.js +1 -1
  25. package/lib/cjs/components/_classes/nested/NestedComponent.js +6 -6
  26. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  27. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
  28. package/lib/cjs/components/address/Address.js +1 -1
  29. package/lib/cjs/components/alert/Alert.js +1 -1
  30. package/lib/cjs/components/button/Button.d.ts +2 -2
  31. package/lib/cjs/components/button/Button.js +10 -14
  32. package/lib/cjs/components/checkbox/Checkbox.js +1 -1
  33. package/lib/cjs/components/container/Container.js +1 -1
  34. package/lib/cjs/components/currency/Currency.js +1 -1
  35. package/lib/cjs/components/datagrid/DataGrid.js +1 -1
  36. package/lib/cjs/components/datamap/DataMap.d.ts +1 -1
  37. package/lib/cjs/components/datamap/DataMap.js +4 -4
  38. package/lib/cjs/components/datetime/DateTime.js +1 -1
  39. package/lib/cjs/components/day/Day.js +1 -1
  40. package/lib/cjs/components/editgrid/EditGrid.js +1 -1
  41. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
  42. package/lib/cjs/components/file/File.js +5 -6
  43. package/lib/cjs/components/form/Form.js +1 -1
  44. package/lib/cjs/components/number/Number.js +1 -1
  45. package/lib/cjs/components/panel/Panel.js +1 -1
  46. package/lib/cjs/components/radio/Radio.d.ts +8 -0
  47. package/lib/cjs/components/radio/Radio.js +16 -6
  48. package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
  49. package/lib/cjs/components/select/Select.js +1 -1
  50. package/lib/cjs/components/select/editForm/Select.edit.data.js +1 -1
  51. package/lib/cjs/components/selectboxes/SelectBoxes.d.ts +6 -0
  52. package/lib/cjs/components/selectboxes/SelectBoxes.js +1 -1
  53. package/lib/cjs/components/signature/Signature.js +1 -1
  54. package/lib/cjs/components/survey/Survey.js +1 -1
  55. package/lib/cjs/components/tags/Tags.js +1 -1
  56. package/lib/cjs/components/textarea/TextArea.js +3 -3
  57. package/lib/cjs/components/textfield/TextField.js +30 -7
  58. package/lib/cjs/components/time/Time.js +1 -1
  59. package/lib/cjs/formio.form.js +3 -3
  60. package/lib/cjs/i18n.js +1 -1
  61. package/lib/cjs/providers/storage/uploadAdapter.js +3 -3
  62. package/lib/cjs/utils/Evaluator.d.ts +6 -13
  63. package/lib/cjs/utils/Evaluator.js +15 -27
  64. package/lib/cjs/utils/builder.js +5 -5
  65. package/lib/cjs/utils/conditionOperators/IsEqualTo.js +3 -3
  66. package/lib/cjs/utils/i18n.js +3 -3
  67. package/lib/cjs/utils/index.d.ts +2 -160
  68. package/lib/cjs/utils/index.js +2 -12
  69. package/lib/cjs/utils/utils.d.ts +5 -0
  70. package/lib/cjs/utils/utils.js +42 -4
  71. package/lib/cjs/widgets/CalendarWidget.js +1 -1
  72. package/lib/mjs/Element.js +6 -6
  73. package/lib/mjs/EventEmitter.js +2 -2
  74. package/lib/mjs/Form.js +1 -1
  75. package/lib/mjs/PDF.js +1 -1
  76. package/lib/mjs/PDFBuilder.js +2 -1
  77. package/lib/mjs/Webform.js +2 -1
  78. package/lib/mjs/WebformBuilder.js +2 -1
  79. package/lib/mjs/Wizard.js +1 -1
  80. package/lib/mjs/WizardBuilder.js +1 -1
  81. package/lib/mjs/components/_classes/component/Component.d.ts +1 -0
  82. package/lib/mjs/components/_classes/component/Component.js +3 -2
  83. package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
  84. package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
  85. package/lib/mjs/components/_classes/componentModal/ComponentModal.js +1 -1
  86. package/lib/mjs/components/_classes/input/Input.js +1 -1
  87. package/lib/mjs/components/_classes/list/ListComponent.js +1 -1
  88. package/lib/mjs/components/_classes/nested/NestedComponent.js +6 -6
  89. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  90. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
  91. package/lib/mjs/components/address/Address.js +1 -1
  92. package/lib/mjs/components/alert/Alert.js +1 -1
  93. package/lib/mjs/components/button/Button.d.ts +2 -2
  94. package/lib/mjs/components/button/Button.js +7 -10
  95. package/lib/mjs/components/checkbox/Checkbox.js +1 -1
  96. package/lib/mjs/components/container/Container.js +1 -1
  97. package/lib/mjs/components/currency/Currency.js +1 -1
  98. package/lib/mjs/components/datagrid/DataGrid.js +1 -1
  99. package/lib/mjs/components/datamap/DataMap.d.ts +1 -1
  100. package/lib/mjs/components/datamap/DataMap.js +1 -1
  101. package/lib/mjs/components/datetime/DateTime.js +1 -1
  102. package/lib/mjs/components/day/Day.js +1 -1
  103. package/lib/mjs/components/editgrid/EditGrid.js +1 -1
  104. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
  105. package/lib/mjs/components/file/File.js +5 -6
  106. package/lib/mjs/components/form/Form.js +1 -1
  107. package/lib/mjs/components/number/Number.js +1 -1
  108. package/lib/mjs/components/panel/Panel.js +1 -1
  109. package/lib/mjs/components/radio/Radio.d.ts +8 -0
  110. package/lib/mjs/components/radio/Radio.js +16 -6
  111. package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
  112. package/lib/mjs/components/select/Select.js +1 -1
  113. package/lib/mjs/components/select/editForm/Select.edit.data.js +1 -1
  114. package/lib/mjs/components/selectboxes/SelectBoxes.d.ts +6 -0
  115. package/lib/mjs/components/selectboxes/SelectBoxes.js +1 -1
  116. package/lib/mjs/components/signature/Signature.js +1 -1
  117. package/lib/mjs/components/survey/Survey.js +1 -1
  118. package/lib/mjs/components/tags/Tags.js +1 -1
  119. package/lib/mjs/components/textarea/TextArea.js +3 -3
  120. package/lib/mjs/components/textfield/TextField.js +1 -1
  121. package/lib/mjs/components/time/Time.js +1 -1
  122. package/lib/mjs/formio.form.js +2 -2
  123. package/lib/mjs/i18n.js +1 -1
  124. package/lib/mjs/providers/storage/uploadAdapter.js +3 -3
  125. package/lib/mjs/utils/Evaluator.d.ts +6 -13
  126. package/lib/mjs/utils/Evaluator.js +13 -21
  127. package/lib/mjs/utils/builder.js +1 -1
  128. package/lib/mjs/utils/conditionOperators/IsEqualTo.js +1 -1
  129. package/lib/mjs/utils/i18n.js +1 -1
  130. package/lib/mjs/utils/index.d.ts +2 -160
  131. package/lib/mjs/utils/index.js +1 -11
  132. package/lib/mjs/utils/utils.d.ts +5 -0
  133. package/lib/mjs/utils/utils.js +23 -1
  134. package/lib/mjs/widgets/CalendarWidget.js +1 -1
  135. package/package.json +2 -2
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const utils_1 = __importDefault(require("./utils"));
7
- const utils_2 = require("../../../../utils");
7
+ const utils_2 = require("../../../../utils/utils");
8
8
  /* eslint-disable quotes, max-len */
9
9
  exports.default = [
10
10
  {
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const utils_1 = __importDefault(require("./utils"));
7
- const utils_2 = require("../../../../utils");
7
+ const utils_2 = require("../../../../utils/utils");
8
8
  /* eslint-disable quotes, max-len */
9
9
  exports.default = [
10
10
  {
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../../utils");
7
+ const utils_1 = require("../../../utils/utils");
8
8
  class ComponentModal {
9
9
  static render(component, data, topLevel) {
10
10
  const children = component.renderTemplate('component', data, topLevel);
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Multivalue_1 = __importDefault(require("../multivalue/Multivalue"));
7
- const utils_1 = require("../../../utils");
7
+ const utils_1 = require("../../../utils/utils");
8
8
  const widgets_1 = __importDefault(require("../../../widgets"));
9
9
  const lodash_1 = __importDefault(require("lodash"));
10
10
  class Input extends Multivalue_1.default {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Field_1 = __importDefault(require("../field/Field"));
7
7
  const Formio_1 = require("../../../Formio");
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../../utils");
9
+ const utils_1 = require("../../../utils/utils");
10
10
  class ListComponent extends Field_1.default {
11
11
  static schema(...extend) {
12
12
  return Field_1.default.schema({
@@ -7,7 +7,7 @@ const lodash_1 = __importDefault(require("lodash"));
7
7
  const Field_1 = __importDefault(require("../field/Field"));
8
8
  const Components_1 = __importDefault(require("../../Components"));
9
9
  '';
10
- const utils_1 = __importDefault(require("../../../utils"));
10
+ const utils_1 = require("../../../utils/utils");
11
11
  const process_1 = require("@formio/core/process");
12
12
  /**
13
13
  * NestedComponent class.
@@ -209,7 +209,7 @@ class NestedComponent extends Field_1.default {
209
209
  set rowIndex(value) {
210
210
  var _a, _b;
211
211
  this._rowIndex = value;
212
- this.paths = utils_1.default.getComponentPaths(this.component, (_a = this.parent) === null || _a === void 0 ? void 0 : _a.component, Object.assign(Object.assign({}, (((_b = this.parent) === null || _b === void 0 ? void 0 : _b.paths) || {})), { dataIndex: value }));
212
+ this.paths = (0, utils_1.getComponentPaths)(this.component, (_a = this.parent) === null || _a === void 0 ? void 0 : _a.component, Object.assign(Object.assign({}, (((_b = this.parent) === null || _b === void 0 ? void 0 : _b.paths) || {})), { dataIndex: value }));
213
213
  this.eachComponent((component) => {
214
214
  component.rowIndex = value;
215
215
  });
@@ -311,7 +311,7 @@ class NestedComponent extends Field_1.default {
311
311
  */
312
312
  getComponent(path) {
313
313
  var _a;
314
- path = utils_1.default.getStringFromComponentPath(path);
314
+ path = (0, utils_1.getStringFromComponentPath)(path);
315
315
  const matches = {
316
316
  path: undefined,
317
317
  fullPath: undefined,
@@ -324,7 +324,7 @@ class NestedComponent extends Field_1.default {
324
324
  this.everyComponent((component) => {
325
325
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
326
326
  // All searches are relative to this component so replace this path from the child paths.
327
- utils_1.default.componentMatches(component.component, {
327
+ (0, utils_1.componentMatches)(component.component, {
328
328
  path: (_b = (_a = component.paths) === null || _a === void 0 ? void 0 : _a.path) === null || _b === void 0 ? void 0 : _b.replace(new RegExp(`^${(_c = this.paths) === null || _c === void 0 ? void 0 : _c.path}\\.?`), ''),
329
329
  fullPath: (_e = (_d = component.paths) === null || _d === void 0 ? void 0 : _d.fullPath) === null || _e === void 0 ? void 0 : _e.replace(new RegExp(`^${(_f = this.paths) === null || _f === void 0 ? void 0 : _f.fullPath}\\.?`), ''),
330
330
  localPath: (_h = (_g = component.paths) === null || _g === void 0 ? void 0 : _g.localPath) === null || _h === void 0 ? void 0 : _h.replace(new RegExp(`^${(_j = this.paths) === null || _j === void 0 ? void 0 : _j.localPath}\\.?`), ''),
@@ -336,7 +336,7 @@ class NestedComponent extends Field_1.default {
336
336
  return match;
337
337
  });
338
338
  });
339
- return (_a = utils_1.default.getBestMatch(matches)) === null || _a === void 0 ? void 0 : _a.instance;
339
+ return (_a = (0, utils_1.getBestMatch)(matches)) === null || _a === void 0 ? void 0 : _a.instance;
340
340
  }
341
341
  /**
342
342
  * Return a component provided the Id of the component.
@@ -378,7 +378,7 @@ class NestedComponent extends Field_1.default {
378
378
  options.localRoot = this.localRoot;
379
379
  options.skipInit = true;
380
380
  if (!(options.display === 'pdf' && this.builderMode)) {
381
- component.id = utils_1.default.getRandomComponentId();
381
+ component.id = (0, utils_1.getRandomComponentId)();
382
382
  }
383
383
  const comp = Components_1.default.create(component, options, data, true);
384
384
  comp.init();
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const utils_1 = require("@formio/core/utils");
8
8
  const { getComponentPaths } = utils_1.Utils;
9
- const utils_2 = require("../../../utils");
9
+ const utils_2 = require("../../../utils/utils");
10
10
  const Component_1 = __importDefault(require("../component/Component"));
11
11
  const NestedDataComponent_1 = __importDefault(require("../nesteddata/NestedDataComponent"));
12
12
  class NestedArrayComponent extends NestedDataComponent_1.default {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const Component_1 = __importDefault(require("../component/Component"));
7
7
  const NestedComponent_1 = __importDefault(require("../nested/NestedComponent"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../../utils");
9
+ const utils_1 = require("../../../utils/utils");
10
10
  class NestedDataComponent extends NestedComponent_1.default {
11
11
  hasChanged(newValue, oldValue) {
12
12
  // If we do not have a value and are getting set to anything other than undefined or null, then we changed.
@@ -11,7 +11,7 @@ const GoogleAddressProvider_1 = require("../../providers/address/GoogleAddressPr
11
11
  const Field_1 = __importDefault(require("../_classes/field/Field"));
12
12
  const NestedComponent_1 = __importDefault(require("../_classes/nested/NestedComponent"));
13
13
  const Container_1 = __importDefault(require("../container/Container"));
14
- const utils_1 = require("../../utils");
14
+ const utils_1 = require("../../utils/utils");
15
15
  exports.AddressComponentMode = {
16
16
  Autocomplete: 'autocomplete',
17
17
  Manual: 'manual',
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../utils");
7
+ const utils_1 = require("../../utils/utils");
8
8
  class Alert {
9
9
  constructor(container, component) {
10
10
  this.container = container;
@@ -7,9 +7,9 @@ export default class ButtonComponent extends Field {
7
7
  weight: number;
8
8
  schema: any;
9
9
  };
10
- static savedValueTypes(schema: any): any;
10
+ static savedValueTypes(schema: any): string[];
11
11
  constructor(component: any, options: any, data: any);
12
- filesUploading: any[];
12
+ filesUploading: number;
13
13
  get inputInfo(): any;
14
14
  get labelInfo(): {
15
15
  hidden: boolean;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const Field_1 = __importDefault(require("../_classes/field/Field"));
8
8
  const Input_1 = __importDefault(require("../_classes/input/Input"));
9
- const formUtils_1 = require("../../utils/formUtils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  class ButtonComponent extends Field_1.default {
11
11
  static schema(...extend) {
12
12
  return Input_1.default.schema({
@@ -35,11 +35,11 @@ class ButtonComponent extends Field_1.default {
35
35
  };
36
36
  }
37
37
  static savedValueTypes(schema) {
38
- return (0, formUtils_1.getComponentSavedTypes)(schema) || [formUtils_1.componentValueTypes.boolean];
38
+ return (0, utils_1.getComponentSavedTypes)(schema) || [utils_1.componentValueTypes.boolean];
39
39
  }
40
40
  constructor(component, options, data) {
41
41
  super(component, options, data);
42
- this.filesUploading = [];
42
+ this.filesUploading = 0;
43
43
  }
44
44
  get defaultSchema() {
45
45
  return ButtonComponent.schema();
@@ -147,16 +147,13 @@ class ButtonComponent extends Field_1.default {
147
147
  this.addClass(this.refs.buttonMessageContainer, 'has-error');
148
148
  this.setContent(this.refs.buttonMessage, resultMessage);
149
149
  }, true);
150
- this.on('fileUploadingStart', (filePromise) => {
151
- this.filesUploading.push(filePromise);
150
+ this.on('fileUploadingStart', () => {
151
+ this.filesUploading++;
152
152
  this.disabled = true;
153
153
  this.setDisabled(this.refs.button, this.disabled);
154
154
  }, true);
155
- this.on('fileUploadingEnd', (filePromise) => {
156
- const index = this.filesUploading.indexOf(filePromise);
157
- if (index !== -1) {
158
- this.filesUploading.splice(index, 1);
159
- }
155
+ this.on('fileUploadingEnd', () => {
156
+ this.filesUploading--;
160
157
  this.disabled = this.shouldDisabled ? true : false;
161
158
  this.setDisabled(this.refs.button, this.disabled);
162
159
  }, true);
@@ -252,8 +249,7 @@ class ButtonComponent extends Field_1.default {
252
249
  }
253
250
  }
254
251
  get shouldDisabled() {
255
- var _a;
256
- return super.shouldDisabled || !!((_a = this.filesUploading) === null || _a === void 0 ? void 0 : _a.length) || this.isDisabledOnInvalid;
252
+ return super.shouldDisabled || this.filesUploading > 0 || this.isDisabledOnInvalid;
257
253
  }
258
254
  attach(element) {
259
255
  this.loadRefs(element, {
@@ -310,7 +306,7 @@ class ButtonComponent extends Field_1.default {
310
306
  const form = this.getRoot();
311
307
  const flattened = {};
312
308
  const components = {};
313
- (0, formUtils_1.eachComponent)(form.components, (componentWrapper, path) => {
309
+ (0, utils_1.eachComponent)(form.components, (componentWrapper, path) => {
314
310
  const component = componentWrapper.component || componentWrapper;
315
311
  flattened[path] = component;
316
312
  components[component.key] = component;
@@ -451,7 +447,7 @@ class ButtonComponent extends Field_1.default {
451
447
  }, 100);
452
448
  }
453
449
  get oauthComponentPath() {
454
- const pathArray = (0, formUtils_1.getArrayFromComponentPath)(this.path);
450
+ const pathArray = (0, utils_1.getArrayFromComponentPath)(this.path);
455
451
  return lodash_1.default.chain(pathArray).filter(pathPart => !lodash_1.default.isNumber(pathPart)).join('.').value();
456
452
  }
457
453
  focus() {
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../utils");
7
+ const utils_1 = require("../../utils/utils");
8
8
  const Field_1 = __importDefault(require("../_classes/field/Field"));
9
9
  class CheckBoxComponent extends Field_1.default {
10
10
  static schema(...extend) {
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../utils");
7
+ const utils_1 = require("../../utils/utils");
8
8
  const Component_1 = __importDefault(require("../_classes/component/Component"));
9
9
  const Field_1 = __importDefault(require("../_classes/field/Field"));
10
10
  const NestedDataComponent_1 = __importDefault(require("../_classes/nesteddata/NestedDataComponent"));
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const text_mask_addons_1 = require("@formio/text-mask-addons");
7
7
  const vanilla_text_mask_1 = require("@formio/vanilla-text-mask");
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../utils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  const Number_1 = __importDefault(require("../number/Number"));
11
11
  class CurrencyComponent extends Number_1.default {
12
12
  static schema(...extend) {
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const NestedArrayComponent_1 = __importDefault(require("../_classes/nestedarray/NestedArrayComponent"));
8
- const utils_1 = require("../../utils");
8
+ const utils_1 = require("../../utils/utils");
9
9
  class DataGridComponent extends NestedArrayComponent_1.default {
10
10
  static schema(...extend) {
11
11
  return NestedArrayComponent_1.default.schema({
@@ -1,5 +1,5 @@
1
1
  export default class DataMapComponent extends DataGridComponent {
2
- static savedValueTypes(schema: any): any;
2
+ static savedValueTypes(schema: any): string[];
3
3
  constructor(component: any, options: any, data: any);
4
4
  get schema(): any;
5
5
  get emptyValue(): {};
@@ -7,7 +7,7 @@ const Component_1 = __importDefault(require("../_classes/component/Component"));
7
7
  const DataGrid_1 = __importDefault(require("../datagrid/DataGrid"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
9
  const eventemitter3_1 = __importDefault(require("eventemitter3"));
10
- const formUtils_1 = require("../../utils/formUtils");
10
+ const utils_1 = require("../../utils/utils");
11
11
  class DataMapComponent extends DataGrid_1.default {
12
12
  static schema(...extend) {
13
13
  return Component_1.default.schema({
@@ -50,7 +50,7 @@ class DataMapComponent extends DataGrid_1.default {
50
50
  return lodash_1.default.omit(schema, 'components');
51
51
  }
52
52
  static savedValueTypes(schema) {
53
- return (0, formUtils_1.getComponentSavedTypes)(schema) || [formUtils_1.componentValueTypes.object];
53
+ return (0, utils_1.getComponentSavedTypes)(schema) || [utils_1.componentValueTypes.object];
54
54
  }
55
55
  constructor(component, options, data) {
56
56
  super(component, options, data);
@@ -149,7 +149,7 @@ class DataMapComponent extends DataGrid_1.default {
149
149
  getRowKey(rowIndex) {
150
150
  const keys = Object.keys(this.dataValue);
151
151
  if (!keys[rowIndex]) {
152
- keys[rowIndex] = (0, formUtils_1.uniqueKey)(this.dataValue, this.defaultRowKey);
152
+ keys[rowIndex] = (0, utils_1.uniqueKey)(this.dataValue, this.defaultRowKey);
153
153
  }
154
154
  return keys[rowIndex];
155
155
  }
@@ -232,7 +232,7 @@ class DataMapComponent extends DataGrid_1.default {
232
232
  components['__key'] = this.createComponent(this.keySchema, options, { __key: this.builderMode ? this.defaultRowKey : key });
233
233
  components['__key'].on('componentChange', (event) => {
234
234
  const dataValue = this.dataValue;
235
- const newKey = (0, formUtils_1.uniqueKey)(dataValue, event.value);
235
+ const newKey = (0, utils_1.uniqueKey)(dataValue, event.value);
236
236
  dataValue[newKey] = dataValue[key];
237
237
  delete dataValue[key];
238
238
  const comp = components[this.valueKey];
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const moment_1 = __importDefault(require("moment"));
8
8
  const utils_1 = __importDefault(require("../../utils"));
9
- const utils_2 = require("../../utils");
9
+ const utils_2 = require("../../utils/utils");
10
10
  const Input_1 = __importDefault(require("../_classes/input/Input"));
11
11
  class DateTimeComponent extends Input_1.default {
12
12
  static schema(...extend) {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const moment_1 = __importDefault(require("moment"));
8
8
  const Field_1 = __importDefault(require("../_classes/field/Field"));
9
- const utils_1 = require("../../utils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  const core_1 = require("@formio/core");
11
11
  class DayComponent extends Field_1.default {
12
12
  static schema(...extend) {
@@ -9,7 +9,7 @@ const components_1 = require("@formio/bootstrap/components");
9
9
  const NestedArrayComponent_1 = __importDefault(require("../_classes/nestedarray/NestedArrayComponent"));
10
10
  const Component_1 = __importDefault(require("../_classes/component/Component"));
11
11
  const Alert_1 = __importDefault(require("../alert/Alert"));
12
- const utils_1 = require("../../utils");
12
+ const utils_1 = require("../../utils/utils");
13
13
  const EditRowState = {
14
14
  New: 'new',
15
15
  Editing: 'editing',
@@ -35,7 +35,7 @@ exports.default = [
35
35
  weight: 1002,
36
36
  input: false,
37
37
  customConditional() {
38
- return !Evaluator_1.Evaluator.noeval || !Evaluator_1.Evaluator.protectedEval;
38
+ return !Evaluator_1.Evaluator.noeval;
39
39
  },
40
40
  },
41
41
  {
@@ -13,7 +13,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  const Field_1 = __importDefault(require("../_classes/field/Field"));
16
- const utils_1 = require("../../utils");
16
+ const utils_1 = require("../../utils/utils");
17
17
  const downloadjs_1 = __importDefault(require("downloadjs"));
18
18
  const lodash_1 = __importDefault(require("lodash"));
19
19
  const fileProcessor_1 = __importDefault(require("../../providers/processor/fileProcessor"));
@@ -905,17 +905,16 @@ class FileComponent extends Field_1.default {
905
905
  }
906
906
  uploadFile(fileToSync) {
907
907
  return __awaiter(this, void 0, void 0, function* () {
908
- const filePromise = this.fileService.uploadFile(fileToSync.storage, fileToSync.file, fileToSync.name, fileToSync.dir,
908
+ return yield this.fileService.uploadFile(fileToSync.storage, fileToSync.file, fileToSync.name, fileToSync.dir,
909
909
  // Progress callback
910
910
  this.updateProgress.bind(this, fileToSync), fileToSync.url, fileToSync.options, fileToSync.fileKey, fileToSync.groupPermissions, fileToSync.groupResourceId, () => {
911
- this.emit('fileUploadingStart', filePromise);
911
+ this.emit('fileUploadingStart');
912
912
  },
913
913
  // Abort upload callback
914
914
  (abort) => this.abortUploads.push({
915
915
  id: fileToSync.id,
916
916
  abort,
917
917
  }), this.getMultipartOptions(fileToSync));
918
- return yield filePromise;
919
918
  });
920
919
  }
921
920
  upload() {
@@ -937,7 +936,7 @@ class FileComponent extends Field_1.default {
937
936
  fileToSync.message = this.t('succefullyUploaded');
938
937
  fileInfo.originalName = fileToSync.originalName;
939
938
  fileInfo.hash = fileToSync.hash;
940
- this.emit('fileUploadingEnd', Promise.resolve(fileInfo));
939
+ this.emit('fileUploadingEnd');
941
940
  }
942
941
  catch (response) {
943
942
  fileToSync.status = 'error';
@@ -947,7 +946,7 @@ class FileComponent extends Field_1.default {
947
946
  : response.type === 'abort'
948
947
  ? this.t('Request was aborted')
949
948
  : response.toString();
950
- this.emit('fileUploadingEnd', Promise.reject(response));
949
+ this.emit('fileUploadingEnd');
951
950
  this.emit('fileUploadError', {
952
951
  fileToSync,
953
952
  response,
@@ -8,7 +8,7 @@ const lodash_1 = __importDefault(require("lodash"));
8
8
  const Component_1 = __importDefault(require("../_classes/component/Component"));
9
9
  const ComponentModal_1 = __importDefault(require("../_classes/componentModal/ComponentModal"));
10
10
  const eventemitter3_1 = __importDefault(require("eventemitter3"));
11
- const utils_1 = require("../../utils");
11
+ const utils_1 = require("../../utils/utils");
12
12
  const Formio_1 = require("../../Formio");
13
13
  const Form_1 = __importDefault(require("../../Form"));
14
14
  class FormComponent extends Component_1.default {
@@ -7,7 +7,7 @@ const text_mask_addons_1 = require("@formio/text-mask-addons");
7
7
  const vanilla_text_mask_1 = require("@formio/vanilla-text-mask");
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
9
  const Input_1 = __importDefault(require("../_classes/input/Input"));
10
- const utils_1 = require("../../utils/");
10
+ const utils_1 = require("../../utils/utils");
11
11
  class NumberComponent extends Input_1.default {
12
12
  static schema(...extend) {
13
13
  return Input_1.default.schema({
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const NestedComponent_1 = __importDefault(require("../_classes/nested/NestedComponent"));
7
- const utils_1 = require("../../utils");
7
+ const utils_1 = require("../../utils/utils");
8
8
  class PanelComponent extends NestedComponent_1.default {
9
9
  static schema(...extend) {
10
10
  return NestedComponent_1.default.schema({
@@ -28,6 +28,7 @@ export default class RadioComponent extends ListComponent {
28
28
  optionsLoaded: boolean | undefined;
29
29
  loadedOptions: any[] | undefined;
30
30
  beforeSubmit(): Promise<any>;
31
+ convertValues(values: any): any;
31
32
  render(): string;
32
33
  attach(element: any): Promise<void>;
33
34
  detach(element: any): void;
@@ -41,5 +42,12 @@ export default class RadioComponent extends ListComponent {
41
42
  setSelectedClasses(): void;
42
43
  updateValue(value: any, flags: any): boolean;
43
44
  currentValue: any;
45
+ /**
46
+ * Normalize values coming into updateValue. For example, depending on the configuration, string value `"true"` will be normalized to boolean `true`.
47
+ * @param {*} value - The value to normalize
48
+ * @returns {*} - Returns the normalized value
49
+ */
50
+ convertByDataType(value: any): any;
51
+ normalizeValue(value: any): any;
44
52
  }
45
53
  import ListComponent from '../_classes/list/ListComponent';
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const ListComponent_1 = __importDefault(require("../_classes/list/ListComponent"));
8
8
  const Formio_1 = require("../../Formio");
9
- const utils_1 = require("../../utils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  class RadioComponent extends ListComponent_1.default {
11
11
  static schema(...extend) {
12
12
  return ListComponent_1.default.schema({
@@ -153,6 +153,12 @@ class RadioComponent extends ListComponent_1.default {
153
153
  this.dataReady.then(() => res(true));
154
154
  });
155
155
  }
156
+ convertValues(values) {
157
+ if (this.options.renderMode === 'html' && this.type === 'radio') {
158
+ return values.map(x => (Object.assign(Object.assign({}, x), { value: this.convertByDataType(x.value) })));
159
+ }
160
+ return values;
161
+ }
156
162
  render() {
157
163
  if (!this.optionsLoaded) {
158
164
  return super.render(this.renderTemplate('loader'));
@@ -160,7 +166,7 @@ class RadioComponent extends ListComponent_1.default {
160
166
  return super.render(this.renderTemplate('radio', {
161
167
  input: this.inputInfo,
162
168
  inline: this.component.inline,
163
- values: this.component.dataSrc === 'values' ? this.component.values : this.loadedOptions,
169
+ values: this.component.dataSrc === 'values' ? this.convertValues(this.component.values) : this.loadedOptions,
164
170
  value: this.dataValue,
165
171
  row: this.row,
166
172
  }));
@@ -406,7 +412,7 @@ class RadioComponent extends ListComponent_1.default {
406
412
  * @param {*} value - The value to normalize
407
413
  * @returns {*} - Returns the normalized value
408
414
  */
409
- normalizeValue(value) {
415
+ convertByDataType(value) {
410
416
  const dataType = this.component.dataType || 'auto';
411
417
  if (value === this.emptyValue) {
412
418
  return value;
@@ -438,14 +444,18 @@ class RadioComponent extends ListComponent_1.default {
438
444
  value = !(!value || value.toString() === 'false');
439
445
  break;
440
446
  }
441
- if (this.isSelectURL && this.templateData && this.templateData[value]) {
447
+ return value;
448
+ }
449
+ normalizeValue(value) {
450
+ const valueConverted = this.convertByDataType(value);
451
+ if (this.isSelectURL && this.templateData && this.templateData[valueConverted]) {
442
452
  const submission = this.root.submission;
443
453
  if (!submission.metadata.selectData) {
444
454
  submission.metadata.selectData = {};
445
455
  }
446
- lodash_1.default.set(submission.metadata.selectData, this.path, this.templateData[value]);
456
+ lodash_1.default.set(submission.metadata.selectData, this.path, this.templateData[valueConverted]);
447
457
  }
448
- return super.normalizeValue(value);
458
+ return super.normalizeValue(valueConverted);
449
459
  }
450
460
  }
451
461
  exports.default = RadioComponent;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- const utils_1 = require("../../../utils");
3
+ const utils_1 = require("../../../utils/utils");
4
4
  exports.default = [
5
5
  {
6
6
  key: 'recaptchaInfo',
@@ -7,7 +7,7 @@ const lodash_1 = __importDefault(require("lodash"));
7
7
  const Formio_1 = require("../../Formio");
8
8
  const ListComponent_1 = __importDefault(require("../_classes/list/ListComponent"));
9
9
  const Form_1 = __importDefault(require("../../Form"));
10
- const utils_1 = require("../../utils");
10
+ const utils_1 = require("../../utils/utils");
11
11
  const ChoicesWrapper_1 = __importDefault(require("../../utils/ChoicesWrapper"));
12
12
  class SelectComponent extends ListComponent_1.default {
13
13
  static schema(...extend) {
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../../utils");
7
+ const utils_1 = require("../../../utils/utils");
8
8
  const calculateSingleSelectData = (context, defaultValue) => {
9
9
  const { instance, data } = context;
10
10
  const rawDefaultValue = instance.downloadedResources.find(resource => lodash_1.default.get(resource, data.valueProperty) === defaultValue);
@@ -8,6 +8,12 @@ export default class SelectBoxesComponent extends RadioComponent {
8
8
  * @returns {boolean} - If the value is empty.
9
9
  */
10
10
  isEmpty(value?: any): boolean;
11
+ /**
12
+ * Normalize values coming into updateValue.
13
+ * @param {any} value - The value to normalize.
14
+ * @returns {*} - The normalized value
15
+ */
16
+ normalizeValue(value: any): any;
11
17
  setInputsDisabled(value: any, onlyUnchecked: any): void;
12
18
  checkComponentValidity(data: any, dirty: any, rowData: any, options: any, errors?: any[]): boolean;
13
19
  }
@@ -4,7 +4,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
- const utils_1 = require("../../utils");
7
+ const utils_1 = require("../../utils/utils");
8
8
  const Radio_1 = __importDefault(require("../radio/Radio"));
9
9
  class SelectBoxesComponent extends Radio_1.default {
10
10
  static schema(...extend) {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const signature_pad_1 = __importDefault(require("signature_pad"));
7
7
  const Input_1 = __importDefault(require("../_classes/input/Input"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../utils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  class SignatureComponent extends Input_1.default {
11
11
  static schema(...extend) {
12
12
  return Input_1.default.schema({
@@ -5,7 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const lodash_1 = __importDefault(require("lodash"));
7
7
  const Field_1 = __importDefault(require("../_classes/field/Field"));
8
- const utils_1 = require("../../utils");
8
+ const utils_1 = require("../../utils/utils");
9
9
  class SurveyComponent extends Field_1.default {
10
10
  static schema(...extend) {
11
11
  return Field_1.default.schema({
@@ -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
- const utils_1 = require("../../utils");
6
+ const utils_1 = require("../../utils/utils");
7
7
  const Input_1 = __importDefault(require("../_classes/input/Input"));
8
8
  const choices_js_1 = __importDefault(require("choices.js"));
9
9
  class TagsComponent extends Input_1.default {
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  /* global Quill */
7
7
  const TextField_1 = __importDefault(require("../textfield/TextField"));
8
8
  const lodash_1 = __importDefault(require("lodash"));
9
- const utils_1 = require("../../utils");
9
+ const utils_1 = require("../../utils/utils");
10
10
  class TextAreaComponent extends TextField_1.default {
11
11
  static schema(...extend) {
12
12
  return TextField_1.default.schema({
@@ -63,8 +63,8 @@ class TextAreaComponent extends TextField_1.default {
63
63
  if ((this.options.readOnly || this.disabled) && !this.isHtmlRenderMode()) {
64
64
  const elementStyle = this.info.attr.style || '';
65
65
  const children = `
66
- <div ${this._referenceAttributeName}="input"
67
- class="formio-editor-read-only-content"
66
+ <div ${this._referenceAttributeName}="input"
67
+ class="formio-editor-read-only-content"
68
68
  ${elementStyle ? `style='${elementStyle}'` : ''}
69
69
  role="textbox"
70
70
  aria-multiline="true"