@smvtech/x-flux 1.1.20 → 1.1.22
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/index.d.mts +49 -57
- package/dist/index.d.ts +49 -57
- package/dist/index.js +111 -177
- package/dist/index.mjs +112 -174
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -136,22 +136,6 @@ var FIX_TYPE = /* @__PURE__ */ ((FIX_TYPE2) => {
|
|
|
136
136
|
FIX_TYPE2["NONE"] = "none";
|
|
137
137
|
return FIX_TYPE2;
|
|
138
138
|
})(FIX_TYPE || {});
|
|
139
|
-
var ANSWER_STATUS = /* @__PURE__ */ ((ANSWER_STATUS2) => {
|
|
140
|
-
ANSWER_STATUS2["ANSWERED"] = "ANSWERED";
|
|
141
|
-
ANSWER_STATUS2["APPROVED"] = "APPROVED";
|
|
142
|
-
ANSWER_STATUS2["REJECTED"] = "REJECTED";
|
|
143
|
-
ANSWER_STATUS2["NA"] = "NA";
|
|
144
|
-
ANSWER_STATUS2["UNSTARTED"] = "UNSTARTED";
|
|
145
|
-
ANSWER_STATUS2["PENDING"] = "PENDING";
|
|
146
|
-
return ANSWER_STATUS2;
|
|
147
|
-
})(ANSWER_STATUS || {});
|
|
148
|
-
var ASSET_STATUS = /* @__PURE__ */ ((ASSET_STATUS2) => {
|
|
149
|
-
ASSET_STATUS2["ANSWERED"] = "ANSWERED";
|
|
150
|
-
ASSET_STATUS2["APPROVED"] = "APPROVED";
|
|
151
|
-
ASSET_STATUS2["REJECTED"] = "REJECTED";
|
|
152
|
-
ASSET_STATUS2["DELETED"] = "DELETED";
|
|
153
|
-
return ASSET_STATUS2;
|
|
154
|
-
})(ASSET_STATUS || {});
|
|
155
139
|
var QuestionnaireSchema = z2__namespace.object({
|
|
156
140
|
questionsWithRank: z2__namespace.array(z2__namespace.object({ id: z2__namespace.string(), rank: z2__namespace.number() })),
|
|
157
141
|
questionMap: z2__namespace.record(
|
|
@@ -166,6 +150,7 @@ var QuestionnaireSchema = z2__namespace.object({
|
|
|
166
150
|
is_root: z2__namespace.boolean(),
|
|
167
151
|
type: z2__namespace.nativeEnum(QUESTION_TYPE),
|
|
168
152
|
doc_type: z2__namespace.nativeEnum(DOC_TYPES).optional(),
|
|
153
|
+
automation_label: z2__namespace.string().optional(),
|
|
169
154
|
renders: z2__namespace.array(
|
|
170
155
|
z2__namespace.object({
|
|
171
156
|
operation: z2__namespace.string(),
|
|
@@ -229,12 +214,12 @@ var AnswerSchema = z2__namespace.object({
|
|
|
229
214
|
z2__namespace.object({
|
|
230
215
|
doc_id: z2__namespace.string(),
|
|
231
216
|
issue_reason: z2__namespace.string().nullable(),
|
|
232
|
-
status: z2__namespace.
|
|
217
|
+
status: z2__namespace.enum(["ANSWERED", "APPROVED", "REJECTED", "DELETED"])
|
|
233
218
|
})
|
|
234
219
|
),
|
|
235
220
|
answer: z2__namespace.array(z2__namespace.string()),
|
|
236
221
|
issue_reason: z2__namespace.string().nullable(),
|
|
237
|
-
status: z2__namespace.
|
|
222
|
+
status: z2__namespace.enum(["ANSWERED", "APPROVED", "REJECTED", "NA", "UNSTARTED", "PENDING"]),
|
|
238
223
|
is_deleted: z2__namespace.boolean(),
|
|
239
224
|
visa_order_id: z2__namespace.string(),
|
|
240
225
|
validations: z2__namespace.array(z2__namespace.object({
|
|
@@ -637,14 +622,14 @@ function getValidationErrors(validations) {
|
|
|
637
622
|
totalTimeSaved
|
|
638
623
|
};
|
|
639
624
|
}
|
|
640
|
-
function
|
|
625
|
+
function getValidationResult(question) {
|
|
641
626
|
const backendResult = getValidationErrors(question.answer_data?.validations);
|
|
642
627
|
if (backendResult && backendResult.status !== "PERFECT" /* PERFECT */) {
|
|
643
628
|
return backendResult;
|
|
644
629
|
}
|
|
645
630
|
if (question.question.is_required) {
|
|
646
631
|
const isDocument = question.question.type === "DOCUMENT" /* DOCUMENT */;
|
|
647
|
-
const hasApproved = question.answer_data?.assets_id?.find((asset) => asset.status === "APPROVED"
|
|
632
|
+
const hasApproved = question.answer_data?.assets_id?.find((asset) => asset.status === "APPROVED");
|
|
648
633
|
const answer = question.answer_data?.answer?.[0];
|
|
649
634
|
const isAnswerEmpty = !answer || answer === "" || extractDefaultAnswer(answer) !== null;
|
|
650
635
|
if (isDocument && !hasApproved || !isDocument && isAnswerEmpty) {
|
|
@@ -671,17 +656,16 @@ function computeValidationResult(question) {
|
|
|
671
656
|
totalTimeSaved: 0
|
|
672
657
|
};
|
|
673
658
|
}
|
|
674
|
-
function getValidationResult(question) {
|
|
675
|
-
return getQuestionRenderInfo(question);
|
|
676
|
-
}
|
|
677
659
|
function validateApplicantQuestions(applicant, questionAnswerSources) {
|
|
678
660
|
const displayableQuestions = getDisplayableQuestions(applicant.questions, questionAnswerSources);
|
|
679
661
|
const questionValidations = [];
|
|
680
662
|
displayableQuestions.forEach((question) => {
|
|
681
|
-
const
|
|
682
|
-
const { status, rejectionReasons, rejectedAssets, validationResult } = renderInfo;
|
|
663
|
+
const validationResult = getValidationResult(question);
|
|
683
664
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
684
|
-
questionValidations.push({
|
|
665
|
+
questionValidations.push({
|
|
666
|
+
name: question.question.question,
|
|
667
|
+
validationResult
|
|
668
|
+
});
|
|
685
669
|
}
|
|
686
670
|
});
|
|
687
671
|
return questionValidations;
|
|
@@ -690,10 +674,12 @@ function validateApplicantDocuments(applicant, documentAnswerSources) {
|
|
|
690
674
|
const displayableDocuments = getDisplayableDocuments(applicant.questions, documentAnswerSources);
|
|
691
675
|
const documentValidations = [];
|
|
692
676
|
displayableDocuments.forEach((document) => {
|
|
693
|
-
const
|
|
694
|
-
const { status, rejectionReasons, rejectedAssets, validationResult } = renderInfo;
|
|
677
|
+
const validationResult = getValidationResult(document);
|
|
695
678
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
696
|
-
documentValidations.push({
|
|
679
|
+
documentValidations.push({
|
|
680
|
+
name: document.question.question,
|
|
681
|
+
validationResult
|
|
682
|
+
});
|
|
697
683
|
}
|
|
698
684
|
});
|
|
699
685
|
return documentValidations;
|
|
@@ -702,7 +688,7 @@ function validateApplicant(applicant, questionAnswerSources, documentAnswerSourc
|
|
|
702
688
|
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources);
|
|
703
689
|
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources);
|
|
704
690
|
const applicantValidations = getValidationErrors(applicant.application?.validations);
|
|
705
|
-
const hasBlockingIssues = questionValidations.some((q) => q.
|
|
691
|
+
const hasBlockingIssues = questionValidations.some((q) => q.validationResult?.status === "MISSING" /* MISSING */ || q.validationResult?.status === "UNFIXABLE" /* UNFIXABLE */) || documentValidations.some((d) => d.validationResult?.status === "MISSING" /* MISSING */ || d.validationResult?.status === "UNFIXABLE" /* UNFIXABLE */) || applicantValidations?.status === "UNFIXABLE" /* UNFIXABLE */;
|
|
706
692
|
return {
|
|
707
693
|
isComplete: !hasBlockingIssues && questionValidations.length === 0 && documentValidations.length === 0,
|
|
708
694
|
questionValidations,
|
|
@@ -751,22 +737,6 @@ function getFixTypeFromFixableItems(fixableItems) {
|
|
|
751
737
|
}
|
|
752
738
|
return "auto" /* AUTO */;
|
|
753
739
|
}
|
|
754
|
-
function getQuestionRenderInfo(question) {
|
|
755
|
-
const answer = question.answer_data;
|
|
756
|
-
const status = answer?.status ?? "UNSTARTED" /* UNSTARTED */;
|
|
757
|
-
let rejectionReasons = [];
|
|
758
|
-
let rejectedAssets = [];
|
|
759
|
-
if (status === "REJECTED" /* REJECTED */ && answer) {
|
|
760
|
-
rejectedAssets = answer.assets_id?.filter((a) => a.status === "REJECTED" /* REJECTED */ && a.issue_reason).map((a) => ({ doc_id: a.doc_id, reason: a.issue_reason })) ?? [];
|
|
761
|
-
rejectionReasons = rejectedAssets.length > 0 ? rejectedAssets.map((a) => a.reason) : answer.issue_reason ? [answer.issue_reason] : [];
|
|
762
|
-
}
|
|
763
|
-
return {
|
|
764
|
-
status,
|
|
765
|
-
rejectionReasons,
|
|
766
|
-
rejectedAssets,
|
|
767
|
-
validationResult: computeValidationResult(question)
|
|
768
|
-
};
|
|
769
|
-
}
|
|
770
740
|
|
|
771
741
|
// src/api/index.ts
|
|
772
742
|
var transformApplicationData = (rawData) => {
|
|
@@ -822,12 +792,6 @@ var updateAnswer = async (applicationId, data, onProgress) => {
|
|
|
822
792
|
if (data.file) {
|
|
823
793
|
formData.append("docs", data.file);
|
|
824
794
|
}
|
|
825
|
-
if (data.autoApproveAnswers !== void 0) {
|
|
826
|
-
formData.append("autoApproveAnswers", String(data.autoApproveAnswers));
|
|
827
|
-
}
|
|
828
|
-
if (data.forceRunValidations !== void 0) {
|
|
829
|
-
formData.append("forceRunValidations", String(data.forceRunValidations));
|
|
830
|
-
}
|
|
831
795
|
const response = await client.post(`/visa_answers/upsert-answer-edc`, formData, {
|
|
832
796
|
onUploadProgress: (event) => {
|
|
833
797
|
onProgress?.({
|
|
@@ -901,10 +865,9 @@ var updateOrderQCTermsAndConditions = async (orderId) => {
|
|
|
901
865
|
const response = await client.patch(`/visa_orders/update-order-qc-terms-conditions/${orderId}`);
|
|
902
866
|
return { data: response.data.data };
|
|
903
867
|
};
|
|
904
|
-
var mapFixableDocument = async (answerId
|
|
868
|
+
var mapFixableDocument = async (answerId) => {
|
|
905
869
|
const client = getClient();
|
|
906
|
-
const
|
|
907
|
-
const response = await client.post(`/edc/map-fixable-doc/${answerId}`, body);
|
|
870
|
+
const response = await client.post(`/edc/map-fixable-doc/${answerId}`);
|
|
908
871
|
const rawData = response.data.data;
|
|
909
872
|
const transformedAnswer = formatAnswerFromResponse(
|
|
910
873
|
rawData.answer,
|
|
@@ -918,17 +881,8 @@ var mapFixableDocument = async (answerId, force_fix) => {
|
|
|
918
881
|
}
|
|
919
882
|
};
|
|
920
883
|
};
|
|
921
|
-
var EDCFormMode = /* @__PURE__ */ ((EDCFormMode2) => {
|
|
922
|
-
EDCFormMode2["CREATE"] = "CREATE";
|
|
923
|
-
EDCFormMode2["FIX"] = "FIX";
|
|
924
|
-
return EDCFormMode2;
|
|
925
|
-
})(EDCFormMode || {});
|
|
926
884
|
var EDCFlowContext = react.createContext(void 0);
|
|
927
|
-
var EDCFlowProvider = ({
|
|
928
|
-
children,
|
|
929
|
-
orderId,
|
|
930
|
-
mode = "CREATE" /* CREATE */
|
|
931
|
-
}) => {
|
|
885
|
+
var EDCFlowProvider = ({ children, orderId }) => {
|
|
932
886
|
const [order, setOrder] = react.useState(null);
|
|
933
887
|
const [questionnaire, setQuestionnaire] = react.useState(null);
|
|
934
888
|
const [dynamicQuestionMap, setDynamicQuestionMap] = react.useState({});
|
|
@@ -1066,11 +1020,7 @@ var EDCFlowProvider = ({
|
|
|
1066
1020
|
const currentApplicant = prev[application_id];
|
|
1067
1021
|
if (!currentApplicant) return prev;
|
|
1068
1022
|
const applicantWithUpdatedAnswer = updateApplicantWithAnswer(
|
|
1069
|
-
{
|
|
1070
|
-
...currentApplicant,
|
|
1071
|
-
application: updatedAnswerData.application,
|
|
1072
|
-
traveller: updatedAnswerData.traveller
|
|
1073
|
-
},
|
|
1023
|
+
{ ...currentApplicant, application: updatedAnswerData.application, traveller: updatedAnswerData.traveller },
|
|
1074
1024
|
updatedAnswerData.answers.visa_questions_id,
|
|
1075
1025
|
updatedAnswerData.answers,
|
|
1076
1026
|
questionnaire
|
|
@@ -1086,10 +1036,10 @@ var EDCFlowProvider = ({
|
|
|
1086
1036
|
[questionnaire, refreshApplicant, order]
|
|
1087
1037
|
);
|
|
1088
1038
|
const applyAutoFix = react.useCallback(
|
|
1089
|
-
async (applicationId, answerId
|
|
1039
|
+
async (applicationId, answerId) => {
|
|
1090
1040
|
if (!questionnaire || !order) return;
|
|
1091
1041
|
try {
|
|
1092
|
-
const { data } = await mapFixableDocument(answerId
|
|
1042
|
+
const { data } = await mapFixableDocument(answerId);
|
|
1093
1043
|
if (data.docId && data.signedUrl) {
|
|
1094
1044
|
setDocIdToS3Url((prev) => ({
|
|
1095
1045
|
...prev,
|
|
@@ -1107,69 +1057,63 @@ var EDCFlowProvider = ({
|
|
|
1107
1057
|
},
|
|
1108
1058
|
[questionnaire, order, refreshApplicant]
|
|
1109
1059
|
);
|
|
1110
|
-
const deleteApplicantById = react.useCallback(
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1115
|
-
|
|
1116
|
-
|
|
1117
|
-
|
|
1118
|
-
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
return prevActive;
|
|
1125
|
-
});
|
|
1126
|
-
return applicantsWithSideEffects;
|
|
1060
|
+
const deleteApplicantById = react.useCallback(async (application_id) => {
|
|
1061
|
+
if (!questionnaire || !order) return;
|
|
1062
|
+
try {
|
|
1063
|
+
await deleteApplicant(application_id);
|
|
1064
|
+
setApplicants((prev) => {
|
|
1065
|
+
const { [application_id]: _, ...updatedApplicants } = prev;
|
|
1066
|
+
const { updatedQuestionnaire, updatedApplicants: applicantsWithSideEffects } = runApplicantSideEffects(updatedApplicants, questionnaire, dynamicQuestionMap);
|
|
1067
|
+
setQuestionnaire(updatedQuestionnaire);
|
|
1068
|
+
setActiveApplicant((prevActive) => {
|
|
1069
|
+
if (prevActive === application_id) {
|
|
1070
|
+
const remainingIds = Object.keys(applicantsWithSideEffects);
|
|
1071
|
+
return remainingIds.length > 0 ? remainingIds[remainingIds.length - 1] : null;
|
|
1072
|
+
}
|
|
1073
|
+
return prevActive;
|
|
1127
1074
|
});
|
|
1128
|
-
|
|
1129
|
-
}
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
);
|
|
1075
|
+
return applicantsWithSideEffects;
|
|
1076
|
+
});
|
|
1077
|
+
setSuccess("Applicant deleted successfully");
|
|
1078
|
+
} catch (err) {
|
|
1079
|
+
console.error("Failed to delete applicant:", err);
|
|
1080
|
+
setError("Failed to delete applicant");
|
|
1081
|
+
throw err;
|
|
1082
|
+
}
|
|
1083
|
+
}, [questionnaire, order, dynamicQuestionMap]);
|
|
1137
1084
|
const refreshOrder = react.useCallback(async () => {
|
|
1138
1085
|
await fetchOrder();
|
|
1139
1086
|
}, [fetchOrder]);
|
|
1140
|
-
const getS3UrlForAsset = react.useCallback(
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
|
|
1144
|
-
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1087
|
+
const getS3UrlForAsset = react.useCallback(async (doc_id) => {
|
|
1088
|
+
if (!doc_id) return null;
|
|
1089
|
+
if (docIdToS3Url[doc_id] !== void 0) {
|
|
1090
|
+
return docIdToS3Url[doc_id];
|
|
1091
|
+
}
|
|
1092
|
+
const existingRequest = s3UrlFetchFlightRequests.current.get(doc_id);
|
|
1093
|
+
if (existingRequest) {
|
|
1094
|
+
return existingRequest;
|
|
1095
|
+
}
|
|
1096
|
+
const request = (async () => {
|
|
1097
|
+
try {
|
|
1098
|
+
const s3Url = await getSignedUrlFromAsset(doc_id);
|
|
1099
|
+
setDocIdToS3Url((prev) => ({
|
|
1100
|
+
...prev,
|
|
1101
|
+
[doc_id]: s3Url
|
|
1102
|
+
}));
|
|
1103
|
+
s3UrlFetchFlightRequests.current.delete(doc_id);
|
|
1104
|
+
return s3Url;
|
|
1105
|
+
} catch (error2) {
|
|
1106
|
+
setDocIdToS3Url((prev) => ({
|
|
1107
|
+
...prev,
|
|
1108
|
+
[doc_id]: null
|
|
1109
|
+
}));
|
|
1110
|
+
s3UrlFetchFlightRequests.current.delete(doc_id);
|
|
1111
|
+
return null;
|
|
1149
1112
|
}
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
...prev,
|
|
1155
|
-
[doc_id]: s3Url
|
|
1156
|
-
}));
|
|
1157
|
-
s3UrlFetchFlightRequests.current.delete(doc_id);
|
|
1158
|
-
return s3Url;
|
|
1159
|
-
} catch (error2) {
|
|
1160
|
-
setDocIdToS3Url((prev) => ({
|
|
1161
|
-
...prev,
|
|
1162
|
-
[doc_id]: null
|
|
1163
|
-
}));
|
|
1164
|
-
s3UrlFetchFlightRequests.current.delete(doc_id);
|
|
1165
|
-
return null;
|
|
1166
|
-
}
|
|
1167
|
-
})();
|
|
1168
|
-
s3UrlFetchFlightRequests.current.set(doc_id, request);
|
|
1169
|
-
return request;
|
|
1170
|
-
},
|
|
1171
|
-
[docIdToS3Url]
|
|
1172
|
-
);
|
|
1113
|
+
})();
|
|
1114
|
+
s3UrlFetchFlightRequests.current.set(doc_id, request);
|
|
1115
|
+
return request;
|
|
1116
|
+
}, [docIdToS3Url]);
|
|
1173
1117
|
const acceptOrderQCTermsAndConditions = react.useCallback(async () => {
|
|
1174
1118
|
if (!order) return;
|
|
1175
1119
|
try {
|
|
@@ -1188,12 +1132,11 @@ var EDCFlowProvider = ({
|
|
|
1188
1132
|
setOrder(data.order);
|
|
1189
1133
|
}
|
|
1190
1134
|
if (data.applications && data.applications.length > 0) {
|
|
1191
|
-
const applicants2 = createApplicantsFromApplications(
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
questionnaire,
|
|
1195
|
-
dynamicQuestionMap
|
|
1135
|
+
const applicants2 = createApplicantsFromApplications(
|
|
1136
|
+
data.applications,
|
|
1137
|
+
questionnaire
|
|
1196
1138
|
);
|
|
1139
|
+
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaire, dynamicQuestionMap);
|
|
1197
1140
|
setQuestionnaire(updatedQuestionnaire);
|
|
1198
1141
|
setApplicants(updatedApplicants);
|
|
1199
1142
|
const applicantIds = Object.keys(updatedApplicants);
|
|
@@ -1211,39 +1154,36 @@ var EDCFlowProvider = ({
|
|
|
1211
1154
|
setError("Failed to run all validations");
|
|
1212
1155
|
}
|
|
1213
1156
|
}, [orderId, questionnaire, dynamicQuestionMap, activeApplicant]);
|
|
1214
|
-
const runApplicantValidationsHandler = react.useCallback(
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1233
|
-
|
|
1234
|
-
|
|
1235
|
-
|
|
1236
|
-
});
|
|
1237
|
-
}
|
|
1157
|
+
const runApplicantValidationsHandler = react.useCallback(async (applicationId) => {
|
|
1158
|
+
if (!orderId || !questionnaire) return;
|
|
1159
|
+
try {
|
|
1160
|
+
setError(null);
|
|
1161
|
+
const { data } = await runApplicantValidations(applicationId);
|
|
1162
|
+
if (data.application) {
|
|
1163
|
+
const applicant = createApplicantData(
|
|
1164
|
+
data.application.traveller,
|
|
1165
|
+
data.application.answers,
|
|
1166
|
+
questionnaire,
|
|
1167
|
+
data.application.application
|
|
1168
|
+
);
|
|
1169
|
+
if (applicant) {
|
|
1170
|
+
setApplicants((prev) => {
|
|
1171
|
+
const updatedApplicants = {
|
|
1172
|
+
...prev,
|
|
1173
|
+
[applicationId]: applicant
|
|
1174
|
+
};
|
|
1175
|
+
const { updatedQuestionnaire, updatedApplicants: applicantsWithSideEffects } = runApplicantSideEffects(updatedApplicants, questionnaire, dynamicQuestionMap);
|
|
1176
|
+
setQuestionnaire(updatedQuestionnaire);
|
|
1177
|
+
return applicantsWithSideEffects;
|
|
1178
|
+
});
|
|
1238
1179
|
}
|
|
1239
|
-
setSuccess("Applicant validations completed successfully");
|
|
1240
|
-
} catch (err) {
|
|
1241
|
-
console.error("Failed to run applicant validations:", err);
|
|
1242
|
-
setError("Failed to run applicant validations");
|
|
1243
1180
|
}
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1181
|
+
setSuccess("Applicant validations completed successfully");
|
|
1182
|
+
} catch (err) {
|
|
1183
|
+
console.error("Failed to run applicant validations:", err);
|
|
1184
|
+
setError("Failed to run applicant validations");
|
|
1185
|
+
}
|
|
1186
|
+
}, [orderId, questionnaire, dynamicQuestionMap]);
|
|
1247
1187
|
react.useEffect(() => {
|
|
1248
1188
|
if (!orderId) return;
|
|
1249
1189
|
const initialize = async () => {
|
|
@@ -1256,13 +1196,12 @@ var EDCFlowProvider = ({
|
|
|
1256
1196
|
fetchApplicantsForOrder()
|
|
1257
1197
|
]);
|
|
1258
1198
|
if (orderData && questionnaireData && applications) {
|
|
1259
|
-
const applicants2 = createApplicantsFromApplications(
|
|
1260
|
-
|
|
1261
|
-
|
|
1262
|
-
applicants2,
|
|
1263
|
-
questionnaireData,
|
|
1264
|
-
dynamicMap
|
|
1199
|
+
const applicants2 = createApplicantsFromApplications(
|
|
1200
|
+
applications,
|
|
1201
|
+
questionnaireData
|
|
1265
1202
|
);
|
|
1203
|
+
const dynamicMap = buildDynamicQuestionMap(questionnaireData);
|
|
1204
|
+
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaireData, dynamicMap);
|
|
1266
1205
|
setQuestionnaire(updatedQuestionnaire);
|
|
1267
1206
|
setApplicants(updatedApplicants);
|
|
1268
1207
|
const ids = Object.keys(updatedApplicants);
|
|
@@ -1289,7 +1228,6 @@ var EDCFlowProvider = ({
|
|
|
1289
1228
|
loading,
|
|
1290
1229
|
error,
|
|
1291
1230
|
success,
|
|
1292
|
-
mode,
|
|
1293
1231
|
addApplicant: addApplicant2,
|
|
1294
1232
|
updateAnswer: updateAnswer2,
|
|
1295
1233
|
deleteApplicant: deleteApplicantById,
|
|
@@ -1811,15 +1749,12 @@ var EDCFlow = {
|
|
|
1811
1749
|
var index_default = EDCFlow;
|
|
1812
1750
|
|
|
1813
1751
|
exports.ANSWER_SOURCE = ANSWER_SOURCE;
|
|
1814
|
-
exports.ANSWER_STATUS = ANSWER_STATUS;
|
|
1815
1752
|
exports.APPLICATION_STATUS = APPLICATION_STATUS;
|
|
1816
1753
|
exports.APPLICATION_TAGS = APPLICATION_TAGS;
|
|
1817
|
-
exports.ASSET_STATUS = ASSET_STATUS;
|
|
1818
1754
|
exports.AnswerSchema = AnswerSchema;
|
|
1819
1755
|
exports.ApplicationSchema = ApplicationSchema;
|
|
1820
1756
|
exports.DOC_TYPES = DOC_TYPES;
|
|
1821
1757
|
exports.EDCFlowProvider = EDCFlowProvider;
|
|
1822
|
-
exports.EDCFormMode = EDCFormMode;
|
|
1823
1758
|
exports.FIX_TYPE = FIX_TYPE;
|
|
1824
1759
|
exports.INTERNAL_ORDER_TAGS = INTERNAL_ORDER_TAGS;
|
|
1825
1760
|
exports.PROCESSING_BLOCKED_ON_PAYMENT_STATUS = PROCESSING_BLOCKED_ON_PAYMENT_STATUS;
|
|
@@ -1840,7 +1775,6 @@ exports.formatTravellerFromResponse = formatTravellerFromResponse;
|
|
|
1840
1775
|
exports.getDisplayableDocuments = getDisplayableDocuments;
|
|
1841
1776
|
exports.getDisplayableQuestions = getDisplayableQuestions;
|
|
1842
1777
|
exports.getFixTypeFromFixableItems = getFixTypeFromFixableItems;
|
|
1843
|
-
exports.getQuestionRenderInfo = getQuestionRenderInfo;
|
|
1844
1778
|
exports.getSignedUrlFromAsset = getSignedUrlFromAsset;
|
|
1845
1779
|
exports.getValidationErrors = getValidationErrors;
|
|
1846
1780
|
exports.getValidationResult = getValidationResult;
|