@netgrif/components-core 6.0.2-rc.3 → 6.0.2

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 (31) hide show
  1. package/bundles/netgrif-components-core.umd.js +68 -11
  2. package/bundles/netgrif-components-core.umd.js.map +1 -1
  3. package/bundles/netgrif-components-core.umd.min.js +1 -1
  4. package/bundles/netgrif-components-core.umd.min.js.map +1 -1
  5. package/esm2015/lib/panel/abstract/panel-with-immediate-data.js +5 -1
  6. package/esm2015/lib/resources/engine-endpoint/task-resource.service.js +2 -1
  7. package/esm2015/lib/resources/interface/data-groups.js +1 -1
  8. package/esm2015/lib/resources/interface/immediate-data.js +1 -1
  9. package/esm2015/lib/task/services/task-data.service.js +10 -4
  10. package/esm2015/lib/task-content/model/task-fields.js +2 -0
  11. package/esm2015/lib/task-content/public-api.js +2 -1
  12. package/esm2015/lib/task-content/services/task-content.service.js +46 -9
  13. package/esm5/lib/panel/abstract/panel-with-immediate-data.js +7 -1
  14. package/esm5/lib/resources/engine-endpoint/task-resource.service.js +2 -1
  15. package/esm5/lib/resources/interface/data-groups.js +1 -1
  16. package/esm5/lib/resources/interface/immediate-data.js +1 -1
  17. package/esm5/lib/task/services/task-data.service.js +10 -4
  18. package/esm5/lib/task-content/model/task-fields.js +2 -0
  19. package/esm5/lib/task-content/public-api.js +2 -1
  20. package/esm5/lib/task-content/services/task-content.service.js +53 -9
  21. package/fesm2015/netgrif-components-core.js +59 -11
  22. package/fesm2015/netgrif-components-core.js.map +1 -1
  23. package/fesm5/netgrif-components-core.js +68 -11
  24. package/fesm5/netgrif-components-core.js.map +1 -1
  25. package/lib/resources/interface/data-groups.d.ts +4 -0
  26. package/lib/resources/interface/immediate-data.d.ts +6 -0
  27. package/lib/task-content/model/task-fields.d.ts +7 -0
  28. package/lib/task-content/public-api.d.ts +1 -0
  29. package/lib/task-content/services/task-content.service.d.ts +6 -6
  30. package/netgrif-components-core.metadata.json +1 -1
  31. package/package.json +1 -1
@@ -6567,6 +6567,7 @@
6567
6567
  };
6568
6568
  if (dataGroupResource.parentTaskId !== undefined) {
6569
6569
  dataGroupObject.parentTaskId = dataGroupResource.parentTaskId;
6570
+ dataGroupObject.parentTransitionId = dataGroupResource.parentTransitionId;
6570
6571
  dataGroupObject.parentTaskRefId = dataGroupResource.parentTaskRefId;
6571
6572
  dataGroupObject.nestingLevel = dataGroupResource.nestingLevel;
6572
6573
  }
@@ -14938,6 +14939,12 @@
14938
14939
  return { value: immediate.value.defaultValue, icon: undefined, type: immediate.type };
14939
14940
  case 'multichoice':
14940
14941
  return { value: immediate.value.map(function (it) { return it.defaultValue; }).join(', '), icon: undefined, type: immediate.type };
14942
+ case 'enumeration_map':
14943
+ return { value: immediate.options[immediate.value].defaultValue, icon: undefined, type: immediate.type };
14944
+ case 'multichoice_map':
14945
+ return { value: immediate.value.map(function (it) {
14946
+ return immediate.options[it].defaultValue;
14947
+ }).join(', '), icon: undefined, type: immediate.type };
14941
14948
  case 'file':
14942
14949
  return { value: (_a = immediate.value) === null || _a === void 0 ? void 0 : _a.name, icon: 'insert_drive_file', type: immediate.type };
14943
14950
  case 'fileList':
@@ -23685,11 +23692,15 @@
23685
23692
  // todo actions owner zbytočný?
23686
23693
  var frontendActions = chFields.taskId === this.task.stringId && chFields[TaskContentService.FRONTEND_ACTIONS_KEY];
23687
23694
  Object.keys(chFields).forEach(function (changedField) {
23688
- if (!!_this.taskFieldsIndex[chFields.taskId] && !!_this.taskFieldsIndex[chFields.taskId][changedField]) {
23689
- _this.updateField(chFields, _this.taskFieldsIndex[chFields.taskId][changedField], frontendActions);
23695
+ if (!!_this.taskFieldsIndex[chFields.taskId] && !!_this.taskFieldsIndex[chFields.taskId].fields
23696
+ && !!_this.taskFieldsIndex[chFields.taskId].fields[changedField]) {
23697
+ _this.updateField(chFields, _this.taskFieldsIndex[chFields.taskId].fields[changedField], frontendActions);
23690
23698
  }
23691
23699
  else if (_this.isFieldInTaskRef(changedField)) {
23692
- _this._taskDataReloadRequest$.next(frontendActions ? frontendActions : undefined);
23700
+ var taskId = _this.getReferencedTaskId(changedField);
23701
+ if (!!taskId && !!_this.taskFieldsIndex[taskId] && !!_this.taskFieldsIndex[taskId].fields
23702
+ && !!_this.taskFieldsIndex[taskId].fields[changedField])
23703
+ _this.updateReferencedField(chFields, _this.taskFieldsIndex[taskId].fields[changedField], frontendActions);
23693
23704
  }
23694
23705
  });
23695
23706
  this.$shouldCreate.next(this._task.dataGroups);
@@ -23697,8 +23708,7 @@
23697
23708
  };
23698
23709
  TaskContentService.prototype.updateField = function (chFields, field, frontendActions) {
23699
23710
  var _this = this;
23700
- if (this._fieldConverterService.resolveType(field) === exports.FieldTypeResource.TASK_REF
23701
- || this.isFieldInTaskRef(field.stringId)) {
23711
+ if (this._fieldConverterService.resolveType(field) === exports.FieldTypeResource.TASK_REF) {
23702
23712
  this._taskDataReloadRequest$.next(frontendActions ? frontendActions : undefined);
23703
23713
  return;
23704
23714
  }
@@ -23717,8 +23727,10 @@
23717
23727
  field.behavior = updatedField.behavior[_this._task.transitionId];
23718
23728
  }
23719
23729
  else {
23720
- // ignore the behavior update, since it does not affect this task
23721
- return; // continue - the field does not need updating, since nothing changed
23730
+ var transitionId = _this.getReferencedTransitionId(field.stringId);
23731
+ if (!!transitionId && transitionId !== '' && updatedField.behavior[transitionId])
23732
+ field.behavior = updatedField.behavior[transitionId];
23733
+ break;
23722
23734
  }
23723
23735
  break;
23724
23736
  case 'choices':
@@ -23754,6 +23766,26 @@
23754
23766
  field.update();
23755
23767
  });
23756
23768
  };
23769
+ TaskContentService.prototype.updateReferencedField = function (chFields, field, frontendActions) {
23770
+ var _this = this;
23771
+ if (this._fieldConverterService.resolveType(field) === exports.FieldTypeResource.TASK_REF) {
23772
+ this._taskDataReloadRequest$.next(frontendActions ? frontendActions : undefined);
23773
+ return;
23774
+ }
23775
+ var updatedField = chFields[field.stringId];
23776
+ Object.keys(updatedField).forEach(function (key) {
23777
+ switch (key) {
23778
+ case 'behavior':
23779
+ var transitionId = _this.getReferencedTransitionId(field.stringId);
23780
+ if (!!transitionId && transitionId !== '' && updatedField.behavior[transitionId])
23781
+ field.behavior = updatedField.behavior[transitionId];
23782
+ break;
23783
+ default:
23784
+ field[key] = updatedField[key];
23785
+ }
23786
+ field.update();
23787
+ });
23788
+ };
23757
23789
  /**
23758
23790
  * Performs the specific frontend action.
23759
23791
  *
@@ -23773,7 +23805,26 @@
23773
23805
  var _this = this;
23774
23806
  return !!this.taskFieldsIndex &&
23775
23807
  Object.keys(this.taskFieldsIndex)
23776
- .some(function (taskId) { return taskId !== _this.task.stringId && _this.taskFieldsIndex[taskId][changedField]; });
23808
+ .some(function (taskId) { return taskId !== _this.task.stringId && _this.taskFieldsIndex[taskId].fields[changedField]; });
23809
+ };
23810
+ TaskContentService.prototype.getReferencedTransitionId = function (changedField) {
23811
+ var _this = this;
23812
+ if (!!this.taskFieldsIndex) {
23813
+ var taskFieldsIndexId = Object.keys(this.taskFieldsIndex).find(function (taskId) {
23814
+ return Object.keys(_this.taskFieldsIndex[taskId].fields).includes(changedField);
23815
+ });
23816
+ return this.taskFieldsIndex[taskFieldsIndexId].transitionId;
23817
+ }
23818
+ return undefined;
23819
+ };
23820
+ TaskContentService.prototype.getReferencedTaskId = function (changedField) {
23821
+ var _this = this;
23822
+ if (!!this.taskFieldsIndex) {
23823
+ return Object.keys(this.taskFieldsIndex).find(function (taskId) {
23824
+ return Object.keys(_this.taskFieldsIndex[taskId].fields).includes(changedField);
23825
+ });
23826
+ }
23827
+ return undefined;
23777
23828
  };
23778
23829
  TaskContentService.FRONTEND_ACTIONS_KEY = '_frontend_actions';
23779
23830
  TaskContentService.VALIDATE_FRONTEND_ACTION = 'validate';
@@ -24343,6 +24394,8 @@
24343
24394
  dataGroups.forEach(function (group) {
24344
24395
  var dataGroupParentCaseId = group.parentCaseId === undefined ? _this._safeTask.caseId : group.parentCaseId;
24345
24396
  var parentTaskId = group.parentTaskId === undefined ? _this._safeTask.stringId : group.parentTaskId;
24397
+ var parentTransitionId = group.parentTransitionId === undefined ?
24398
+ _this._safeTask.transitionId : group.parentTransitionId;
24346
24399
  if (dataGroupParentCaseId !== _this._safeTask.caseId) {
24347
24400
  if (!_this._taskContentService.referencedTaskAndCaseIds[dataGroupParentCaseId]) {
24348
24401
  _this._taskContentService.referencedTaskAndCaseIds[dataGroupParentCaseId] = [group.parentTaskId];
@@ -24359,8 +24412,12 @@
24359
24412
  if (group.fields.length > 0 && !_this._taskContentService.taskFieldsIndex[parentTaskId]) {
24360
24413
  _this._taskContentService.taskFieldsIndex[parentTaskId] = {};
24361
24414
  }
24415
+ if (group.fields.length > 0 && !_this._taskContentService.taskFieldsIndex[parentTaskId].fields) {
24416
+ _this._taskContentService.taskFieldsIndex[parentTaskId].fields = {};
24417
+ }
24362
24418
  group.fields.forEach(function (field) {
24363
- _this._taskContentService.taskFieldsIndex[parentTaskId][field.stringId] = field;
24419
+ _this._taskContentService.taskFieldsIndex[parentTaskId].transitionId = parentTransitionId;
24420
+ _this._taskContentService.taskFieldsIndex[parentTaskId].fields[field.stringId] = field;
24364
24421
  field.valueChanges().subscribe(function () {
24365
24422
  if (_this.wasFieldUpdated(field)) {
24366
24423
  if (field instanceof DynamicEnumerationField) {
@@ -24527,7 +24584,7 @@
24527
24584
  try {
24528
24585
  for (var fieldIdsOfRequest_1 = (e_2 = void 0, __values(fieldIdsOfRequest)), fieldIdsOfRequest_1_1 = fieldIdsOfRequest_1.next(); !fieldIdsOfRequest_1_1.done; fieldIdsOfRequest_1_1 = fieldIdsOfRequest_1.next()) {
24529
24586
  var fieldId = fieldIdsOfRequest_1_1.value;
24530
- var field = this._taskContentService.taskFieldsIndex[taskId][fieldId];
24587
+ var field = this._taskContentService.taskFieldsIndex[taskId].fields[fieldId];
24531
24588
  if (field === undefined) {
24532
24589
  this._log.error("Unexpected state. Datafield " + fieldId + " of task " + taskId + " in setData request is not present in the task.");
24533
24590
  return false;
@@ -24735,7 +24792,7 @@
24735
24792
  var _this = this;
24736
24793
  Object.keys(body).forEach(function (taskId) {
24737
24794
  Object.keys(body[taskId]).forEach(function (fieldId) {
24738
- _this._taskContentService.taskFieldsIndex[taskId][fieldId].waitingForResponse = false;
24795
+ _this._taskContentService.taskFieldsIndex[taskId].fields[fieldId].waitingForResponse = false;
24739
24796
  });
24740
24797
  });
24741
24798
  };