@formio/js 5.0.0-dev.5913.cf6760f → 5.0.0-dev.5913.d415fcc

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.
@@ -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
  }
@@ -1188,6 +1175,7 @@ class WebformBuilder extends Component_1.default {
1188
1175
  }
1189
1176
  const rebuild = parentComponent.rebuild() || Promise.resolve();
1190
1177
  return rebuild.then(() => {
1178
+ parentComponent.resetValue();
1191
1179
  const schema = parentContainer ? parentContainer[index] : (comp ? comp.schema : []);
1192
1180
  this.emitSaveComponentEvent(schema, originalComp, parentComponent.schema, path, index, isNew, originalComponentSchema);
1193
1181
  this.emit('change', this.form);
package/lib/cjs/Wizard.js CHANGED
@@ -187,7 +187,7 @@ class Wizard extends Webform_1.default {
187
187
  render() {
188
188
  const ctx = this.renderContext;
189
189
  if (this.component.id) {
190
- ctx.panels.map(panel => {
190
+ ctx.panels.forEach(panel => {
191
191
  if (panel.id === this.component.id) {
192
192
  this.currentPanel = panel;
193
193
  ctx.wizardPageTooltip = this.getFormattedTooltip(panel.tooltip);
@@ -926,6 +926,7 @@ class Wizard extends Webform_1.default {
926
926
  }
927
927
  });
928
928
  }
929
+ ;
929
930
  return super.showErrors(errors, triggerEvent);
930
931
  }
931
932
  focusOnComponent(key) {
@@ -10,7 +10,6 @@ export default class HiddenComponent extends Input {
10
10
  };
11
11
  get inputInfo(): any;
12
12
  labelIsHidden(): boolean;
13
- get emptyValue(): string;
14
13
  setValue(value: any, flags?: {}): boolean;
15
14
  }
16
15
  import Input from '../_classes/input/Input';
@@ -48,7 +48,7 @@ class HiddenComponent extends Input_1.default {
48
48
  return true;
49
49
  }
50
50
  get emptyValue() {
51
- return '';
51
+ return null;
52
52
  }
53
53
  setValue(value, flags = {}) {
54
54
  return this.updateValue(value, flags);
@@ -1099,6 +1099,7 @@ declare const _default: ({
1099
1099
  alwaysEnabled?: undefined;
1100
1100
  } | {
1101
1101
  key: string;
1102
+ type: string;
1102
1103
  conditional: {
1103
1104
  json: {
1104
1105
  and: ({
@@ -1149,7 +1150,6 @@ declare const _default: ({
1149
1150
  };
1150
1151
  };
1151
1152
  data?: undefined;
1152
- type?: undefined;
1153
1153
  weight?: undefined;
1154
1154
  input?: undefined;
1155
1155
  label?: undefined;
@@ -687,6 +687,7 @@ exports.default = [
687
687
  },
688
688
  {
689
689
  key: 'selectData',
690
+ type: 'hidden',
690
691
  conditional: {
691
692
  json: {
692
693
  and: [
@@ -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
  }
@@ -1172,6 +1159,7 @@ export default class WebformBuilder extends Component {
1172
1159
  }
1173
1160
  const rebuild = parentComponent.rebuild() || Promise.resolve();
1174
1161
  return rebuild.then(() => {
1162
+ parentComponent.resetValue();
1175
1163
  const schema = parentContainer ? parentContainer[index] : (comp ? comp.schema : []);
1176
1164
  this.emitSaveComponentEvent(schema, originalComp, parentComponent.schema, path, index, isNew, originalComponentSchema);
1177
1165
  this.emit('change', this.form);
package/lib/mjs/Wizard.js CHANGED
@@ -177,7 +177,7 @@ export default class Wizard extends Webform {
177
177
  render() {
178
178
  const ctx = this.renderContext;
179
179
  if (this.component.id) {
180
- ctx.panels.map(panel => {
180
+ ctx.panels.forEach(panel => {
181
181
  if (panel.id === this.component.id) {
182
182
  this.currentPanel = panel;
183
183
  ctx.wizardPageTooltip = this.getFormattedTooltip(panel.tooltip);
@@ -913,6 +913,7 @@ export default class Wizard extends Webform {
913
913
  }
914
914
  });
915
915
  }
916
+ ;
916
917
  return super.showErrors(errors, triggerEvent);
917
918
  }
918
919
  focusOnComponent(key) {
@@ -10,7 +10,6 @@ export default class HiddenComponent extends Input {
10
10
  };
11
11
  get inputInfo(): any;
12
12
  labelIsHidden(): boolean;
13
- get emptyValue(): string;
14
13
  setValue(value: any, flags?: {}): boolean;
15
14
  }
16
15
  import Input from '../_classes/input/Input';
@@ -43,7 +43,7 @@ export default class HiddenComponent extends Input {
43
43
  return true;
44
44
  }
45
45
  get emptyValue() {
46
- return '';
46
+ return null;
47
47
  }
48
48
  setValue(value, flags = {}) {
49
49
  return this.updateValue(value, flags);
@@ -1099,6 +1099,7 @@ declare const _default: ({
1099
1099
  alwaysEnabled?: undefined;
1100
1100
  } | {
1101
1101
  key: string;
1102
+ type: string;
1102
1103
  conditional: {
1103
1104
  json: {
1104
1105
  and: ({
@@ -1149,7 +1150,6 @@ declare const _default: ({
1149
1150
  };
1150
1151
  };
1151
1152
  data?: undefined;
1152
- type?: undefined;
1153
1153
  weight?: undefined;
1154
1154
  input?: undefined;
1155
1155
  label?: undefined;
@@ -681,6 +681,7 @@ export default [
681
681
  },
682
682
  {
683
683
  key: 'selectData',
684
+ type: 'hidden',
684
685
  conditional: {
685
686
  json: {
686
687
  and: [
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@formio/js",
3
- "version": "5.0.0-dev.5913.cf6760f",
3
+ "version": "5.0.0-dev.5913.d415fcc",
4
4
  "description": "JavaScript powered Forms with JSON Form Builder",
5
5
  "main": "lib/cjs/index.js",
6
6
  "exports": {