@formio/js 5.1.0-dev.6115.a496b38 → 5.1.0-dev.6126.7fb6eb6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/formio.embed.js +1 -1
- package/dist/formio.embed.min.js +1 -1
- package/dist/formio.form.js +113 -124
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.full.js +120 -131
- package/dist/formio.full.min.js +1 -1
- package/dist/formio.js +62 -51
- package/dist/formio.min.js +1 -1
- package/dist/formio.utils.js +72 -72
- package/dist/formio.utils.min.js +1 -1
- package/lib/cjs/Element.js +13 -36
- package/lib/cjs/Embed.js +9 -1
- package/lib/cjs/EventEmitter.js +2 -25
- package/lib/cjs/Form.js +2 -25
- package/lib/cjs/PDF.js +1 -1
- package/lib/cjs/PDFBuilder.js +4 -5
- package/lib/cjs/Webform.js +5 -6
- package/lib/cjs/WebformBuilder.js +9 -10
- package/lib/cjs/Wizard.js +1 -1
- package/lib/cjs/WizardBuilder.js +1 -1
- package/lib/cjs/components/_classes/component/Component.d.ts +0 -1
- package/lib/cjs/components/_classes/component/Component.js +33 -54
- package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
- package/lib/cjs/components/_classes/componentModal/ComponentModal.js +1 -1
- package/lib/cjs/components/_classes/input/Input.js +1 -1
- package/lib/cjs/components/_classes/list/ListComponent.js +1 -1
- package/lib/cjs/components/_classes/nested/NestedComponent.js +6 -6
- package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
- package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
- package/lib/cjs/components/address/Address.js +1 -1
- package/lib/cjs/components/alert/Alert.js +1 -1
- package/lib/cjs/components/button/Button.d.ts +1 -1
- package/lib/cjs/components/button/Button.js +4 -4
- package/lib/cjs/components/checkbox/Checkbox.js +1 -1
- package/lib/cjs/components/container/Container.js +1 -1
- package/lib/cjs/components/currency/Currency.js +1 -1
- package/lib/cjs/components/datagrid/DataGrid.js +1 -1
- package/lib/cjs/components/datamap/DataMap.d.ts +1 -1
- package/lib/cjs/components/datamap/DataMap.js +4 -4
- package/lib/cjs/components/datetime/DateTime.d.ts +1 -1
- package/lib/cjs/components/datetime/DateTime.js +15 -13
- package/lib/cjs/components/day/Day.js +1 -1
- package/lib/cjs/components/editgrid/EditGrid.js +1 -1
- package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
- package/lib/cjs/components/file/File.js +1 -1
- package/lib/cjs/components/form/Form.js +1 -1
- package/lib/cjs/components/form/editForm/Form.edit.form.js +4 -3
- package/lib/cjs/components/number/Number.js +1 -1
- package/lib/cjs/components/panel/Panel.js +1 -1
- package/lib/cjs/components/radio/Radio.js +1 -1
- package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
- package/lib/cjs/components/select/Select.js +1 -1
- package/lib/cjs/components/select/editForm/Select.edit.data.js +1 -1
- package/lib/cjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/cjs/components/signature/Signature.js +1 -1
- package/lib/cjs/components/survey/Survey.js +1 -1
- package/lib/cjs/components/tags/Tags.js +1 -1
- package/lib/cjs/components/textarea/TextArea.js +3 -3
- package/lib/cjs/components/textfield/TextField.js +7 -30
- package/lib/cjs/components/time/Time.js +1 -1
- package/lib/cjs/formio.form.js +3 -3
- package/lib/cjs/i18n.js +1 -1
- package/lib/cjs/providers/storage/uploadAdapter.js +1 -1
- package/lib/cjs/utils/Evaluator.d.ts +13 -6
- package/lib/cjs/utils/Evaluator.js +27 -15
- package/lib/cjs/utils/builder.js +5 -5
- package/lib/cjs/utils/conditionOperators/IsEqualTo.js +3 -3
- package/lib/cjs/utils/i18n.js +3 -3
- package/lib/cjs/utils/index.d.ts +161 -2
- package/lib/cjs/utils/index.js +12 -2
- package/lib/cjs/utils/utils.d.ts +18 -33
- package/lib/cjs/utils/utils.js +52 -130
- package/lib/cjs/widgets/CalendarWidget.d.ts +0 -7
- package/lib/cjs/widgets/CalendarWidget.js +15 -39
- package/lib/mjs/Element.js +6 -6
- package/lib/mjs/Embed.js +9 -1
- package/lib/mjs/EventEmitter.js +2 -2
- package/lib/mjs/Form.js +1 -1
- package/lib/mjs/PDF.js +1 -1
- package/lib/mjs/PDFBuilder.js +1 -2
- package/lib/mjs/Webform.js +3 -4
- package/lib/mjs/WebformBuilder.js +1 -2
- package/lib/mjs/Wizard.js +1 -1
- package/lib/mjs/WizardBuilder.js +1 -1
- package/lib/mjs/components/_classes/component/Component.d.ts +0 -1
- package/lib/mjs/components/_classes/component/Component.js +6 -4
- package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +1 -1
- package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +1 -1
- package/lib/mjs/components/_classes/componentModal/ComponentModal.js +1 -1
- package/lib/mjs/components/_classes/input/Input.js +1 -1
- package/lib/mjs/components/_classes/list/ListComponent.js +1 -1
- package/lib/mjs/components/_classes/nested/NestedComponent.js +6 -6
- package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
- package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +1 -1
- package/lib/mjs/components/address/Address.js +1 -1
- package/lib/mjs/components/alert/Alert.js +1 -1
- package/lib/mjs/components/button/Button.d.ts +1 -1
- package/lib/mjs/components/button/Button.js +1 -1
- package/lib/mjs/components/checkbox/Checkbox.js +1 -1
- package/lib/mjs/components/container/Container.js +1 -1
- package/lib/mjs/components/currency/Currency.js +1 -1
- package/lib/mjs/components/datagrid/DataGrid.js +1 -1
- package/lib/mjs/components/datamap/DataMap.d.ts +1 -1
- package/lib/mjs/components/datamap/DataMap.js +1 -1
- package/lib/mjs/components/datetime/DateTime.d.ts +1 -1
- package/lib/mjs/components/datetime/DateTime.js +15 -13
- package/lib/mjs/components/day/Day.js +1 -1
- package/lib/mjs/components/editgrid/EditGrid.js +1 -1
- package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
- package/lib/mjs/components/file/File.js +1 -1
- package/lib/mjs/components/form/Form.js +1 -1
- package/lib/mjs/components/form/editForm/Form.edit.form.js +3 -2
- package/lib/mjs/components/number/Number.js +1 -1
- package/lib/mjs/components/panel/Panel.js +1 -1
- package/lib/mjs/components/radio/Radio.js +1 -1
- package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +1 -1
- package/lib/mjs/components/select/Select.js +1 -1
- package/lib/mjs/components/select/editForm/Select.edit.data.js +1 -1
- package/lib/mjs/components/selectboxes/SelectBoxes.js +1 -1
- package/lib/mjs/components/signature/Signature.js +1 -1
- package/lib/mjs/components/survey/Survey.js +1 -1
- package/lib/mjs/components/tags/Tags.js +1 -1
- package/lib/mjs/components/textarea/TextArea.js +3 -3
- package/lib/mjs/components/textfield/TextField.js +1 -1
- package/lib/mjs/components/time/Time.js +1 -1
- package/lib/mjs/formio.form.js +2 -2
- package/lib/mjs/i18n.js +1 -1
- package/lib/mjs/providers/storage/uploadAdapter.js +1 -1
- package/lib/mjs/utils/Evaluator.d.ts +13 -6
- package/lib/mjs/utils/Evaluator.js +21 -13
- package/lib/mjs/utils/builder.js +1 -1
- package/lib/mjs/utils/conditionOperators/IsEqualTo.js +1 -1
- package/lib/mjs/utils/i18n.js +1 -1
- package/lib/mjs/utils/index.d.ts +161 -2
- package/lib/mjs/utils/index.js +11 -1
- package/lib/mjs/utils/utils.d.ts +18 -33
- package/lib/mjs/utils/utils.js +45 -105
- package/lib/mjs/widgets/CalendarWidget.d.ts +0 -7
- package/lib/mjs/widgets/CalendarWidget.js +15 -39
- package/package.json +3 -2
@@ -4,7 +4,7 @@ import { editgrid as templates } from '@formio/bootstrap/components';
|
|
4
4
|
import NestedArrayComponent from '../_classes/nestedarray/NestedArrayComponent';
|
5
5
|
import Component from '../_classes/component/Component';
|
6
6
|
import Alert from '../alert/Alert';
|
7
|
-
import { fastCloneDeep, Evaluator, getArrayFromComponentPath, eachComponent } from '../../utils
|
7
|
+
import { fastCloneDeep, Evaluator, getArrayFromComponentPath, eachComponent } from '../../utils';
|
8
8
|
const EditRowState = {
|
9
9
|
New: 'new',
|
10
10
|
Editing: 'editing',
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import Field from '../_classes/field/Field';
|
2
|
-
import { componentValueTypes, getComponentSavedTypes, uniqueName } from '../../utils
|
2
|
+
import { componentValueTypes, getComponentSavedTypes, uniqueName } from '../../utils';
|
3
3
|
import download from 'downloadjs';
|
4
4
|
import _ from 'lodash';
|
5
5
|
import fileProcessor from '../../providers/processor/fileProcessor';
|
@@ -3,7 +3,7 @@ import _ from 'lodash';
|
|
3
3
|
import Component from '../_classes/component/Component';
|
4
4
|
import ComponentModal from '../_classes/componentModal/ComponentModal';
|
5
5
|
import EventEmitter from 'eventemitter3';
|
6
|
-
import { isMongoId, eachComponent, componentValueTypes } from '../../utils
|
6
|
+
import { isMongoId, eachComponent, componentValueTypes } from '../../utils';
|
7
7
|
import { Formio } from '../../Formio';
|
8
8
|
import Form from '../../Form';
|
9
9
|
export default class FormComponent extends Component {
|
@@ -30,9 +30,10 @@ export default [
|
|
30
30
|
tooltip: 'if it is checked, the subform is loaded after navigation to the page with this component within the wizard.',
|
31
31
|
input: true,
|
32
32
|
customConditional({ instance, data }) {
|
33
|
-
const
|
33
|
+
const formComp = instance.root?.getComponent('form');
|
34
|
+
const formInfo = formComp?.defaultDownloadedResources.find(res => res._id === data.form);
|
34
35
|
const displayMode = 'wizard';
|
35
|
-
return instance.options?.editForm?.display === displayMode && formInfo && formInfo.display !== displayMode;
|
36
|
+
return instance.options?.editForm?.display === displayMode && ((data.form && !formInfo) || (formInfo && formInfo.display !== displayMode));
|
36
37
|
},
|
37
38
|
},
|
38
39
|
{
|
@@ -2,7 +2,7 @@ import { createNumberMask } from '@formio/text-mask-addons';
|
|
2
2
|
import { conformToMask, maskInput } from '@formio/vanilla-text-mask';
|
3
3
|
import _ from 'lodash';
|
4
4
|
import Input from '../_classes/input/Input';
|
5
|
-
import { getNumberSeparators, getNumberDecimalLimit, componentValueTypes, getComponentSavedTypes } from '../../utils/
|
5
|
+
import { getNumberSeparators, getNumberDecimalLimit, componentValueTypes, getComponentSavedTypes } from '../../utils/';
|
6
6
|
export default class NumberComponent extends Input {
|
7
7
|
static schema(...extend) {
|
8
8
|
return Input.schema({
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import NestedComponent from '../_classes/nested/NestedComponent';
|
2
|
-
import { isChildOf } from '../../utils
|
2
|
+
import { isChildOf } from '../../utils';
|
3
3
|
export default class PanelComponent extends NestedComponent {
|
4
4
|
static schema(...extend) {
|
5
5
|
return NestedComponent.schema({
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import _ from 'lodash';
|
2
2
|
import ListComponent from '../_classes/list/ListComponent';
|
3
3
|
import { Formio } from '../../Formio';
|
4
|
-
import { boolValue, componentValueTypes, getComponentSavedTypes } from '../../utils
|
4
|
+
import { boolValue, componentValueTypes, getComponentSavedTypes } from '../../utils';
|
5
5
|
export default class RadioComponent extends ListComponent {
|
6
6
|
static schema(...extend) {
|
7
7
|
return ListComponent.schema({
|
@@ -2,7 +2,7 @@ import _ from 'lodash';
|
|
2
2
|
import { Formio } from '../../Formio';
|
3
3
|
import ListComponent from '../_classes/list/ListComponent';
|
4
4
|
import Form from '../../Form';
|
5
|
-
import { getRandomComponentId, boolValue, isPromise, componentValueTypes, getComponentSavedTypes, isSelectResourceWithObjectValue, removeHTML } from '../../utils
|
5
|
+
import { getRandomComponentId, boolValue, isPromise, componentValueTypes, getComponentSavedTypes, isSelectResourceWithObjectValue, removeHTML } from '../../utils';
|
6
6
|
import Choices from '../../utils/ChoicesWrapper';
|
7
7
|
export default class SelectComponent extends ListComponent {
|
8
8
|
static schema(...extend) {
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import _ from 'lodash';
|
2
|
-
import { eachComponent } from '../../../utils
|
2
|
+
import { eachComponent } from '../../../utils';
|
3
3
|
const calculateSingleSelectData = (context, defaultValue) => {
|
4
4
|
const { instance, data } = context;
|
5
5
|
const rawDefaultValue = instance.downloadedResources.find(resource => _.get(resource, data.valueProperty) === defaultValue);
|
@@ -1,5 +1,5 @@
|
|
1
1
|
import _ from 'lodash';
|
2
|
-
import { componentValueTypes, getComponentSavedTypes, boolValue, getComponent } from '../../utils
|
2
|
+
import { componentValueTypes, getComponentSavedTypes, boolValue, getComponent } from '../../utils';
|
3
3
|
import RadioComponent from '../radio/Radio';
|
4
4
|
export default class SelectBoxesComponent extends RadioComponent {
|
5
5
|
static schema(...extend) {
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import SignaturePad from 'signature_pad';
|
2
2
|
import Input from '../_classes/input/Input';
|
3
3
|
import _ from 'lodash';
|
4
|
-
import { componentValueTypes, getComponentSavedTypes } from '../../utils
|
4
|
+
import { componentValueTypes, getComponentSavedTypes } from '../../utils';
|
5
5
|
export default class SignatureComponent extends Input {
|
6
6
|
static schema(...extend) {
|
7
7
|
return Input.schema({
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import _ from 'lodash';
|
2
2
|
import Field from '../_classes/field/Field';
|
3
|
-
import { boolValue, componentValueTypes, getComponentSavedTypes } from '../../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
|
1
|
+
import { componentValueTypes, getComponentSavedTypes } from '../../utils';
|
2
2
|
import Input from '../_classes/input/Input';
|
3
3
|
import Choices from '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
|
4
|
+
import { uniqueName, getBrowserInfo } from '../../utils';
|
5
5
|
export default class TextAreaComponent extends TextFieldComponent {
|
6
6
|
static schema(...extend) {
|
7
7
|
return TextFieldComponent.schema({
|
@@ -58,8 +58,8 @@ export default class TextAreaComponent extends TextFieldComponent {
|
|
58
58
|
if ((this.options.readOnly || this.disabled) && !this.isHtmlRenderMode()) {
|
59
59
|
const elementStyle = this.info.attr.style || '';
|
60
60
|
const children = `
|
61
|
-
<div ${this._referenceAttributeName}="input"
|
62
|
-
class="formio-editor-read-only-content"
|
61
|
+
<div ${this._referenceAttributeName}="input"
|
62
|
+
class="formio-editor-read-only-content"
|
63
63
|
${elementStyle ? `style='${elementStyle}'` : ''}
|
64
64
|
role="textbox"
|
65
65
|
aria-multiline="true"
|
@@ -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
|
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
|
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) {
|
package/lib/mjs/formio.form.js
CHANGED
@@ -8,11 +8,11 @@ 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';
|
15
14
|
import { I18n } from './utils/i18n';
|
15
|
+
import { Evaluator, registerEvaluator } from './utils';
|
16
16
|
Formio.loadModules = (path = `${Formio.getApiUrl()}/externalModules.js`, name = 'externalModules') => {
|
17
17
|
Formio.requireLibrary(name, name, path, true)
|
18
18
|
.then((modules) => {
|
@@ -83,7 +83,7 @@ export function registerModule(mod, defaultFn = null, options = {}) {
|
|
83
83
|
Formio.Displays.addDisplays(mod.displays);
|
84
84
|
break;
|
85
85
|
case 'evaluator':
|
86
|
-
|
86
|
+
registerEvaluator(mod.evaluator);
|
87
87
|
break;
|
88
88
|
case 'translations':
|
89
89
|
I18n.setDefaultTranslations(mod.translations);
|
package/lib/mjs/i18n.js
CHANGED
@@ -1,7 +1,14 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
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 {
|
4
|
-
export class
|
5
|
-
|
6
|
-
|
7
|
-
|
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 (
|
11
|
-
return
|
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 (
|
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
|
-
|
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 (
|
37
|
-
return
|
35
|
+
if (this.noeval || options.noeval) {
|
36
|
+
return this.interpolateString(rawTemplate, data, _options);
|
38
37
|
}
|
39
38
|
else {
|
40
|
-
template =
|
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
|
+
}
|
package/lib/mjs/utils/builder.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import ConditionOperator from './ConditionOperator';
|
2
2
|
import _ from 'lodash';
|
3
|
-
import { compareSelectResourceWithObjectTypeValues, isSelectResourceWithObjectValue } from '../
|
3
|
+
import { compareSelectResourceWithObjectTypeValues, isSelectResourceWithObjectValue } from '../';
|
4
4
|
export default class IsEqualTo extends ConditionOperator {
|
5
5
|
static get operatorKey() {
|
6
6
|
return 'isEqual';
|
package/lib/mjs/utils/i18n.js
CHANGED
package/lib/mjs/utils/index.d.ts
CHANGED
@@ -1,3 +1,162 @@
|
|
1
|
-
export
|
1
|
+
export * from "./utils";
|
2
|
+
export * from "./formUtils";
|
2
3
|
export default FormioUtils;
|
3
|
-
|
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): import("dayjs").Dayjs | null;
|
86
|
+
isValidDate(date: string | Date): boolean;
|
87
|
+
currentTimezone(): string;
|
88
|
+
offsetDate(date: Date, timezone: string): {
|
89
|
+
date: Date;
|
90
|
+
abbr: string;
|
91
|
+
};
|
92
|
+
shouldHandleTimezone(timezone: string): boolean;
|
93
|
+
dayjsDate(value: string | Date, format: string, timezone: string, options: object): import("dayjs").Dayjs;
|
94
|
+
formatDate(value: string | Date, format: string, timezone: string, flatPickrInputFormat: string): string;
|
95
|
+
formatOffset(formatFn: Function, date: string | Date, format: string, timezone: string): string;
|
96
|
+
getLocaleDateFormatInfo(locale: Intl.LocalesArgument): object;
|
97
|
+
convertFormatToFlatpickr(format: string): string;
|
98
|
+
convertFormatToDayjs(format: string): string;
|
99
|
+
convertFormatToMask(format: string): string;
|
100
|
+
getInputMask(mask: string, placeholderChar: string): any[];
|
101
|
+
unmaskValue(value: string, mask: string, placeholderChar: string): string;
|
102
|
+
matchInputMask(value: string, inputMask: string): boolean;
|
103
|
+
getNumberSeparators(lang?: string): {
|
104
|
+
delimiter: string;
|
105
|
+
decimalSeparator: string;
|
106
|
+
};
|
107
|
+
getNumberDecimalLimit(component: import("@formio/core").Component, defaultLimit: number): number;
|
108
|
+
getCurrencyAffixes({ currency, decimalLimit, decimalSeparator, lang, }: {
|
109
|
+
currency: string;
|
110
|
+
decimalLimit: number;
|
111
|
+
decimalSeparator: string;
|
112
|
+
lang: string;
|
113
|
+
}): {
|
114
|
+
prefix: string;
|
115
|
+
suffix: string;
|
116
|
+
};
|
117
|
+
fieldData(data: import("@formio/core").DataObject, component: import("@formio/core").Component): any;
|
118
|
+
delay(fn: Function, delay?: number, ...args: any[]): any;
|
119
|
+
iterateKey(key: string): string;
|
120
|
+
uniqueKey(map: Record<string, string>, base: string): string;
|
121
|
+
bootstrapVersion(options: {
|
122
|
+
bootstrap: string;
|
123
|
+
}): number;
|
124
|
+
unfold(e: any): any;
|
125
|
+
withSwitch(a: any, b: any): Functions[];
|
126
|
+
observeOverload(callback: Function, options?: {
|
127
|
+
limit: number;
|
128
|
+
delay: number;
|
129
|
+
}): Function;
|
130
|
+
getContextComponents(context: any, excludeNested: boolean, excludedTypes?: string[]): any[];
|
131
|
+
getContextButtons(context: any): any[];
|
132
|
+
translateHTMLTemplate(template: string, translate: Function): string;
|
133
|
+
sanitize(string: string, options: any): string;
|
134
|
+
fastCloneDeep(obj: any): any;
|
135
|
+
isInputComponent(componentJson: import("@formio/core").Component): bool;
|
136
|
+
getArrayFromComponentPath(pathStr: string): Arryay<number>;
|
137
|
+
isChildOf(child: any, parent: any): boolean;
|
138
|
+
getStringFromComponentPath(path: number[]): string;
|
139
|
+
round(number: number, precision: number): string;
|
140
|
+
getIEBrowserVersion(): number | null;
|
141
|
+
getBrowserInfo(): object;
|
142
|
+
getComponentPathWithoutIndicies(path?: string): string;
|
143
|
+
getDataParentComponent(componentInstance: Component): any;
|
144
|
+
isPromise(value: any): boolean;
|
145
|
+
getFocusableElements(element: HTMLElement): NodeList<HTMLElement>;
|
146
|
+
getComponentSavedTypes(fullSchema: import("@formio/core").Component): string[] | null;
|
147
|
+
hasEncodedTimezone(value: string): boolean;
|
148
|
+
firstNonNil: any;
|
149
|
+
componentValueTypes: {
|
150
|
+
number: string;
|
151
|
+
string: string;
|
152
|
+
boolean: string;
|
153
|
+
array: string;
|
154
|
+
object: string;
|
155
|
+
date: string;
|
156
|
+
any: string;
|
157
|
+
};
|
158
|
+
interpolateErrors: (component: Component, errors: FieldError[], interpolateFn: Function) => [];
|
159
|
+
};
|
160
|
+
import { Evaluator } from './Evaluator';
|
161
|
+
import { registerEvaluator } from './Evaluator';
|
162
|
+
export { FormioUtils as Utils, Evaluator, registerEvaluator };
|
package/lib/mjs/utils/index.js
CHANGED
@@ -1,6 +1,16 @@
|
|
1
|
-
import * as
|
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;
|
package/lib/mjs/utils/utils.d.ts
CHANGED
@@ -164,9 +164,9 @@ export function guid(): string;
|
|
164
164
|
/**
|
165
165
|
* Return a translated date setting.
|
166
166
|
* @param {string|Date} date - The date to translate.
|
167
|
-
* @returns {(null|
|
167
|
+
* @returns {(null|dayjs.Dayjs)} - The translated date.
|
168
168
|
*/
|
169
|
-
export function getDateSetting(date: string | Date): (null |
|
169
|
+
export function getDateSetting(date: string | Date): (null | dayjs.Dayjs);
|
170
170
|
/**
|
171
171
|
* Returns true if the date is a valid date. False otherwise.
|
172
172
|
* @param {Date|string} date - The date to check for validity.
|
@@ -182,56 +182,45 @@ export function currentTimezone(): string;
|
|
182
182
|
* Get an offset date provided a date object and timezone object.
|
183
183
|
* @param {Date} date - The date to offset.
|
184
184
|
* @param {string} timezone - The timezone to offset the date to.
|
185
|
-
* @returns {Date} - The offset date.
|
185
|
+
* @returns {{date: Date, abbr: string}} - The offset date.
|
186
186
|
*/
|
187
|
-
export function offsetDate(date: Date, timezone: string):
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
*/
|
192
|
-
export function zonesLoaded(): boolean;
|
187
|
+
export function offsetDate(date: Date, timezone: string): {
|
188
|
+
date: Date;
|
189
|
+
abbr: string;
|
190
|
+
};
|
193
191
|
/**
|
194
|
-
* Returns if we should
|
192
|
+
* Returns if we should handle a timezone difference.
|
195
193
|
* @param {string} timezone - The timezone to check if we should load the zones.
|
196
|
-
* @returns {boolean} - TRUE if we should
|
197
|
-
*/
|
198
|
-
export function shouldLoadZones(timezone: string): boolean;
|
199
|
-
/**
|
200
|
-
* Externally load the timezone data.
|
201
|
-
* @param {string} url - The URL to load the timezone data from.
|
202
|
-
* @param {string} timezone - The timezone to load.
|
203
|
-
* @returns {Promise<any> | *} - Resolves when the zones for this timezone are loaded.
|
194
|
+
* @returns {boolean} - TRUE if we should handle timezones; FALSE otherwise.
|
204
195
|
*/
|
205
|
-
export function
|
196
|
+
export function shouldHandleTimezone(timezone: string): boolean;
|
206
197
|
/**
|
207
|
-
* Get the
|
208
|
-
* @param {string|Date} value - The value to convert into a
|
198
|
+
* Get the Dayjs date object for translating dates with timezones.
|
199
|
+
* @param {string|Date} value - The value to convert into a dayjs date.
|
209
200
|
* @param {string} format - The format to convert the date to.
|
210
201
|
* @param {string} timezone - The timezone to convert the date to.
|
211
202
|
* @param {object} options - The options object
|
212
|
-
* @returns {
|
203
|
+
* @returns {dayjs.Dayjs} - The dayjs date object.
|
213
204
|
*/
|
214
|
-
export function
|
205
|
+
export function dayjsDate(value: string | Date, format: string, timezone: string, options: object): dayjs.Dayjs;
|
215
206
|
/**
|
216
207
|
* Format a date provided a value, format, and timezone object.
|
217
|
-
* @param {string} timezonesUrl - The URL to load the timezone data from.
|
218
208
|
* @param {string|Date} value - The value to format.
|
219
209
|
* @param {string} format - The format to format the date to.
|
220
210
|
* @param {string} timezone - The timezone to format the date to.
|
221
211
|
* @param {string} flatPickrInputFormat - The format to use for flatpickr input.
|
222
212
|
* @returns {string} - The formatted date.
|
223
213
|
*/
|
224
|
-
export function formatDate(
|
214
|
+
export function formatDate(value: string | Date, format: string, timezone: string, flatPickrInputFormat: string): string;
|
225
215
|
/**
|
226
216
|
* Pass a format function to format within a timezone.
|
227
|
-
* @param {string} timezonesUrl - The URL to load the timezone data from.
|
228
217
|
* @param {Function} formatFn - The format function to use.
|
229
218
|
* @param {Date|string} date - The date to format.
|
230
219
|
* @param {string} format - The format to format the date to.
|
231
220
|
* @param {string} timezone - The timezone to format the date to.
|
232
221
|
* @returns {string} - The formatted date.
|
233
222
|
*/
|
234
|
-
export function formatOffset(
|
223
|
+
export function formatOffset(formatFn: Function, date: Date | string, format: string, timezone: string): string;
|
235
224
|
/**
|
236
225
|
* Returns the local date format information.
|
237
226
|
* @param {Intl.LocalesArgument} locale - The locale to get the date format for.
|
@@ -249,7 +238,7 @@ export function convertFormatToFlatpickr(format: string): string;
|
|
249
238
|
* @param {string} format - The format to convert.
|
250
239
|
* @returns {string} - The converted format.
|
251
240
|
*/
|
252
|
-
export function
|
241
|
+
export function convertFormatToDayjs(format: string): string;
|
253
242
|
/**
|
254
243
|
* Convert the format from the angular-datepicker module to mask format.
|
255
244
|
* @param {string} format - The format to convert.
|
@@ -499,7 +488,6 @@ export function getComponentSavedTypes(fullSchema: import('@formio/core').Compon
|
|
499
488
|
* @returns {boolean} if value has encoded timezone
|
500
489
|
*/
|
501
490
|
export function hasEncodedTimezone(value: string): boolean;
|
502
|
-
export * from "./formUtils";
|
503
491
|
/**
|
504
492
|
* Map values through unfold and return first non-nil value.
|
505
493
|
* @param {Array<T>} collection - The collection to map through unfold.;
|
@@ -516,7 +504,4 @@ export namespace componentValueTypes {
|
|
516
504
|
let any: string;
|
517
505
|
}
|
518
506
|
export function interpolateErrors(component: Component, errors: FieldError[], interpolateFn: Function): [];
|
519
|
-
import
|
520
|
-
import { Evaluator } from './Evaluator';
|
521
|
-
export const interpolate: typeof Evaluator.interpolate;
|
522
|
-
export { jsonLogic, ConditionOperators, moment, Evaluator, _ };
|
507
|
+
import dayjs from "dayjs";
|