Skip to content

Commit

Permalink
Merge pull request #8
Browse files Browse the repository at this point in the history
(fix): Remove failing config schema validation Rule
  • Loading branch information
usamaidrsk authored Nov 29, 2024
2 parents b5c5968 + 539517b commit 5288ab6
Showing 1 changed file with 13 additions and 4 deletions.
17 changes: 13 additions & 4 deletions src/config-schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,14 +27,23 @@ export type ConditionGroup = string;
* Validates that condition groups don't contain conflicting states (e.g., INVOICED and NOT_INVOICED)
*/
const validateConditionGroup = (conditions: string) => {
const allowedConditions = Object.values(BillingCondition);
const conditionsArray = conditions.split(',');
const conflictPairs = [
['INVOICED', 'NOT_INVOICED'],
['FULLY_INVOICED', 'PARTIALLY_INVOICED'],
['PAID', 'NOT_PAID'],
['OVERDUE', 'NOT_OVERDUE'],
];

const conditionsArray = conditions.split(',');
for (const condition of conditionsArray) {
const validateCondition = validators.oneOf(allowedConditions);
const result = validateCondition(condition);
if (result !== undefined) {
return result;
}
}

for (const pair of conflictPairs) {
if (conditionsArray.includes(pair[0]) && conditionsArray.includes(pair[1])) {
return `Condition group contains conflicting states: ${pair[0]} and ${pair[1]}`;
Expand All @@ -54,7 +63,7 @@ export const configSchema = {
).join(', ')}`,
_elements: {
_type: Type.String,
_validators: [validators.oneOf(Object.values(BillingCondition)), validateConditionGroup],
_validators: [validateConditionGroup],
},
},
nonApprovedConditions: {
Expand All @@ -69,7 +78,7 @@ export const configSchema = {
).join(', ')}`,
_elements: {
_type: Type.String,
_validators: [validators.oneOf(Object.values(BillingCondition)), validateConditionGroup],
_validators: [validateConditionGroup],
},
},
approvedConditions: {
Expand All @@ -84,7 +93,7 @@ export const configSchema = {
).join(', ')}`,
_elements: {
_type: Type.String,
_validators: [validators.oneOf(Object.values(BillingCondition)), validateConditionGroup],
_validators: [validateConditionGroup],
},
},
patientUuidFieldName: {
Expand Down

0 comments on commit 5288ab6

Please sign in to comment.