oro-sdk 6.3.0 → 7.0.0

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.
@@ -66,7 +66,7 @@ export declare function flattenSelectedAnswers(answers: SelectedAnswersData): st
66
66
  * @returns a valid selectedAnswers structure
67
67
  */
68
68
  export declare function getInitialisedSelectedAnswers(workflow: WorkflowData, useDefault?: boolean): any[];
69
- export declare function fillWorkflowFromPopulatedWorkflow(workflow: WorkflowData, populatedWorkflow: PopulatedWorkflowData): any;
69
+ export declare function fillWorkflowFromPopulatedWorkflow(workflow: WorkflowData, populatedWorkflow: PopulatedWorkflowData): WorkflowData;
70
70
  /**
71
71
  * Checks and toggles the changed status for every answer in the workflow
72
72
  * by comparing the previous answer with the selected answer of the same question
@@ -744,8 +744,8 @@ function _filterTriggeredAnsweredWithKind() {
744
744
  // Flattens the list of answered questions
745
745
  flattenedAnswers = flattenSelectedAnswers(workflowData.selectedAnswers); // Generates a list of applicable questions
746
746
  triggeredQuestionsWithKind = Object.fromEntries(workflowData.pages.map(function (a) {
747
- return Object.entries(a.questions).filter(function (_ref2) {
748
- var question = _ref2[1];
747
+ return Object.entries(a.questions).filter(function (_ref3) {
748
+ var question = _ref3[1];
749
749
  return isTriggered(question.triggers || [], flattenedAnswers) && question.kind === kind;
750
750
  });
751
751
  }).flat());
@@ -783,25 +783,25 @@ function _getWorkflowDataByCategory() {
783
783
  // Flattens the list of answered questions
784
784
  flattenedAnswers = flattenSelectedAnswers(workflowData.selectedAnswers); // Generates a list of applicable questions
785
785
  triggeredQuestions = Object.fromEntries(workflowData.pages.map(function (a) {
786
- return Object.entries(a.questions).filter(function (_ref3) {
787
- var question = _ref3[1];
786
+ return Object.entries(a.questions).filter(function (_ref4) {
787
+ var question = _ref4[1];
788
788
  return isTriggered(question.triggers || [], flattenedAnswers);
789
789
  });
790
790
  }).flat());
791
791
  fields = {};
792
792
  answersPerPage = ((_workflowData$selecte = workflowData.selectedAnswers) != null ? _workflowData$selecte : []).map(function (pageAnswers, _) {
793
- return Object.entries(pageAnswers).map(function (_ref4) {
794
- var k = _ref4[0],
795
- v = _ref4[1];
793
+ return Object.entries(pageAnswers).map(function (_ref5) {
794
+ var k = _ref5[0],
795
+ v = _ref5[1];
796
796
  return [k, v, undefined];
797
797
  });
798
798
  });
799
799
  if (workflowData.previousAnswers) {
800
800
  // Since the selectedAnswers and previousAnswers should be a 1-1, we can map them together
801
801
  answersPerPage = answersPerPage.map(function (pageAnswers, pageIndex) {
802
- return pageAnswers.map(function (_ref5) {
803
- var questionId = _ref5[0],
804
- v = _ref5[1];
802
+ return pageAnswers.map(function (_ref6) {
803
+ var questionId = _ref6[0],
804
+ v = _ref6[1];
805
805
  if (workflowData.previousAnswers && workflowData.previousAnswers[pageIndex][questionId]) return [questionId, v, workflowData.previousAnswers[pageIndex][questionId]];
806
806
  return [questionId, v, undefined];
807
807
  });
@@ -809,13 +809,13 @@ function _getWorkflowDataByCategory() {
809
809
  }
810
810
  // Generates the answers of the specified category and adds the appropriate values if any are missing
811
811
  return _context2.abrupt("return", Promise.all(answersPerPage.flat(1) // remove the pages, we want the answers all together
812
- .filter(function (_ref6) {
813
- var k = _ref6[0];
812
+ .filter(function (_ref7) {
813
+ var k = _ref7[0];
814
814
  return triggeredQuestions[k] && triggeredQuestions[k]['metaCategory'] === category;
815
- }).map(function (_ref7) {
816
- var k = _ref7[0],
817
- v = _ref7[1],
818
- p = _ref7[2];
815
+ }).map(function (_ref8) {
816
+ var k = _ref8[0],
817
+ v = _ref8[1],
818
+ p = _ref8[2];
819
819
  return populateWorkflowField(triggeredQuestions[k], v, p).then(function (populatedValue) {
820
820
  fields[k] = populatedValue;
821
821
  });
@@ -1043,13 +1043,26 @@ function fillWorkflowFromPopulatedWorkflow(workflow, populatedWorkflow) {
1043
1043
  if (!filledWorkflow.selectedAnswers) {
1044
1044
  filledWorkflow.selectedAnswers = getInitialisedSelectedAnswers(filledWorkflow, false);
1045
1045
  }
1046
+ if (!filledWorkflow.previousAnswers && !!Object.values(populatedWorkflow.fields).find(function (answers) {
1047
+ return !!answers.previousAnswer;
1048
+ })) filledWorkflow.previousAnswers = filledWorkflow.selectedAnswers.map(function (pageAnswers) {
1049
+ return Object.fromEntries(Object.entries(pageAnswers).map(function (_ref) {
1050
+ var questionId = _ref[0],
1051
+ answer = _ref[1];
1052
+ return [questionId, {
1053
+ previousAnswer: answer,
1054
+ changed: false
1055
+ }];
1056
+ }));
1057
+ });
1046
1058
  filledWorkflow.pages.forEach(function (page, pageIdx) {
1047
1059
  for (var _i2 = 0, _Object$entries2 = Object.entries(page.questions); _i2 < _Object$entries2.length; _i2++) {
1048
1060
  var _Object$entries2$_i = _Object$entries2[_i2],
1049
1061
  id = _Object$entries2$_i[0];
1050
1062
  if (populatedWorkflow.fields[id]) {
1063
+ var _populatedWorkflow$fi;
1051
1064
  if (filledWorkflow.selectedAnswers) filledWorkflow.selectedAnswers[pageIdx][id] = populatedWorkflow.fields[id].answer;
1052
- if (filledWorkflow.previousAnswers) filledWorkflow.previousAnswers[pageIdx][id] = populatedWorkflow.fields[id].previousAnswer;
1065
+ if (filledWorkflow.previousAnswers && (_populatedWorkflow$fi = populatedWorkflow.fields[id]) != null && _populatedWorkflow$fi.previousAnswer) filledWorkflow.previousAnswers[pageIdx][id] = populatedWorkflow.fields[id].previousAnswer;
1053
1066
  }
1054
1067
  }
1055
1068
  });
@@ -1065,9 +1078,9 @@ function fillWorkflowFromPopulatedWorkflow(workflow, populatedWorkflow) {
1065
1078
  function detectChangesInWorkflowAnswers(workflow) {
1066
1079
  return _extends({}, workflow, {
1067
1080
  previousAnswers: workflow.previousAnswers ? workflow.previousAnswers.map(function (pageAnswers, pageId) {
1068
- return Object.fromEntries(Object.entries(pageAnswers).map(function (_ref) {
1069
- var question = _ref[0],
1070
- answer = _ref[1];
1081
+ return Object.fromEntries(Object.entries(pageAnswers).map(function (_ref2) {
1082
+ var question = _ref2[0],
1083
+ answer = _ref2[1];
1071
1084
  var selectedAnswer = undefined;
1072
1085
  if (workflow.selectedAnswers && workflow.selectedAnswers[pageId][question]) selectedAnswer = workflow.selectedAnswers[pageId][question];
1073
1086
  var changed = !!selectedAnswer && !equalsAnswer(selectedAnswer, answer.previousAnswer);
@@ -1808,6 +1821,7 @@ function getRefillAnswersAsWorkflow(isTreatmentWorking, hasSideEffects, delivery
1808
1821
  createdAt: '2022-10-03T00:00:00.000Z',
1809
1822
  culDeSacs: [],
1810
1823
  hidePlanRules: [],
1824
+ startingPlanIds: [],
1811
1825
  pages: [{
1812
1826
  title: 'Prescription Refill',
1813
1827
  groups: [{