@formio/js 5.2.0-rc.3 → 5.2.0-rc.4

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 (142) 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 +51 -62
  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 +57 -68
  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 +2 -2
  11. package/dist/formio.min.js +1 -1
  12. package/dist/formio.min.js.LICENSE.txt +1 -1
  13. package/dist/formio.utils.js +10 -10
  14. package/dist/formio.utils.min.js +1 -1
  15. package/dist/formio.utils.min.js.LICENSE.txt +1 -1
  16. package/lib/cjs/Element.js +13 -36
  17. package/lib/cjs/Embed.js +1 -1
  18. package/lib/cjs/EventEmitter.js +2 -25
  19. package/lib/cjs/Form.js +2 -25
  20. package/lib/cjs/Formio.js +1 -1
  21. package/lib/cjs/PDF.js +1 -1
  22. package/lib/cjs/PDFBuilder.js +4 -5
  23. package/lib/cjs/Webform.js +3 -4
  24. package/lib/cjs/WebformBuilder.js +9 -10
  25. package/lib/cjs/Wizard.js +1 -1
  26. package/lib/cjs/WizardBuilder.js +1 -1
  27. package/lib/cjs/components/_classes/component/Component.d.ts +4 -0
  28. package/lib/cjs/components/_classes/component/Component.js +33 -52
  29. package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
  30. package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
  31. package/lib/cjs/components/_classes/componentModal/ComponentModal.js +1 -1
  32. package/lib/cjs/components/_classes/input/Input.js +1 -1
  33. package/lib/cjs/components/_classes/list/ListComponent.js +1 -1
  34. package/lib/cjs/components/_classes/nested/NestedComponent.js +6 -6
  35. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  36. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
  37. package/lib/cjs/components/address/Address.js +1 -1
  38. package/lib/cjs/components/alert/Alert.js +1 -1
  39. package/lib/cjs/components/button/Button.d.ts +1 -1
  40. package/lib/cjs/components/button/Button.js +4 -4
  41. package/lib/cjs/components/checkbox/Checkbox.js +1 -1
  42. package/lib/cjs/components/container/Container.js +1 -1
  43. package/lib/cjs/components/currency/Currency.js +1 -1
  44. package/lib/cjs/components/datagrid/DataGrid.js +1 -1
  45. package/lib/cjs/components/datamap/DataMap.d.ts +1 -1
  46. package/lib/cjs/components/datamap/DataMap.js +4 -4
  47. package/lib/cjs/components/datetime/DateTime.js +1 -1
  48. package/lib/cjs/components/day/Day.js +1 -1
  49. package/lib/cjs/components/editgrid/EditGrid.js +1 -1
  50. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
  51. package/lib/cjs/components/file/File.js +1 -1
  52. package/lib/cjs/components/form/Form.js +1 -1
  53. package/lib/cjs/components/number/Number.js +1 -1
  54. package/lib/cjs/components/panel/Panel.js +1 -1
  55. package/lib/cjs/components/radio/Radio.js +1 -1
  56. package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
  57. package/lib/cjs/components/select/Select.js +1 -1
  58. package/lib/cjs/components/select/editForm/Select.edit.data.js +1 -1
  59. package/lib/cjs/components/selectboxes/SelectBoxes.js +1 -1
  60. package/lib/cjs/components/signature/Signature.js +1 -1
  61. package/lib/cjs/components/survey/Survey.js +1 -1
  62. package/lib/cjs/components/tags/Tags.js +1 -1
  63. package/lib/cjs/components/textarea/TextArea.js +10 -2
  64. package/lib/cjs/components/textfield/TextField.js +7 -30
  65. package/lib/cjs/components/time/Time.js +1 -1
  66. package/lib/cjs/formio.form.js +3 -3
  67. package/lib/cjs/i18n.js +1 -1
  68. package/lib/cjs/providers/storage/uploadAdapter.js +1 -1
  69. package/lib/cjs/utils/Evaluator.d.ts +13 -6
  70. package/lib/cjs/utils/Evaluator.js +27 -15
  71. package/lib/cjs/utils/builder.js +5 -5
  72. package/lib/cjs/utils/conditionOperators/IsEqualTo.js +3 -3
  73. package/lib/cjs/utils/i18n.js +3 -3
  74. package/lib/cjs/utils/index.d.ts +159 -2
  75. package/lib/cjs/utils/index.js +12 -2
  76. package/lib/cjs/utils/utils.d.ts +0 -5
  77. package/lib/cjs/utils/utils.js +4 -42
  78. package/lib/cjs/widgets/CalendarWidget.js +1 -1
  79. package/lib/mjs/Element.js +6 -6
  80. package/lib/mjs/Embed.js +1 -1
  81. package/lib/mjs/EventEmitter.js +2 -2
  82. package/lib/mjs/Form.js +1 -1
  83. package/lib/mjs/Formio.js +1 -1
  84. package/lib/mjs/PDF.js +1 -1
  85. package/lib/mjs/PDFBuilder.js +1 -2
  86. package/lib/mjs/Webform.js +1 -2
  87. package/lib/mjs/WebformBuilder.js +1 -2
  88. package/lib/mjs/Wizard.js +1 -1
  89. package/lib/mjs/WizardBuilder.js +1 -1
  90. package/lib/mjs/components/_classes/component/Component.d.ts +4 -0
  91. package/lib/mjs/components/_classes/component/Component.js +6 -2
  92. package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
  93. package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
  94. package/lib/mjs/components/_classes/componentModal/ComponentModal.js +1 -1
  95. package/lib/mjs/components/_classes/input/Input.js +1 -1
  96. package/lib/mjs/components/_classes/list/ListComponent.js +1 -1
  97. package/lib/mjs/components/_classes/nested/NestedComponent.js +6 -6
  98. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  99. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
  100. package/lib/mjs/components/address/Address.js +1 -1
  101. package/lib/mjs/components/alert/Alert.js +1 -1
  102. package/lib/mjs/components/button/Button.d.ts +1 -1
  103. package/lib/mjs/components/button/Button.js +1 -1
  104. package/lib/mjs/components/checkbox/Checkbox.js +1 -1
  105. package/lib/mjs/components/container/Container.js +1 -1
  106. package/lib/mjs/components/currency/Currency.js +1 -1
  107. package/lib/mjs/components/datagrid/DataGrid.js +1 -1
  108. package/lib/mjs/components/datamap/DataMap.d.ts +1 -1
  109. package/lib/mjs/components/datamap/DataMap.js +1 -1
  110. package/lib/mjs/components/datetime/DateTime.js +1 -1
  111. package/lib/mjs/components/day/Day.js +1 -1
  112. package/lib/mjs/components/editgrid/EditGrid.js +1 -1
  113. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
  114. package/lib/mjs/components/file/File.js +1 -1
  115. package/lib/mjs/components/form/Form.js +1 -1
  116. package/lib/mjs/components/number/Number.js +1 -1
  117. package/lib/mjs/components/panel/Panel.js +1 -1
  118. package/lib/mjs/components/radio/Radio.js +1 -1
  119. package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
  120. package/lib/mjs/components/select/Select.js +1 -1
  121. package/lib/mjs/components/select/editForm/Select.edit.data.js +1 -1
  122. package/lib/mjs/components/selectboxes/SelectBoxes.js +1 -1
  123. package/lib/mjs/components/signature/Signature.js +1 -1
  124. package/lib/mjs/components/survey/Survey.js +1 -1
  125. package/lib/mjs/components/tags/Tags.js +1 -1
  126. package/lib/mjs/components/textarea/TextArea.js +10 -2
  127. package/lib/mjs/components/textfield/TextField.js +1 -1
  128. package/lib/mjs/components/time/Time.js +1 -1
  129. package/lib/mjs/formio.form.js +2 -2
  130. package/lib/mjs/i18n.js +1 -1
  131. package/lib/mjs/providers/storage/uploadAdapter.js +1 -1
  132. package/lib/mjs/utils/Evaluator.d.ts +13 -6
  133. package/lib/mjs/utils/Evaluator.js +21 -13
  134. package/lib/mjs/utils/builder.js +1 -1
  135. package/lib/mjs/utils/conditionOperators/IsEqualTo.js +1 -1
  136. package/lib/mjs/utils/i18n.js +1 -1
  137. package/lib/mjs/utils/index.d.ts +159 -2
  138. package/lib/mjs/utils/index.js +11 -1
  139. package/lib/mjs/utils/utils.d.ts +0 -5
  140. package/lib/mjs/utils/utils.js +1 -23
  141. package/lib/mjs/widgets/CalendarWidget.js +1 -1
  142. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  import _ from 'lodash';
2
2
  import Field from '../_classes/field/Field';
3
- import { boolValue, componentValueTypes, getComponentSavedTypes } from '../../utils/utils';
3
+ import { boolValue, componentValueTypes, getComponentSavedTypes } from '../../utils';
4
4
  export default class SurveyComponent extends Field {
5
5
  static schema(...extend) {
6
6
  return Field.schema({
@@ -1,4 +1,4 @@
1
- import { componentValueTypes, getComponentSavedTypes } from '../../utils/utils';
1
+ import { componentValueTypes, getComponentSavedTypes } from '../../utils';
2
2
  import Input from '../_classes/input/Input';
3
3
  import Choices from '@formio/choices.js';
4
4
  export default class TagsComponent extends Input {
@@ -1,7 +1,7 @@
1
1
  /* global Quill */
2
2
  import TextFieldComponent from '../textfield/TextField';
3
3
  import _ from 'lodash';
4
- import { uniqueName, getBrowserInfo } from '../../utils/utils';
4
+ import { uniqueName, getBrowserInfo } from '../../utils';
5
5
  export default class TextAreaComponent extends TextFieldComponent {
6
6
  static schema(...extend) {
7
7
  return TextFieldComponent.schema({
@@ -57,7 +57,15 @@ export default class TextAreaComponent extends TextFieldComponent {
57
57
  info.content = value;
58
58
  if ((this.options.readOnly || this.disabled) && !this.isHtmlRenderMode()) {
59
59
  const elementStyle = this.info.attr.style || '';
60
- const children = `<div ${this._referenceAttributeName}="input" class="formio-editor-read-only-content" ${elementStyle ? `style='${elementStyle}'` : ''}></div>`;
60
+ const children = `
61
+ <div ${this._referenceAttributeName}="input"
62
+ class="formio-editor-read-only-content"
63
+ ${elementStyle ? `style='${elementStyle}'` : ''}
64
+ role="textbox"
65
+ aria-multiline="true"
66
+ aria-readonly="true"
67
+ >
68
+ </div>`;
61
69
  return this.renderTemplate('well', {
62
70
  children,
63
71
  nestedKey: this.key,
@@ -1,7 +1,7 @@
1
1
  import Input from '../_classes/input/Input';
2
2
  import { conformToMask } from '@formio/vanilla-text-mask';
3
3
  import Inputmask from 'inputmask';
4
- import * as FormioUtils from '../../utils/utils';
4
+ import FormioUtils from '../../utils';
5
5
  import _ from 'lodash';
6
6
  export default class TextFieldComponent extends Input {
7
7
  static schema(...extend) {
@@ -1,6 +1,6 @@
1
1
  import moment from 'moment';
2
2
  import TextFieldComponent from '../textfield/TextField';
3
- import { getBrowserInfo } from '../../utils/utils';
3
+ import { getBrowserInfo } from '../../utils';
4
4
  const defaultDataFormat = 'HH:mm:ss';
5
5
  export default class TimeComponent extends TextFieldComponent {
6
6
  static schema(...extend) {
@@ -8,10 +8,10 @@ import Providers from './providers';
8
8
  import Widgets from './widgets';
9
9
  import Form from './Form';
10
10
  import Utils from './utils';
11
- import { Evaluator } from './utils/Evaluator';
12
11
  import Licenses from './licenses';
13
12
  import EventEmitter from './EventEmitter';
14
13
  import Webform from './Webform';
14
+ import { Evaluator, registerEvaluator } from './utils';
15
15
  Formio.loadModules = (path = `${Formio.getApiUrl()}/externalModules.js`, name = 'externalModules') => {
16
16
  Formio.requireLibrary(name, name, path, true)
17
17
  .then((modules) => {
@@ -81,7 +81,7 @@ export function registerModule(mod, defaultFn = null, options = {}) {
81
81
  Formio.Displays.addDisplays(mod.displays);
82
82
  break;
83
83
  case 'evaluator':
84
- Formio.Evaluator.registerEvaluator(mod.evaluator);
84
+ registerEvaluator(mod.evaluator);
85
85
  break;
86
86
  case 'library':
87
87
  options.license
package/lib/mjs/i18n.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import enTranslation from './translations/en';
2
- import { fastCloneDeep } from './utils/utils';
2
+ import { fastCloneDeep } from './utils';
3
3
  export default {
4
4
  lng: 'en',
5
5
  nsSeparator: '::',
@@ -1,4 +1,4 @@
1
- import { uniqueName } from '../../utils/utils';
1
+ import { uniqueName } from '../../utils';
2
2
  /**
3
3
  * UploadAdapter for CKEditor https://ckeditor.com/docs/ckeditor5/latest/framework/guides/deep-dive/upload-adapter.html
4
4
  */
@@ -1,7 +1,14 @@
1
- export class Evaluator {
2
- static cache: {};
3
- static protectedEval: boolean;
4
- static noeval: boolean;
5
- static template(template: any, hash: any): any;
6
- static interpolate(rawTemplate: any, data: any, _options: any): any;
1
+ /**
2
+ * Set the evaluator to use for evaluating expressions.
3
+ * @param {CoreEvaluator} override - The new evaluator instance to use.
4
+ * @returns {void}
5
+ */
6
+ export function registerEvaluator(override: CoreEvaluator): void;
7
+ export class DefaultEvaluator extends CoreEvaluator {
8
+ cache: {};
9
+ protectedEval: boolean;
10
+ template(template: any, hash: any): any;
11
+ interpolate(rawTemplate: any, data: any, _options: any): any;
7
12
  }
13
+ export let Evaluator: DefaultEvaluator;
14
+ import { DefaultEvaluator as CoreEvaluator } from '@formio/core';
@@ -1,25 +1,24 @@
1
1
  import _ from 'lodash';
2
2
  import stringHash from 'string-hash';
3
- import { JSONLogicEvaluator as CoreEvaluator } from '@formio/core/utils';
4
- export class Evaluator extends CoreEvaluator {
5
- static cache = {};
6
- static protectedEval = false;
7
- static noeval = false;
8
- static template(template, hash) {
3
+ import { DefaultEvaluator as CoreEvaluator } from '@formio/core';
4
+ export class DefaultEvaluator extends CoreEvaluator {
5
+ cache = {};
6
+ protectedEval = false;
7
+ template(template, hash) {
9
8
  hash = hash || stringHash(template);
10
- if (Evaluator.cache[hash]) {
11
- return Evaluator.cache[hash];
9
+ if (this.cache[hash]) {
10
+ return this.cache[hash];
12
11
  }
13
12
  try {
14
13
  // Ensure we handle copied templates from the ejs files.
15
14
  template = template.replace(/ctx\./g, '');
16
- return (Evaluator.cache[hash] = _.template(template, Evaluator.templateSettings));
15
+ return (this.cache[hash] = _.template(template, this.templateSettings));
17
16
  }
18
17
  catch (err) {
19
18
  console.warn('Error while processing template', err, template);
20
19
  }
21
20
  }
22
- static interpolate(rawTemplate, data, _options) {
21
+ interpolate(rawTemplate, data, _options) {
23
22
  // Ensure reverse compatability.
24
23
  const options = _.isObject(_options) ? _options : { noeval: _options };
25
24
  if (typeof rawTemplate === 'function') {
@@ -33,11 +32,11 @@ export class Evaluator extends CoreEvaluator {
33
32
  }
34
33
  rawTemplate = String(rawTemplate);
35
34
  let template;
36
- if (Evaluator.noeval || options.noeval) {
37
- return CoreEvaluator.interpolateString(rawTemplate, data, _options);
35
+ if (this.noeval || options.noeval) {
36
+ return this.interpolateString(rawTemplate, data, _options);
38
37
  }
39
38
  else {
40
- template = Evaluator.template(rawTemplate);
39
+ template = this.template(rawTemplate);
41
40
  }
42
41
  if (typeof template === 'function') {
43
42
  try {
@@ -51,3 +50,12 @@ export class Evaluator extends CoreEvaluator {
51
50
  return template;
52
51
  }
53
52
  }
53
+ export let Evaluator = new DefaultEvaluator();
54
+ /**
55
+ * Set the evaluator to use for evaluating expressions.
56
+ * @param {CoreEvaluator} override - The new evaluator instance to use.
57
+ * @returns {void}
58
+ */
59
+ export function registerEvaluator(override) {
60
+ Evaluator = override;
61
+ }
@@ -1,5 +1,5 @@
1
1
  import _ from 'lodash';
2
- import { eachComponent, uniqueKey } from './utils';
2
+ import { eachComponent, uniqueKey } from './index';
3
3
  export default {
4
4
  /**
5
5
  * Appends a number to a component.key to keep it unique
@@ -1,6 +1,6 @@
1
1
  import ConditionOperator from './ConditionOperator';
2
2
  import _ from 'lodash';
3
- import { compareSelectResourceWithObjectTypeValues, isSelectResourceWithObjectValue } from '../utils';
3
+ import { compareSelectResourceWithObjectTypeValues, isSelectResourceWithObjectValue } from '../';
4
4
  export default class IsEqualTo extends ConditionOperator {
5
5
  static get operatorKey() {
6
6
  return 'isEqual';
@@ -1,4 +1,4 @@
1
- import { Evaluator } from '@formio/core/utils';
1
+ import { Evaluator } from './Evaluator';
2
2
  import i18n from '../i18n';
3
3
  const i18Defaults = {};
4
4
  for (const lang in i18n.resources) {
@@ -1,3 +1,160 @@
1
- export { FormioUtils as Utils };
1
+ export * from "./utils";
2
+ export * from "./formUtils";
2
3
  export default FormioUtils;
3
- import * as FormioUtils from './utils';
4
+ declare const FormioUtils: {
5
+ Evaluator: import("./Evaluator").DefaultEvaluator;
6
+ flattenComponents: typeof import("@formio/core/lib/utils/formUtil").flattenComponents;
7
+ guid: typeof import("@formio/core/lib/utils/formUtil").guid;
8
+ uniqueName: typeof import("@formio/core/lib/utils/formUtil").uniqueName;
9
+ MODEL_TYPES_OF_KNOWN_COMPONENTS: {
10
+ nestedArray: string[];
11
+ nestedDataArray: string[];
12
+ dataObject: string[];
13
+ object: string[];
14
+ map: string[];
15
+ content: string[];
16
+ string: string[];
17
+ number: string[];
18
+ boolean: string[];
19
+ none: string[];
20
+ any: string[];
21
+ };
22
+ getModelType: typeof import("@formio/core/lib/utils/formUtil").getModelType;
23
+ getComponentPath: any;
24
+ setComponentScope: typeof import("@formio/core/lib/utils/formUtil").setComponentScope;
25
+ resetComponentScope: typeof import("@formio/core/lib/utils/formUtil").resetComponentScope;
26
+ isComponentNestedDataType: typeof import("@formio/core/lib/utils/formUtil").isComponentNestedDataType;
27
+ componentPath: typeof import("@formio/core/lib/utils/formUtil").componentPath;
28
+ getComponentPaths: typeof import("@formio/core/lib/utils/formUtil").getComponentPaths;
29
+ componentMatches: typeof import("@formio/core/lib/utils/formUtil").componentMatches;
30
+ getBestMatch: typeof import("@formio/core/lib/utils/formUtil").getBestMatch;
31
+ getComponentFromPath: typeof import("@formio/core/lib/utils/formUtil").getComponentFromPath;
32
+ getComponentValue: typeof import("@formio/core/lib/utils/formUtil").getComponentValue;
33
+ findComponents: typeof import("@formio/core/lib/utils/formUtil").findComponents;
34
+ eachComponentDataAsync: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataAsyncCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => Promise<void>;
35
+ eachComponentData: (components: import("@formio/core").Component[], data: import("@formio/core").DataObject, fn: import("@formio/core").EachComponentDataCallback, includeAll?: boolean | undefined, local?: boolean | undefined, parent?: import("@formio/core").Component | undefined, parentPaths?: import("@formio/core").ComponentPaths | undefined) => void;
36
+ getComponentKey: typeof import("@formio/core/lib/utils/formUtil").getComponentKey;
37
+ getContextualRowPath: typeof import("@formio/core/lib/utils/formUtil").getContextualRowPath;
38
+ getContextualRowData: typeof import("@formio/core/lib/utils/formUtil").getContextualRowData;
39
+ componentInfo: typeof import("@formio/core/lib/utils/formUtil").componentInfo;
40
+ eachComponent: typeof import("@formio/core/lib/utils/formUtil").eachComponent;
41
+ eachComponentAsync: typeof import("@formio/core/lib/utils/formUtil").eachComponentAsync;
42
+ getComponentData: typeof import("@formio/core/lib/utils/formUtil").getComponentData;
43
+ getComponentActualValue: any;
44
+ isLayoutComponent: typeof import("@formio/core/lib/utils/formUtil").isLayoutComponent;
45
+ matchComponent: typeof import("@formio/core/lib/utils/formUtil").matchComponent;
46
+ getComponent: typeof import("@formio/core/lib/utils/formUtil").getComponent;
47
+ searchComponents: typeof import("@formio/core/lib/utils/formUtil").searchComponents;
48
+ removeComponent: typeof import("@formio/core/lib/utils/formUtil").removeComponent;
49
+ hasCondition: typeof import("@formio/core/lib/utils/formUtil").hasCondition;
50
+ parseFloatExt: typeof import("@formio/core/lib/utils/formUtil").parseFloatExt;
51
+ formatAsCurrency: typeof import("@formio/core/lib/utils/formUtil").formatAsCurrency;
52
+ escapeRegExCharacters: typeof import("@formio/core/lib/utils/formUtil").escapeRegExCharacters;
53
+ getValue: typeof import("@formio/core/lib/utils/formUtil").getValue;
54
+ getStrings: typeof import("@formio/core/lib/utils/formUtil").getStrings;
55
+ generateFormChange: typeof import("@formio/core/lib/utils/formUtil").generateFormChange;
56
+ applyFormChanges: typeof import("@formio/core/lib/utils/formUtil").applyFormChanges;
57
+ findComponent: typeof import("@formio/core/lib/utils/formUtil").findComponent;
58
+ getEmptyValue: typeof import("@formio/core/lib/utils/formUtil").getEmptyValue;
59
+ isComponentDataEmpty: typeof import("@formio/core/lib/utils/formUtil").isComponentDataEmpty;
60
+ isSelectResourceWithObjectValue: typeof import("@formio/core/lib/utils/formUtil").isSelectResourceWithObjectValue;
61
+ compareSelectResourceWithObjectTypeValues: typeof import("@formio/core/lib/utils/formUtil").compareSelectResourceWithObjectTypeValues;
62
+ getItemTemplateKeys: typeof import("@formio/core/lib/utils/formUtil").getItemTemplateKeys;
63
+ evaluate(func: string | object | Function, args: any, ret: string, interpolate: boolean, options?: import("@formio/core").EvaluatorOptions): any;
64
+ getRandomComponentId(): string;
65
+ getPropertyValue(style: CSSStyleDeclaration, prop: string): number;
66
+ getElementRect(element: HTMLElement): {
67
+ x: number;
68
+ y: number;
69
+ width: number;
70
+ height: number;
71
+ };
72
+ getScriptPlugin(property: string): any;
73
+ boolValue(value: string | boolean): boolean;
74
+ isMongoId(text: string): boolean;
75
+ checkCalculated(component: import("@formio/core").Component, submission: import("@formio/core").Submission, rowData: any): void;
76
+ checkSimpleConditional(component: any, condition: any, row: any, data: any, instance: any): boolean;
77
+ checkCustomConditional(component: import("@formio/core").Component, custom: string, row: any, data: any, form: import("@formio/core").Form, variable: string, onError: any, instance: any): any;
78
+ checkJsonConditional(component: import("@formio/core").Component, json: import("@formio/core").JSONConditional, row: any, data: any, form: import("@formio/core").Form, onError: any): boolean;
79
+ checkCondition(component: import("@formio/core").Component, row: any, data: any, form: import("@formio/core").Form, instance: any): boolean;
80
+ checkTrigger(component: import("@formio/core").Component, trigger: any, row: import("@formio/core").DataObject, data: import("@formio/core").DataObject, form: import("@formio/core").Form, instance: any): boolean;
81
+ setActionProperty(component: import("@formio/core").Component, action: any, result: string, row: import("@formio/core").DataObject, data: import("@formio/core").DataObject, instance: any): import("@formio/core").Component;
82
+ removeHTML(str: string): string;
83
+ unescapeHTML(str: string): string;
84
+ convertStringToHTMLElement(str: string, selector: string): HTMLElement;
85
+ getDateSetting(date: string | Date): Date | null;
86
+ isValidDate(date: string | Date): boolean;
87
+ currentTimezone(): string;
88
+ offsetDate(date: Date, timezone: string): Date;
89
+ zonesLoaded(): boolean;
90
+ shouldLoadZones(timezone: string): boolean;
91
+ loadZones(url: string, timezone: string): any;
92
+ momentDate(value: string | Date, format: string, timezone: string, options: object): Date;
93
+ formatDate(timezonesUrl: string, value: string | Date, format: string, timezone: string, flatPickrInputFormat: string): string;
94
+ formatOffset(timezonesUrl: string, formatFn: Function, date: string | Date, format: string, timezone: string): string;
95
+ getLocaleDateFormatInfo(locale: Intl.LocalesArgument): object;
96
+ convertFormatToFlatpickr(format: string): string;
97
+ convertFormatToMoment(format: string): string;
98
+ convertFormatToMask(format: string): string;
99
+ getInputMask(mask: string, placeholderChar: string): any[];
100
+ unmaskValue(value: string, mask: string, placeholderChar: string): string;
101
+ matchInputMask(value: string, inputMask: string): boolean;
102
+ getNumberSeparators(lang?: string): {
103
+ delimiter: string;
104
+ decimalSeparator: string;
105
+ };
106
+ getNumberDecimalLimit(component: import("@formio/core").Component, defaultLimit: number): number;
107
+ getCurrencyAffixes({ currency, decimalLimit, decimalSeparator, lang, }: {
108
+ currency: string;
109
+ decimalLimit: number;
110
+ decimalSeparator: string;
111
+ lang: string;
112
+ }): {
113
+ prefix: string;
114
+ suffix: string;
115
+ };
116
+ fieldData(data: import("@formio/core").DataObject, component: import("@formio/core").Component): any;
117
+ delay(fn: Function, delay?: number, ...args: any[]): any;
118
+ iterateKey(key: string): string;
119
+ uniqueKey(map: Record<string, string>, base: string): string;
120
+ bootstrapVersion(options: {
121
+ bootstrap: string;
122
+ }): number;
123
+ unfold(e: any): any;
124
+ withSwitch(a: any, b: any): Functions[];
125
+ observeOverload(callback: Function, options?: {
126
+ limit: number;
127
+ delay: number;
128
+ }): Function;
129
+ getContextComponents(context: any, excludeNested: boolean, excludedTypes?: string[]): any[];
130
+ getContextButtons(context: any): any[];
131
+ translateHTMLTemplate(template: string, translate: Function): string;
132
+ sanitize(string: string, options: any): string;
133
+ fastCloneDeep(obj: any): any;
134
+ isInputComponent(componentJson: import("@formio/core").Component): bool;
135
+ getArrayFromComponentPath(pathStr: string): Arryay<number>;
136
+ isChildOf(child: any, parent: any): boolean;
137
+ getStringFromComponentPath(path: number[]): string;
138
+ round(number: number, precision: number): string;
139
+ getIEBrowserVersion(): number | null;
140
+ getBrowserInfo(): object;
141
+ getComponentPathWithoutIndicies(path?: string): string;
142
+ getDataParentComponent(componentInstance: Component): any;
143
+ isPromise(value: any): boolean;
144
+ getFocusableElements(element: HTMLElement): NodeList<HTMLElement>;
145
+ getComponentSavedTypes(fullSchema: import("@formio/core").Component): string[] | null;
146
+ firstNonNil: any;
147
+ componentValueTypes: {
148
+ number: string;
149
+ string: string;
150
+ boolean: string;
151
+ array: string;
152
+ object: string;
153
+ date: string;
154
+ any: string;
155
+ };
156
+ interpolateErrors: (component: Component, errors: FieldError[], interpolateFn: Function) => [];
157
+ };
158
+ import { Evaluator } from './Evaluator';
159
+ import { registerEvaluator } from './Evaluator';
160
+ export { FormioUtils as Utils, Evaluator, registerEvaluator };
@@ -1,6 +1,16 @@
1
- import * as FormioUtils from './utils';
1
+ import * as utils from './utils';
2
+ import * as formUtils from './formUtils';
3
+ import { Evaluator, registerEvaluator } from './Evaluator';
4
+ const FormioUtils = {
5
+ ...utils,
6
+ ...formUtils,
7
+ Evaluator,
8
+ };
2
9
  if (typeof global === 'object') {
3
10
  global.FormioUtils = FormioUtils;
4
11
  }
5
12
  export { FormioUtils as Utils };
13
+ export { Evaluator, registerEvaluator };
14
+ export * from './utils';
15
+ export * from './formUtils';
6
16
  export default FormioUtils;
@@ -490,7 +490,6 @@ export function getFocusableElements(element: HTMLElement): NodeList<HTMLElement
490
490
  * @returns {Array<string>|null} - The saved types for the component
491
491
  */
492
492
  export function getComponentSavedTypes(fullSchema: import('@formio/core').Component): Array<string> | null;
493
- export * from "./formUtils";
494
493
  /**
495
494
  * Map values through unfold and return first non-nil value.
496
495
  * @param {Array<T>} collection - The collection to map through unfold.;
@@ -507,7 +506,3 @@ export namespace componentValueTypes {
507
506
  let any: string;
508
507
  }
509
508
  export function interpolateErrors(component: Component, errors: FieldError[], interpolateFn: Function): [];
510
- import ConditionOperators from './conditionOperators';
511
- import { Evaluator } from './Evaluator';
512
- export const interpolate: typeof Evaluator.interpolate;
513
- export { jsonLogic, ConditionOperators, moment, Evaluator, _ };
@@ -1,31 +1,12 @@
1
1
  /* global jQuery */
2
2
  import _ from 'lodash';
3
- import jsonLogic from 'json-logic-js';
4
3
  import moment from 'moment-timezone/moment-timezone';
5
4
  import jtz from 'jstimezonedetect';
6
- import { lodashOperators } from './jsonlogic/operators';
7
5
  import dompurify from 'dompurify';
8
6
  import { getValue } from './formUtils';
9
7
  import { Evaluator } from './Evaluator';
10
8
  import ConditionOperators from './conditionOperators';
11
- import { convertShowToBoolean } from '@formio/core';
12
- const interpolate = Evaluator.interpolate;
13
- export * from './formUtils';
14
- // Configure JsonLogic
15
- lodashOperators.forEach((name) => jsonLogic.add_operation(`_${name}`, _[name]));
16
- // Retrieve Any Date
17
- jsonLogic.add_operation('getDate', (date) => {
18
- return moment(date).toISOString();
19
- });
20
- // Set Relative Minimum Date
21
- jsonLogic.add_operation('relativeMinDate', (relativeMinDate) => {
22
- return moment().subtract(relativeMinDate, 'days').toISOString();
23
- });
24
- // Set Relative Maximum Date
25
- jsonLogic.add_operation('relativeMaxDate', (relativeMaxDate) => {
26
- return moment().add(relativeMaxDate, 'days').toISOString();
27
- });
28
- export { jsonLogic, ConditionOperators, moment };
9
+ import { jsonLogic, convertShowToBoolean } from '@formio/core';
29
10
  /**
30
11
  * Evaluate a method.
31
12
  * @param {Function|string|object} func - The function to evaluate.
@@ -1311,7 +1292,6 @@ export function sanitize(string, options) {
1311
1292
  export function fastCloneDeep(obj) {
1312
1293
  return obj ? JSON.parse(JSON.stringify(obj)) : obj;
1313
1294
  }
1314
- export { Evaluator, interpolate };
1315
1295
  /**
1316
1296
  * Returns if the component is an input component.
1317
1297
  * @param {import('@formio/core').Component} componentJson - The JSON of a component.
@@ -1513,8 +1493,6 @@ export function getFocusableElements(element) {
1513
1493
  textarea:not([disabled]), button:not([disabled]), [href]`;
1514
1494
  return element.querySelectorAll(focusableSelector);
1515
1495
  }
1516
- // Export lodash to save space with other libraries.
1517
- export { _ };
1518
1496
  export const componentValueTypes = {
1519
1497
  number: 'number',
1520
1498
  string: 'string',
@@ -1,6 +1,6 @@
1
1
  import { Formio } from '../Formio';
2
2
  import InputWidget from './InputWidget';
3
- import { convertFormatToFlatpickr, convertFormatToMask, convertFormatToMoment, formatDate, formatOffset, getBrowserInfo, getDateSetting, getLocaleDateFormatInfo, momentDate, zonesLoaded, shouldLoadZones, loadZones, } from '../utils/utils';
3
+ import { convertFormatToFlatpickr, convertFormatToMask, convertFormatToMoment, formatDate, formatOffset, getBrowserInfo, getDateSetting, getLocaleDateFormatInfo, momentDate, zonesLoaded, shouldLoadZones, loadZones } from '../utils';
4
4
  import moment from 'moment';
5
5
  import _ from 'lodash';
6
6
  const DEFAULT_FORMAT = 'yyyy-MM-dd hh:mm a';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@formio/js",
3
- "version": "5.2.0-rc.3",
3
+ "version": "5.2.0-rc.4",
4
4
  "description": "JavaScript powered Forms with JSON Form Builder",
5
5
  "main": "lib/cjs/index.js",
6
6
  "exports": {