@iapps/ng-dhis2-ui 1.1.43 → 1.1.44

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.
@@ -3888,6 +3888,8 @@ class FormField {
3888
3888
  options.max || (this.controlType === 'date' ? new Date() : undefined);
3889
3889
  this.maxLength = options.maxLength;
3890
3890
  this.hidden = options.hidden || false;
3891
+ this.unique = options.unique || false;
3892
+ this.generated = options.generated || false;
3891
3893
  this.isDataElement = options.isDataElement;
3892
3894
  this.isAttribute = options.isAttribute;
3893
3895
  this.isOrgUnit = options.isOrgUnit;
@@ -4926,7 +4928,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
4926
4928
  }, [hasError]);
4927
4929
  switch (this.field().controlType) {
4928
4930
  case 'textarea':
4929
- return (React__default.createElement(TextAreaField, { error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, label: this.label(), min: this.field().min?.toString(), max: this.field().max?.toString(), placeholder: this.placeholder(), value: value, onChange: (event) => {
4931
+ return (React__default.createElement(TextAreaField, { error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, label: this.label(), min: this.field().min?.toString(), max: this.field().max?.toString(), disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, placeholder: this.placeholder(), value: value, onChange: (event) => {
4930
4932
  this.ngZone.run(() => {
4931
4933
  (this.form().get(this.field().id) ||
4932
4934
  this.form().get(this.field().key))?.setValue(event.value);
@@ -4944,7 +4946,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
4944
4946
  } }));
4945
4947
  case 'org-unit':
4946
4948
  return (React__default.createElement(React__default.Fragment, null,
4947
- React__default.createElement(InputField$1, { error: hasError, validationText: validationError, type: this.field().type, prefixIcon: React__default.createElement(IconDimensionOrgUnit16, null), required: this.field().required, name: this.field().id, label: this.label(), placeholder: this.placeholder(), value: displayValue, readOnly: false, onFocus: () => {
4949
+ React__default.createElement(InputField$1, { error: hasError, validationText: validationError, type: this.field().type, prefixIcon: React__default.createElement(IconDimensionOrgUnit16, null), required: this.field().required, name: this.field().id, label: this.label(), placeholder: this.placeholder(), value: displayValue, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, onFocus: () => {
4948
4950
  setShowOrgUnit(true);
4949
4951
  }, onBlur: () => {
4950
4952
  this.ngZone.run(() => {
@@ -4970,7 +4972,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
4970
4972
  }
4971
4973
  } }))));
4972
4974
  case 'transfer':
4973
- return (React__default.createElement(Transfer, { filterable: true, filterPlaceholder: "Search", selected: selected, error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, label: this.label(), placeholder: this.placeholder(), value: selected, leftHeader: React__default.createElement("div", { style: {
4975
+ return (React__default.createElement(Transfer, { filterable: true, filterPlaceholder: "Search", selected: selected, error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, required: this.field().required, name: this.field().id, label: this.label(), placeholder: this.placeholder(), value: selected, leftHeader: React__default.createElement("div", { style: {
4974
4976
  fontSize: 14,
4975
4977
  padding: '8px 4px',
4976
4978
  } }, this.field().availableOptionsLabel), rightHeader: React__default.createElement("div", { style: {
@@ -4987,7 +4989,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
4987
4989
  this.update.emit({ form: this.form(), value });
4988
4990
  } }));
4989
4991
  case 'checkbox':
4990
- return (React__default.createElement(Checkbox, { checked: Boolean(value), error: hasError, label: this.label(), name: this.field().id, onChange: (event) => {
4992
+ return (React__default.createElement(Checkbox, { checked: Boolean(value), error: hasError, label: this.label(), name: this.field().id, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, onChange: (event) => {
4991
4993
  this.ngZone.run(() => {
4992
4994
  (this.form().get(this.field().id) ||
4993
4995
  this.form().get(this.field().key))?.setValue(event.checked);
@@ -5000,7 +5002,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
5000
5002
  });
5001
5003
  } }));
5002
5004
  case 'dropdown':
5003
- return (React__default.createElement(SingleSelectField, { filterable: (this.field().options || []).length > 5, clearable: true, error: hasError, validationText: validationError, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, className: "select", label: this.label(), selected: value, onChange: (event) => {
5005
+ return (React__default.createElement(SingleSelectField, { filterable: (this.field().options || []).length > 5, clearable: true, error: hasError, validationText: validationError, inputWidth: this.fieldConfig()?.inputWidth, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, required: this.field().required, name: this.field().id, className: "select", label: this.label(), selected: value, onChange: (event) => {
5004
5006
  this.ngZone.run(() => {
5005
5007
  (this.form().get(this.field().id) ||
5006
5008
  this.form().get(this.field().key))?.setValue(event.selected);
@@ -5013,7 +5015,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
5013
5015
  setTouched(true);
5014
5016
  } }, (this.field().options || []).map((option) => (React__default.createElement(SingleSelectOption, { key: crypto.randomUUID() || option.key, label: option.label, value: option.value })))));
5015
5017
  case 'multi-dropdown':
5016
- return (React__default.createElement(MultiSelectField, { clearText: "Clear", clearable: true, empty: "No data found", filterable: (this.field().options || []).length > 5, filterPlaceholder: "Type to filter options", error: hasError, validationText: validationError, inputWidth: this.fieldConfig()?.inputWidth, label: this.label(), name: this.field().id, required: this.field().required, loadingText: "Loading options", noMatchText: "No options found", onChange: (event) => {
5018
+ return (React__default.createElement(MultiSelectField, { clearText: "Clear", clearable: true, empty: "No data found", filterable: (this.field().options || []).length > 5, filterPlaceholder: "Type to filter options", error: hasError, validationText: validationError, inputWidth: this.fieldConfig()?.inputWidth, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, label: this.label(), name: this.field().id, required: this.field().required, loadingText: "Loading options", noMatchText: "No options found", onChange: (event) => {
5017
5019
  const selectedValue = (event.selected || []).join(',');
5018
5020
  this.ngZone.run(() => {
5019
5021
  (this.form().get(this.field().id) ||
@@ -5027,7 +5029,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
5027
5029
  setTouched(true);
5028
5030
  }, selected: arrayValue }, (this.field().options || []).map((option) => (React__default.createElement(MultiSelectOption, { key: option.key, label: option.label, value: option.value })))));
5029
5031
  case 'file':
5030
- return (React__default.createElement(FileInputField, { accept: "*", buttonLabel: "Upload a file", label: this.label(), name: this.field().id, files: this.uploadedFiles, onChange: (event) => {
5032
+ return (React__default.createElement(FileInputField, { accept: "*", buttonLabel: "Upload a file", label: this.label(), name: this.field().id, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, files: this.uploadedFiles, onChange: (event) => {
5031
5033
  this.uploadedFiles.push((event?.files || [])[0]);
5032
5034
  this.ngZone.run(() => {
5033
5035
  this.form().get(this.field().id) ||
@@ -5049,7 +5051,7 @@ class BaseFormFieldComponent extends ReactWrapperModule {
5049
5051
  });
5050
5052
  }, removeText: "Remove" })))));
5051
5053
  default:
5052
- return (React__default.createElement(InputField$1, { error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, label: this.label(), min: this.field().min?.toString(), max: this.field().max?.toString(), placeholder: this.placeholder(), value: value, readOnly: this.field().disabled, onChange: (event) => {
5054
+ return (React__default.createElement(InputField$1, { error: hasError, validationText: validationError, type: this.field().type, inputWidth: this.fieldConfig()?.inputWidth, required: this.field().required, name: this.field().id, label: this.label(), min: this.field().min?.toString(), max: this.field().max?.toString(), placeholder: this.placeholder(), value: value, disabled: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, readOnly: this.field()?.disabled || this.field()?.generated || this.field()?.unique || false, onChange: (event) => {
5053
5055
  this.ngZone.run(() => {
5054
5056
  (this.form().get(this.field().id) ||
5055
5057
  this.form().get(this.field().key))?.setValue(event.value);