@formio/js 5.0.0-dev.5908.0f1a78f → 5.0.0-dev.5911.81fbc1f
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.form.js +1 -1
- package/dist/formio.form.min.js +1 -1
- package/dist/formio.full.js +2 -2
- package/dist/formio.full.min.js +1 -1
- package/lib/cjs/WebformBuilder.js +4 -17
- package/lib/cjs/utils/i18n.js +0 -5
- package/lib/mjs/WebformBuilder.js +4 -17
- package/lib/mjs/utils/i18n.js +0 -4
- package/package.json +1 -1
|
@@ -808,31 +808,18 @@ class WebformBuilder extends Component_1.default {
|
|
|
808
808
|
// Show an error if siblings are disabled for a component and such a component already exists.
|
|
809
809
|
const compKey = (group === 'resource') ? `component-${key}` : key;
|
|
810
810
|
const draggableComponent = ((_a = this.groups[group]) === null || _a === void 0 ? void 0 : _a.components[compKey]) || {};
|
|
811
|
-
if (draggableComponent.disableSiblings) {
|
|
811
|
+
if (draggableComponent.disableSiblings || draggableComponent.uniqueComponent) {
|
|
812
812
|
let isCompAlreadyExists = false;
|
|
813
813
|
(0, formUtils_1.eachComponent)(this.webform.components, (component) => {
|
|
814
|
-
if (component.type === draggableComponent.schema.type)
|
|
814
|
+
if ((draggableComponent.disableSiblings && component.type === draggableComponent.schema.type) ||
|
|
815
|
+
(draggableComponent.uniqueComponent && component.component.key === draggableComponent.schema.key)) {
|
|
815
816
|
isCompAlreadyExists = true;
|
|
816
817
|
return;
|
|
817
818
|
}
|
|
818
819
|
}, true);
|
|
819
820
|
if (isCompAlreadyExists) {
|
|
820
821
|
this.webform.redraw();
|
|
821
|
-
this.webform.setAlert('danger', `You cannot add more than one ${draggableComponent.key} component to one page.`);
|
|
822
|
-
return;
|
|
823
|
-
}
|
|
824
|
-
}
|
|
825
|
-
if (draggableComponent.uniqueComponent) {
|
|
826
|
-
let isCompAlreadyExists = false;
|
|
827
|
-
(0, formUtils_1.eachComponent)(this.webform.components, (component) => {
|
|
828
|
-
if (component.key === draggableComponent.schema.key) {
|
|
829
|
-
isCompAlreadyExists = true;
|
|
830
|
-
return;
|
|
831
|
-
}
|
|
832
|
-
}, true);
|
|
833
|
-
if (isCompAlreadyExists) {
|
|
834
|
-
this.webform.redraw();
|
|
835
|
-
this.webform.setAlert('danger', `You cannot add more than one ${draggableComponent.title} component to one page.`);
|
|
822
|
+
this.webform.setAlert('danger', `You cannot add more than one ${lodash_1.default.get(draggableComponent, draggableComponent.uniqueComponent ? 'title' : 'key')} component to one page.`);
|
|
836
823
|
return;
|
|
837
824
|
}
|
|
838
825
|
}
|
package/lib/cjs/utils/i18n.js
CHANGED
|
@@ -79,12 +79,7 @@ class I18n {
|
|
|
79
79
|
this.languages[language] = strings;
|
|
80
80
|
}
|
|
81
81
|
t(text, ...args) {
|
|
82
|
-
var _a;
|
|
83
82
|
if (this.currentLanguage[text]) {
|
|
84
|
-
const customTranslationFieldName = (_a = args[0]) === null || _a === void 0 ? void 0 : _a.field;
|
|
85
|
-
if (customTranslationFieldName && this.currentLanguage[customTranslationFieldName]) {
|
|
86
|
-
args[0].field = this.currentLanguage[customTranslationFieldName];
|
|
87
|
-
}
|
|
88
83
|
return utils_1.Evaluator.interpolateString(this.currentLanguage[text], ...args);
|
|
89
84
|
}
|
|
90
85
|
return utils_1.Evaluator.interpolateString(text, ...args);
|
|
@@ -793,31 +793,18 @@ export default class WebformBuilder extends Component {
|
|
|
793
793
|
// Show an error if siblings are disabled for a component and such a component already exists.
|
|
794
794
|
const compKey = (group === 'resource') ? `component-${key}` : key;
|
|
795
795
|
const draggableComponent = this.groups[group]?.components[compKey] || {};
|
|
796
|
-
if (draggableComponent.disableSiblings) {
|
|
796
|
+
if (draggableComponent.disableSiblings || draggableComponent.uniqueComponent) {
|
|
797
797
|
let isCompAlreadyExists = false;
|
|
798
798
|
eachComponent(this.webform.components, (component) => {
|
|
799
|
-
if (component.type === draggableComponent.schema.type)
|
|
799
|
+
if ((draggableComponent.disableSiblings && component.type === draggableComponent.schema.type) ||
|
|
800
|
+
(draggableComponent.uniqueComponent && component.component.key === draggableComponent.schema.key)) {
|
|
800
801
|
isCompAlreadyExists = true;
|
|
801
802
|
return;
|
|
802
803
|
}
|
|
803
804
|
}, true);
|
|
804
805
|
if (isCompAlreadyExists) {
|
|
805
806
|
this.webform.redraw();
|
|
806
|
-
this.webform.setAlert('danger', `You cannot add more than one ${draggableComponent.key} component to one page.`);
|
|
807
|
-
return;
|
|
808
|
-
}
|
|
809
|
-
}
|
|
810
|
-
if (draggableComponent.uniqueComponent) {
|
|
811
|
-
let isCompAlreadyExists = false;
|
|
812
|
-
eachComponent(this.webform.components, (component) => {
|
|
813
|
-
if (component.key === draggableComponent.schema.key) {
|
|
814
|
-
isCompAlreadyExists = true;
|
|
815
|
-
return;
|
|
816
|
-
}
|
|
817
|
-
}, true);
|
|
818
|
-
if (isCompAlreadyExists) {
|
|
819
|
-
this.webform.redraw();
|
|
820
|
-
this.webform.setAlert('danger', `You cannot add more than one ${draggableComponent.title} component to one page.`);
|
|
807
|
+
this.webform.setAlert('danger', `You cannot add more than one ${_.get(draggableComponent, draggableComponent.uniqueComponent ? 'title' : 'key')} component to one page.`);
|
|
821
808
|
return;
|
|
822
809
|
}
|
|
823
810
|
}
|
package/lib/mjs/utils/i18n.js
CHANGED
|
@@ -74,10 +74,6 @@ export class I18n {
|
|
|
74
74
|
}
|
|
75
75
|
t(text, ...args) {
|
|
76
76
|
if (this.currentLanguage[text]) {
|
|
77
|
-
const customTranslationFieldName = args[0]?.field;
|
|
78
|
-
if (customTranslationFieldName && this.currentLanguage[customTranslationFieldName]) {
|
|
79
|
-
args[0].field = this.currentLanguage[customTranslationFieldName];
|
|
80
|
-
}
|
|
81
77
|
return Evaluator.interpolateString(this.currentLanguage[text], ...args);
|
|
82
78
|
}
|
|
83
79
|
return Evaluator.interpolateString(text, ...args);
|