@smvtech/x-flux 1.1.14 → 1.1.15
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 +4 -6
- package/dist/index.d.ts +4 -6
- package/dist/index.js +14 -31
- package/dist/index.mjs +14 -31
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -5465,7 +5465,6 @@ type TEDCFlowContext = {
|
|
|
5465
5465
|
order: TVisaOrder | null;
|
|
5466
5466
|
questionnaire: TQuestionnaire | null;
|
|
5467
5467
|
applicants: Record<string, TEDCApplicant>;
|
|
5468
|
-
applicantIds: Set<string>;
|
|
5469
5468
|
activeApplicant: string | null;
|
|
5470
5469
|
setActiveApplicant: (application_id: string | null) => void;
|
|
5471
5470
|
loading: boolean;
|
|
@@ -5500,16 +5499,16 @@ declare function getSignedUrlFromAsset(docId: string): Promise<string | null>;
|
|
|
5500
5499
|
declare function getDisplayableQuestions(questions: TEDCApplicant["questions"], questionAnswerSources: ANSWER_SOURCE[]): TEDCApplicant["questions"];
|
|
5501
5500
|
declare function getDisplayableDocuments(questions: TEDCApplicant["questions"], documentAnswerSources: ANSWER_SOURCE[]): TEDCApplicant["questions"];
|
|
5502
5501
|
declare function getValidationErrors(validations?: TAnswer["validations"] | null): ValidationResult;
|
|
5503
|
-
declare function getValidationResult(question: TEDCApplicant["questions"][0]
|
|
5504
|
-
declare function validateApplicantQuestions(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[]
|
|
5502
|
+
declare function getValidationResult(question: TEDCApplicant["questions"][0]): ValidationResult;
|
|
5503
|
+
declare function validateApplicantQuestions(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[]): Array<{
|
|
5505
5504
|
name: string;
|
|
5506
5505
|
validationResult: ValidationResult;
|
|
5507
5506
|
}>;
|
|
5508
|
-
declare function validateApplicantDocuments(applicant: TEDCApplicant, documentAnswerSources: ANSWER_SOURCE[]
|
|
5507
|
+
declare function validateApplicantDocuments(applicant: TEDCApplicant, documentAnswerSources: ANSWER_SOURCE[]): Array<{
|
|
5509
5508
|
name: string;
|
|
5510
5509
|
validationResult: ValidationResult;
|
|
5511
5510
|
}>;
|
|
5512
|
-
declare function validateApplicant(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[], documentAnswerSources: ANSWER_SOURCE[]
|
|
5511
|
+
declare function validateApplicant(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[], documentAnswerSources: ANSWER_SOURCE[]): {
|
|
5513
5512
|
isComplete: boolean;
|
|
5514
5513
|
questionValidations: Array<{
|
|
5515
5514
|
name: string;
|
|
@@ -5568,7 +5567,6 @@ declare const EDCFlow: {
|
|
|
5568
5567
|
order: TVisaOrder | null;
|
|
5569
5568
|
questionnaire: TQuestionnaire | null;
|
|
5570
5569
|
applicants: Record<string, TEDCApplicant>;
|
|
5571
|
-
applicantIds: Set<string>;
|
|
5572
5570
|
activeApplicant: string | null;
|
|
5573
5571
|
setActiveApplicant: (application_id: string | null) => void;
|
|
5574
5572
|
loading: boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -5465,7 +5465,6 @@ type TEDCFlowContext = {
|
|
|
5465
5465
|
order: TVisaOrder | null;
|
|
5466
5466
|
questionnaire: TQuestionnaire | null;
|
|
5467
5467
|
applicants: Record<string, TEDCApplicant>;
|
|
5468
|
-
applicantIds: Set<string>;
|
|
5469
5468
|
activeApplicant: string | null;
|
|
5470
5469
|
setActiveApplicant: (application_id: string | null) => void;
|
|
5471
5470
|
loading: boolean;
|
|
@@ -5500,16 +5499,16 @@ declare function getSignedUrlFromAsset(docId: string): Promise<string | null>;
|
|
|
5500
5499
|
declare function getDisplayableQuestions(questions: TEDCApplicant["questions"], questionAnswerSources: ANSWER_SOURCE[]): TEDCApplicant["questions"];
|
|
5501
5500
|
declare function getDisplayableDocuments(questions: TEDCApplicant["questions"], documentAnswerSources: ANSWER_SOURCE[]): TEDCApplicant["questions"];
|
|
5502
5501
|
declare function getValidationErrors(validations?: TAnswer["validations"] | null): ValidationResult;
|
|
5503
|
-
declare function getValidationResult(question: TEDCApplicant["questions"][0]
|
|
5504
|
-
declare function validateApplicantQuestions(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[]
|
|
5502
|
+
declare function getValidationResult(question: TEDCApplicant["questions"][0]): ValidationResult;
|
|
5503
|
+
declare function validateApplicantQuestions(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[]): Array<{
|
|
5505
5504
|
name: string;
|
|
5506
5505
|
validationResult: ValidationResult;
|
|
5507
5506
|
}>;
|
|
5508
|
-
declare function validateApplicantDocuments(applicant: TEDCApplicant, documentAnswerSources: ANSWER_SOURCE[]
|
|
5507
|
+
declare function validateApplicantDocuments(applicant: TEDCApplicant, documentAnswerSources: ANSWER_SOURCE[]): Array<{
|
|
5509
5508
|
name: string;
|
|
5510
5509
|
validationResult: ValidationResult;
|
|
5511
5510
|
}>;
|
|
5512
|
-
declare function validateApplicant(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[], documentAnswerSources: ANSWER_SOURCE[]
|
|
5511
|
+
declare function validateApplicant(applicant: TEDCApplicant, questionAnswerSources: ANSWER_SOURCE[], documentAnswerSources: ANSWER_SOURCE[]): {
|
|
5513
5512
|
isComplete: boolean;
|
|
5514
5513
|
questionValidations: Array<{
|
|
5515
5514
|
name: string;
|
|
@@ -5568,7 +5567,6 @@ declare const EDCFlow: {
|
|
|
5568
5567
|
order: TVisaOrder | null;
|
|
5569
5568
|
questionnaire: TQuestionnaire | null;
|
|
5570
5569
|
applicants: Record<string, TEDCApplicant>;
|
|
5571
|
-
applicantIds: Set<string>;
|
|
5572
5570
|
activeApplicant: string | null;
|
|
5573
5571
|
setActiveApplicant: (application_id: string | null) => void;
|
|
5574
5572
|
loading: boolean;
|
package/dist/index.js
CHANGED
|
@@ -558,11 +558,6 @@ var extractDefaultAnswer = (value) => {
|
|
|
558
558
|
const match = value.match(/^\{\{.*\}\}$/);
|
|
559
559
|
return match ? match[0] : null;
|
|
560
560
|
};
|
|
561
|
-
var isDynamicApplicantAnswerEmpty = (answer, applicantIds) => {
|
|
562
|
-
const match = answer.match(/^app_id_(.+)$/);
|
|
563
|
-
if (!match) return false;
|
|
564
|
-
return !applicantIds.has(match[1]);
|
|
565
|
-
};
|
|
566
561
|
function getDisplayableQuestions(questions, questionAnswerSources) {
|
|
567
562
|
return questions.filter((q) => {
|
|
568
563
|
if (q.question.type === "DOCUMENT" /* DOCUMENT */) return false;
|
|
@@ -626,7 +621,7 @@ function getValidationErrors(validations) {
|
|
|
626
621
|
totalTimeSaved
|
|
627
622
|
};
|
|
628
623
|
}
|
|
629
|
-
function getValidationResult(question
|
|
624
|
+
function getValidationResult(question) {
|
|
630
625
|
const backendResult = getValidationErrors(question.answer_data?.validations);
|
|
631
626
|
if (backendResult && backendResult.status !== "PERFECT" /* PERFECT */) {
|
|
632
627
|
return backendResult;
|
|
@@ -635,7 +630,7 @@ function getValidationResult(question, applicantIds) {
|
|
|
635
630
|
const isDocument = question.question.type === "DOCUMENT" /* DOCUMENT */;
|
|
636
631
|
const hasApproved = question.answer_data?.assets_id?.find((asset) => asset.status === "APPROVED");
|
|
637
632
|
const answer = question.answer_data?.answer?.[0];
|
|
638
|
-
const isAnswerEmpty = !answer || answer === "" || extractDefaultAnswer(answer) !== null
|
|
633
|
+
const isAnswerEmpty = !answer || answer === "" || extractDefaultAnswer(answer) !== null;
|
|
639
634
|
if (isDocument && !hasApproved || !isDocument && isAnswerEmpty) {
|
|
640
635
|
const answerRequiredItem = {
|
|
641
636
|
error_text: isDocument ? "Please upload the required document" : "Answer cannot be empty",
|
|
@@ -660,11 +655,11 @@ function getValidationResult(question, applicantIds) {
|
|
|
660
655
|
totalTimeSaved: 0
|
|
661
656
|
};
|
|
662
657
|
}
|
|
663
|
-
function validateApplicantQuestions(applicant, questionAnswerSources
|
|
658
|
+
function validateApplicantQuestions(applicant, questionAnswerSources) {
|
|
664
659
|
const displayableQuestions = getDisplayableQuestions(applicant.questions, questionAnswerSources);
|
|
665
660
|
const questionValidations = [];
|
|
666
661
|
displayableQuestions.forEach((question) => {
|
|
667
|
-
const validationResult = getValidationResult(question
|
|
662
|
+
const validationResult = getValidationResult(question);
|
|
668
663
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
669
664
|
questionValidations.push({
|
|
670
665
|
name: question.question.question,
|
|
@@ -674,11 +669,11 @@ function validateApplicantQuestions(applicant, questionAnswerSources, applicantI
|
|
|
674
669
|
});
|
|
675
670
|
return questionValidations;
|
|
676
671
|
}
|
|
677
|
-
function validateApplicantDocuments(applicant, documentAnswerSources
|
|
672
|
+
function validateApplicantDocuments(applicant, documentAnswerSources) {
|
|
678
673
|
const displayableDocuments = getDisplayableDocuments(applicant.questions, documentAnswerSources);
|
|
679
674
|
const documentValidations = [];
|
|
680
675
|
displayableDocuments.forEach((document) => {
|
|
681
|
-
const validationResult = getValidationResult(document
|
|
676
|
+
const validationResult = getValidationResult(document);
|
|
682
677
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
683
678
|
documentValidations.push({
|
|
684
679
|
name: document.question.question,
|
|
@@ -688,9 +683,9 @@ function validateApplicantDocuments(applicant, documentAnswerSources, applicantI
|
|
|
688
683
|
});
|
|
689
684
|
return documentValidations;
|
|
690
685
|
}
|
|
691
|
-
function validateApplicant(applicant, questionAnswerSources, documentAnswerSources
|
|
692
|
-
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources
|
|
693
|
-
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources
|
|
686
|
+
function validateApplicant(applicant, questionAnswerSources, documentAnswerSources) {
|
|
687
|
+
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources);
|
|
688
|
+
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources);
|
|
694
689
|
const applicantValidations = getValidationErrors(applicant.application?.validations);
|
|
695
690
|
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 */;
|
|
696
691
|
return {
|
|
@@ -702,12 +697,9 @@ function validateApplicant(applicant, questionAnswerSources, documentAnswerSourc
|
|
|
702
697
|
}
|
|
703
698
|
function validateAllApplicants(applicants, questionAnswerSources, documentAnswerSources) {
|
|
704
699
|
const applicantsArray = Array.isArray(applicants) ? applicants : Object.values(applicants);
|
|
705
|
-
const applicantIds = new Set(
|
|
706
|
-
Array.isArray(applicants) ? applicants.map((a) => a.application_id) : Object.keys(applicants)
|
|
707
|
-
);
|
|
708
700
|
const applicantValidations = [];
|
|
709
701
|
applicantsArray.forEach((applicant) => {
|
|
710
|
-
const validation = validateApplicant(applicant, questionAnswerSources, documentAnswerSources
|
|
702
|
+
const validation = validateApplicant(applicant, questionAnswerSources, documentAnswerSources);
|
|
711
703
|
if (!validation.isComplete) {
|
|
712
704
|
const applicantName = getFullName(
|
|
713
705
|
applicant.traveller.first_name,
|
|
@@ -894,7 +886,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
894
886
|
const [questionnaire, setQuestionnaire] = react.useState(null);
|
|
895
887
|
const [dynamicQuestionMap, setDynamicQuestionMap] = react.useState({});
|
|
896
888
|
const [applicants, setApplicants] = react.useState({});
|
|
897
|
-
const [applicantIds, setApplicantIds] = react.useState(/* @__PURE__ */ new Set());
|
|
898
889
|
const [activeApplicant, setActiveApplicant] = react.useState(null);
|
|
899
890
|
const [loading, setLoading] = react.useState(true);
|
|
900
891
|
const [error, setError] = react.useState(null);
|
|
@@ -967,7 +958,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
967
958
|
setQuestionnaire(updatedQuestionnaire);
|
|
968
959
|
return applicantsWithSideEffects;
|
|
969
960
|
});
|
|
970
|
-
setApplicantIds((prev) => /* @__PURE__ */ new Set([...prev, applicant.application_id]));
|
|
971
961
|
setActiveApplicant(applicant.application_id);
|
|
972
962
|
setSuccess("Traveller added and Applicant created");
|
|
973
963
|
return applicant;
|
|
@@ -1083,11 +1073,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1083
1073
|
});
|
|
1084
1074
|
return applicantsWithSideEffects;
|
|
1085
1075
|
});
|
|
1086
|
-
setApplicantIds((prev) => {
|
|
1087
|
-
const next = new Set(prev);
|
|
1088
|
-
next.delete(application_id);
|
|
1089
|
-
return next;
|
|
1090
|
-
});
|
|
1091
1076
|
setSuccess("Applicant deleted successfully");
|
|
1092
1077
|
} catch (err) {
|
|
1093
1078
|
console.error("Failed to delete applicant:", err);
|
|
@@ -1153,12 +1138,12 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1153
1138
|
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaire, dynamicQuestionMap);
|
|
1154
1139
|
setQuestionnaire(updatedQuestionnaire);
|
|
1155
1140
|
setApplicants(updatedApplicants);
|
|
1156
|
-
const
|
|
1157
|
-
if (
|
|
1158
|
-
if (activeApplicant &&
|
|
1141
|
+
const applicantIds = Object.keys(updatedApplicants);
|
|
1142
|
+
if (applicantIds.length > 0) {
|
|
1143
|
+
if (activeApplicant && applicantIds.includes(activeApplicant)) {
|
|
1159
1144
|
setActiveApplicant(activeApplicant);
|
|
1160
1145
|
} else {
|
|
1161
|
-
setActiveApplicant(
|
|
1146
|
+
setActiveApplicant(applicantIds[0]);
|
|
1162
1147
|
}
|
|
1163
1148
|
}
|
|
1164
1149
|
}
|
|
@@ -1218,7 +1203,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1218
1203
|
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaireData, dynamicMap);
|
|
1219
1204
|
setQuestionnaire(updatedQuestionnaire);
|
|
1220
1205
|
setApplicants(updatedApplicants);
|
|
1221
|
-
setApplicantIds(new Set(Object.keys(updatedApplicants)));
|
|
1222
1206
|
const ids = Object.keys(updatedApplicants);
|
|
1223
1207
|
if (ids.length > 0) {
|
|
1224
1208
|
setActiveApplicant(ids[0]);
|
|
@@ -1238,7 +1222,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1238
1222
|
order,
|
|
1239
1223
|
questionnaire,
|
|
1240
1224
|
applicants,
|
|
1241
|
-
applicantIds,
|
|
1242
1225
|
activeApplicant,
|
|
1243
1226
|
setActiveApplicant,
|
|
1244
1227
|
loading,
|
package/dist/index.mjs
CHANGED
|
@@ -532,11 +532,6 @@ var extractDefaultAnswer = (value) => {
|
|
|
532
532
|
const match = value.match(/^\{\{.*\}\}$/);
|
|
533
533
|
return match ? match[0] : null;
|
|
534
534
|
};
|
|
535
|
-
var isDynamicApplicantAnswerEmpty = (answer, applicantIds) => {
|
|
536
|
-
const match = answer.match(/^app_id_(.+)$/);
|
|
537
|
-
if (!match) return false;
|
|
538
|
-
return !applicantIds.has(match[1]);
|
|
539
|
-
};
|
|
540
535
|
function getDisplayableQuestions(questions, questionAnswerSources) {
|
|
541
536
|
return questions.filter((q) => {
|
|
542
537
|
if (q.question.type === "DOCUMENT" /* DOCUMENT */) return false;
|
|
@@ -600,7 +595,7 @@ function getValidationErrors(validations) {
|
|
|
600
595
|
totalTimeSaved
|
|
601
596
|
};
|
|
602
597
|
}
|
|
603
|
-
function getValidationResult(question
|
|
598
|
+
function getValidationResult(question) {
|
|
604
599
|
const backendResult = getValidationErrors(question.answer_data?.validations);
|
|
605
600
|
if (backendResult && backendResult.status !== "PERFECT" /* PERFECT */) {
|
|
606
601
|
return backendResult;
|
|
@@ -609,7 +604,7 @@ function getValidationResult(question, applicantIds) {
|
|
|
609
604
|
const isDocument = question.question.type === "DOCUMENT" /* DOCUMENT */;
|
|
610
605
|
const hasApproved = question.answer_data?.assets_id?.find((asset) => asset.status === "APPROVED");
|
|
611
606
|
const answer = question.answer_data?.answer?.[0];
|
|
612
|
-
const isAnswerEmpty = !answer || answer === "" || extractDefaultAnswer(answer) !== null
|
|
607
|
+
const isAnswerEmpty = !answer || answer === "" || extractDefaultAnswer(answer) !== null;
|
|
613
608
|
if (isDocument && !hasApproved || !isDocument && isAnswerEmpty) {
|
|
614
609
|
const answerRequiredItem = {
|
|
615
610
|
error_text: isDocument ? "Please upload the required document" : "Answer cannot be empty",
|
|
@@ -634,11 +629,11 @@ function getValidationResult(question, applicantIds) {
|
|
|
634
629
|
totalTimeSaved: 0
|
|
635
630
|
};
|
|
636
631
|
}
|
|
637
|
-
function validateApplicantQuestions(applicant, questionAnswerSources
|
|
632
|
+
function validateApplicantQuestions(applicant, questionAnswerSources) {
|
|
638
633
|
const displayableQuestions = getDisplayableQuestions(applicant.questions, questionAnswerSources);
|
|
639
634
|
const questionValidations = [];
|
|
640
635
|
displayableQuestions.forEach((question) => {
|
|
641
|
-
const validationResult = getValidationResult(question
|
|
636
|
+
const validationResult = getValidationResult(question);
|
|
642
637
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
643
638
|
questionValidations.push({
|
|
644
639
|
name: question.question.question,
|
|
@@ -648,11 +643,11 @@ function validateApplicantQuestions(applicant, questionAnswerSources, applicantI
|
|
|
648
643
|
});
|
|
649
644
|
return questionValidations;
|
|
650
645
|
}
|
|
651
|
-
function validateApplicantDocuments(applicant, documentAnswerSources
|
|
646
|
+
function validateApplicantDocuments(applicant, documentAnswerSources) {
|
|
652
647
|
const displayableDocuments = getDisplayableDocuments(applicant.questions, documentAnswerSources);
|
|
653
648
|
const documentValidations = [];
|
|
654
649
|
displayableDocuments.forEach((document) => {
|
|
655
|
-
const validationResult = getValidationResult(document
|
|
650
|
+
const validationResult = getValidationResult(document);
|
|
656
651
|
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
657
652
|
documentValidations.push({
|
|
658
653
|
name: document.question.question,
|
|
@@ -662,9 +657,9 @@ function validateApplicantDocuments(applicant, documentAnswerSources, applicantI
|
|
|
662
657
|
});
|
|
663
658
|
return documentValidations;
|
|
664
659
|
}
|
|
665
|
-
function validateApplicant(applicant, questionAnswerSources, documentAnswerSources
|
|
666
|
-
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources
|
|
667
|
-
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources
|
|
660
|
+
function validateApplicant(applicant, questionAnswerSources, documentAnswerSources) {
|
|
661
|
+
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources);
|
|
662
|
+
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources);
|
|
668
663
|
const applicantValidations = getValidationErrors(applicant.application?.validations);
|
|
669
664
|
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 */;
|
|
670
665
|
return {
|
|
@@ -676,12 +671,9 @@ function validateApplicant(applicant, questionAnswerSources, documentAnswerSourc
|
|
|
676
671
|
}
|
|
677
672
|
function validateAllApplicants(applicants, questionAnswerSources, documentAnswerSources) {
|
|
678
673
|
const applicantsArray = Array.isArray(applicants) ? applicants : Object.values(applicants);
|
|
679
|
-
const applicantIds = new Set(
|
|
680
|
-
Array.isArray(applicants) ? applicants.map((a) => a.application_id) : Object.keys(applicants)
|
|
681
|
-
);
|
|
682
674
|
const applicantValidations = [];
|
|
683
675
|
applicantsArray.forEach((applicant) => {
|
|
684
|
-
const validation = validateApplicant(applicant, questionAnswerSources, documentAnswerSources
|
|
676
|
+
const validation = validateApplicant(applicant, questionAnswerSources, documentAnswerSources);
|
|
685
677
|
if (!validation.isComplete) {
|
|
686
678
|
const applicantName = getFullName(
|
|
687
679
|
applicant.traveller.first_name,
|
|
@@ -868,7 +860,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
868
860
|
const [questionnaire, setQuestionnaire] = useState(null);
|
|
869
861
|
const [dynamicQuestionMap, setDynamicQuestionMap] = useState({});
|
|
870
862
|
const [applicants, setApplicants] = useState({});
|
|
871
|
-
const [applicantIds, setApplicantIds] = useState(/* @__PURE__ */ new Set());
|
|
872
863
|
const [activeApplicant, setActiveApplicant] = useState(null);
|
|
873
864
|
const [loading, setLoading] = useState(true);
|
|
874
865
|
const [error, setError] = useState(null);
|
|
@@ -941,7 +932,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
941
932
|
setQuestionnaire(updatedQuestionnaire);
|
|
942
933
|
return applicantsWithSideEffects;
|
|
943
934
|
});
|
|
944
|
-
setApplicantIds((prev) => /* @__PURE__ */ new Set([...prev, applicant.application_id]));
|
|
945
935
|
setActiveApplicant(applicant.application_id);
|
|
946
936
|
setSuccess("Traveller added and Applicant created");
|
|
947
937
|
return applicant;
|
|
@@ -1057,11 +1047,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1057
1047
|
});
|
|
1058
1048
|
return applicantsWithSideEffects;
|
|
1059
1049
|
});
|
|
1060
|
-
setApplicantIds((prev) => {
|
|
1061
|
-
const next = new Set(prev);
|
|
1062
|
-
next.delete(application_id);
|
|
1063
|
-
return next;
|
|
1064
|
-
});
|
|
1065
1050
|
setSuccess("Applicant deleted successfully");
|
|
1066
1051
|
} catch (err) {
|
|
1067
1052
|
console.error("Failed to delete applicant:", err);
|
|
@@ -1127,12 +1112,12 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1127
1112
|
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaire, dynamicQuestionMap);
|
|
1128
1113
|
setQuestionnaire(updatedQuestionnaire);
|
|
1129
1114
|
setApplicants(updatedApplicants);
|
|
1130
|
-
const
|
|
1131
|
-
if (
|
|
1132
|
-
if (activeApplicant &&
|
|
1115
|
+
const applicantIds = Object.keys(updatedApplicants);
|
|
1116
|
+
if (applicantIds.length > 0) {
|
|
1117
|
+
if (activeApplicant && applicantIds.includes(activeApplicant)) {
|
|
1133
1118
|
setActiveApplicant(activeApplicant);
|
|
1134
1119
|
} else {
|
|
1135
|
-
setActiveApplicant(
|
|
1120
|
+
setActiveApplicant(applicantIds[0]);
|
|
1136
1121
|
}
|
|
1137
1122
|
}
|
|
1138
1123
|
}
|
|
@@ -1192,7 +1177,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1192
1177
|
const { updatedQuestionnaire, updatedApplicants } = runApplicantSideEffects(applicants2, questionnaireData, dynamicMap);
|
|
1193
1178
|
setQuestionnaire(updatedQuestionnaire);
|
|
1194
1179
|
setApplicants(updatedApplicants);
|
|
1195
|
-
setApplicantIds(new Set(Object.keys(updatedApplicants)));
|
|
1196
1180
|
const ids = Object.keys(updatedApplicants);
|
|
1197
1181
|
if (ids.length > 0) {
|
|
1198
1182
|
setActiveApplicant(ids[0]);
|
|
@@ -1212,7 +1196,6 @@ var EDCFlowProvider = ({ children, orderId }) => {
|
|
|
1212
1196
|
order,
|
|
1213
1197
|
questionnaire,
|
|
1214
1198
|
applicants,
|
|
1215
|
-
applicantIds,
|
|
1216
1199
|
activeApplicant,
|
|
1217
1200
|
setActiveApplicant,
|
|
1218
1201
|
loading,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smvtech/x-flux",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.15",
|
|
4
4
|
"description": "x-flux - A powerful React package for managing effective document collection flows, visa questionnaires, travellers, and applications",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|