@smvtech/x-flux 1.1.1 → 1.1.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.
- package/dist/index.d.mts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +9 -8
- package/dist/index.mjs +9 -8
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -72,7 +72,8 @@ declare enum TA_QC_EXTRACTION_STATUS {
|
|
|
72
72
|
declare enum VALIDATION_STATUS {
|
|
73
73
|
PERFECT = "PERFECT",
|
|
74
74
|
FIXABLE = "FIXABLE",
|
|
75
|
-
UNFIXABLE = "UNFIXABLE"
|
|
75
|
+
UNFIXABLE = "UNFIXABLE",
|
|
76
|
+
MISSING = "MISSING"
|
|
76
77
|
}
|
|
77
78
|
declare const QuestionnaireSchema: z.ZodObject<{
|
|
78
79
|
questionsWithRank: z.ZodArray<z.ZodObject<{
|
package/dist/index.d.ts
CHANGED
|
@@ -72,7 +72,8 @@ declare enum TA_QC_EXTRACTION_STATUS {
|
|
|
72
72
|
declare enum VALIDATION_STATUS {
|
|
73
73
|
PERFECT = "PERFECT",
|
|
74
74
|
FIXABLE = "FIXABLE",
|
|
75
|
-
UNFIXABLE = "UNFIXABLE"
|
|
75
|
+
UNFIXABLE = "UNFIXABLE",
|
|
76
|
+
MISSING = "MISSING"
|
|
76
77
|
}
|
|
77
78
|
declare const QuestionnaireSchema: z.ZodObject<{
|
|
78
79
|
questionsWithRank: z.ZodArray<z.ZodObject<{
|
package/dist/index.js
CHANGED
|
@@ -127,6 +127,7 @@ var VALIDATION_STATUS = /* @__PURE__ */ ((VALIDATION_STATUS2) => {
|
|
|
127
127
|
VALIDATION_STATUS2["PERFECT"] = "PERFECT";
|
|
128
128
|
VALIDATION_STATUS2["FIXABLE"] = "FIXABLE";
|
|
129
129
|
VALIDATION_STATUS2["UNFIXABLE"] = "UNFIXABLE";
|
|
130
|
+
VALIDATION_STATUS2["MISSING"] = "MISSING";
|
|
130
131
|
return VALIDATION_STATUS2;
|
|
131
132
|
})(VALIDATION_STATUS || {});
|
|
132
133
|
var QuestionnaireSchema = z2__namespace.object({
|
|
@@ -642,7 +643,7 @@ function getValidationResult(question) {
|
|
|
642
643
|
};
|
|
643
644
|
} else if (extractDefaultAnswer(answer) !== null) {
|
|
644
645
|
answerRequiredItem = {
|
|
645
|
-
error_text: "
|
|
646
|
+
error_text: "Answer cannot be empty",
|
|
646
647
|
time_saved: 0,
|
|
647
648
|
validation_name: "answer_required"
|
|
648
649
|
};
|
|
@@ -651,7 +652,7 @@ function getValidationResult(question) {
|
|
|
651
652
|
if (answerRequiredItem) {
|
|
652
653
|
const unfixable = toGroup([answerRequiredItem]);
|
|
653
654
|
return {
|
|
654
|
-
status: "
|
|
655
|
+
status: "MISSING" /* MISSING */,
|
|
655
656
|
fixable: EMPTY_GROUP,
|
|
656
657
|
unfixable,
|
|
657
658
|
perfect: EMPTY_GROUP,
|
|
@@ -673,7 +674,7 @@ function validateApplicantQuestions(applicant, questionAnswerSources) {
|
|
|
673
674
|
const questionValidations = [];
|
|
674
675
|
displayableQuestions.forEach((question) => {
|
|
675
676
|
const validationResult = getValidationResult(question);
|
|
676
|
-
if (validationResult && validationResult.status === "UNFIXABLE" /* UNFIXABLE */) {
|
|
677
|
+
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
677
678
|
questionValidations.push({
|
|
678
679
|
name: question.question.question,
|
|
679
680
|
validationResult
|
|
@@ -687,7 +688,7 @@ function validateApplicantDocuments(applicant, documentAnswerSources) {
|
|
|
687
688
|
const documentValidations = [];
|
|
688
689
|
displayableDocuments.forEach((document) => {
|
|
689
690
|
const validationResult = getValidationResult(document);
|
|
690
|
-
if (validationResult && validationResult.status === "UNFIXABLE" /* UNFIXABLE */) {
|
|
691
|
+
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
691
692
|
documentValidations.push({
|
|
692
693
|
name: document.question.question,
|
|
693
694
|
validationResult
|
|
@@ -700,9 +701,9 @@ function validateApplicant(applicant, questionAnswerSources, documentAnswerSourc
|
|
|
700
701
|
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources);
|
|
701
702
|
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources);
|
|
702
703
|
const applicantValidations = getValidationErrors(applicant.application?.validations);
|
|
703
|
-
const
|
|
704
|
+
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 */;
|
|
704
705
|
return {
|
|
705
|
-
isComplete: !
|
|
706
|
+
isComplete: !hasBlockingIssues && questionValidations.length === 0 && documentValidations.length === 0,
|
|
706
707
|
questionValidations,
|
|
707
708
|
documentValidations,
|
|
708
709
|
applicantValidations
|
|
@@ -736,9 +737,9 @@ function validateAllApplicants(applicants, questionAnswerSources, documentAnswer
|
|
|
736
737
|
function validateOrder(order, applicants, questionAnswerSources, documentAnswerSources) {
|
|
737
738
|
const orderValidations = getValidationErrors(order?.validations);
|
|
738
739
|
const applicantsResult = validateAllApplicants(applicants, questionAnswerSources, documentAnswerSources);
|
|
739
|
-
const
|
|
740
|
+
const hasOrderBlockingIssues = orderValidations?.status === "UNFIXABLE" /* UNFIXABLE */;
|
|
740
741
|
return {
|
|
741
|
-
isComplete: !
|
|
742
|
+
isComplete: !hasOrderBlockingIssues && applicantsResult.isComplete,
|
|
742
743
|
orderValidations,
|
|
743
744
|
applicantValidations: applicantsResult.applicantValidations
|
|
744
745
|
};
|
package/dist/index.mjs
CHANGED
|
@@ -101,6 +101,7 @@ var VALIDATION_STATUS = /* @__PURE__ */ ((VALIDATION_STATUS2) => {
|
|
|
101
101
|
VALIDATION_STATUS2["PERFECT"] = "PERFECT";
|
|
102
102
|
VALIDATION_STATUS2["FIXABLE"] = "FIXABLE";
|
|
103
103
|
VALIDATION_STATUS2["UNFIXABLE"] = "UNFIXABLE";
|
|
104
|
+
VALIDATION_STATUS2["MISSING"] = "MISSING";
|
|
104
105
|
return VALIDATION_STATUS2;
|
|
105
106
|
})(VALIDATION_STATUS || {});
|
|
106
107
|
var QuestionnaireSchema = z2.object({
|
|
@@ -616,7 +617,7 @@ function getValidationResult(question) {
|
|
|
616
617
|
};
|
|
617
618
|
} else if (extractDefaultAnswer(answer) !== null) {
|
|
618
619
|
answerRequiredItem = {
|
|
619
|
-
error_text: "
|
|
620
|
+
error_text: "Answer cannot be empty",
|
|
620
621
|
time_saved: 0,
|
|
621
622
|
validation_name: "answer_required"
|
|
622
623
|
};
|
|
@@ -625,7 +626,7 @@ function getValidationResult(question) {
|
|
|
625
626
|
if (answerRequiredItem) {
|
|
626
627
|
const unfixable = toGroup([answerRequiredItem]);
|
|
627
628
|
return {
|
|
628
|
-
status: "
|
|
629
|
+
status: "MISSING" /* MISSING */,
|
|
629
630
|
fixable: EMPTY_GROUP,
|
|
630
631
|
unfixable,
|
|
631
632
|
perfect: EMPTY_GROUP,
|
|
@@ -647,7 +648,7 @@ function validateApplicantQuestions(applicant, questionAnswerSources) {
|
|
|
647
648
|
const questionValidations = [];
|
|
648
649
|
displayableQuestions.forEach((question) => {
|
|
649
650
|
const validationResult = getValidationResult(question);
|
|
650
|
-
if (validationResult && validationResult.status === "UNFIXABLE" /* UNFIXABLE */) {
|
|
651
|
+
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
651
652
|
questionValidations.push({
|
|
652
653
|
name: question.question.question,
|
|
653
654
|
validationResult
|
|
@@ -661,7 +662,7 @@ function validateApplicantDocuments(applicant, documentAnswerSources) {
|
|
|
661
662
|
const documentValidations = [];
|
|
662
663
|
displayableDocuments.forEach((document) => {
|
|
663
664
|
const validationResult = getValidationResult(document);
|
|
664
|
-
if (validationResult && validationResult.status === "UNFIXABLE" /* UNFIXABLE */) {
|
|
665
|
+
if (validationResult && (validationResult.status === "MISSING" /* MISSING */ || validationResult.status === "UNFIXABLE" /* UNFIXABLE */)) {
|
|
665
666
|
documentValidations.push({
|
|
666
667
|
name: document.question.question,
|
|
667
668
|
validationResult
|
|
@@ -674,9 +675,9 @@ function validateApplicant(applicant, questionAnswerSources, documentAnswerSourc
|
|
|
674
675
|
const questionValidations = validateApplicantQuestions(applicant, questionAnswerSources);
|
|
675
676
|
const documentValidations = validateApplicantDocuments(applicant, documentAnswerSources);
|
|
676
677
|
const applicantValidations = getValidationErrors(applicant.application?.validations);
|
|
677
|
-
const
|
|
678
|
+
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 */;
|
|
678
679
|
return {
|
|
679
|
-
isComplete: !
|
|
680
|
+
isComplete: !hasBlockingIssues && questionValidations.length === 0 && documentValidations.length === 0,
|
|
680
681
|
questionValidations,
|
|
681
682
|
documentValidations,
|
|
682
683
|
applicantValidations
|
|
@@ -710,9 +711,9 @@ function validateAllApplicants(applicants, questionAnswerSources, documentAnswer
|
|
|
710
711
|
function validateOrder(order, applicants, questionAnswerSources, documentAnswerSources) {
|
|
711
712
|
const orderValidations = getValidationErrors(order?.validations);
|
|
712
713
|
const applicantsResult = validateAllApplicants(applicants, questionAnswerSources, documentAnswerSources);
|
|
713
|
-
const
|
|
714
|
+
const hasOrderBlockingIssues = orderValidations?.status === "UNFIXABLE" /* UNFIXABLE */;
|
|
714
715
|
return {
|
|
715
|
-
isComplete: !
|
|
716
|
+
isComplete: !hasOrderBlockingIssues && applicantsResult.isComplete,
|
|
716
717
|
orderValidations,
|
|
717
718
|
applicantValidations: applicantsResult.applicantValidations
|
|
718
719
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@smvtech/x-flux",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
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",
|