commit 7cef2917f4ece318a682f2112ebcfa92a50f2c91
parent 7598ab40ce4c1c0299d92895fbde33fc1c63e4d0
Author: Florian Dold <florian@dold.me>
Date: Tue, 7 Jul 2026 16:50:18 +0200
remove broken trusted_domains/expected_domains validation
Diffstat:
1 file changed, 3 insertions(+), 29 deletions(-)
diff --git a/packages/taler-util/src/contract-terms.ts b/packages/taler-util/src/contract-terms.ts
@@ -28,9 +28,7 @@ import {
import { AmountString, Integer } from "./types-taler-common.js";
import {
MerchantContractTerms,
- MerchantContractTermsV0,
MerchantContractTermsV1,
- MerchantContractTokenKind,
MerchantContractVersion,
} from "./types-taler-merchant.js";
@@ -230,33 +228,10 @@ export namespace ContractTermsUtil {
}
export function validateParsed(
- contractTerms: MerchantContractTerms,
+ _contractTerms: MerchantContractTerms,
): boolean {
- // validate trusted/expected domains
- if (contractTerms.version === MerchantContractVersion.V1) {
- const regex = new RegExp("^(\\*\\.)?([\\w\\d]+\\.)+[\\w\\d]+$");
- for (const slug in contractTerms.token_families) {
- const family = contractTerms.token_families[slug];
- const domains: string[] = [];
- switch (family.details.class) {
- case MerchantContractTokenKind.Subscription:
- domains.push(...family.details.trusted_domains);
- break;
- case MerchantContractTokenKind.Discount:
- domains.push(...family.details.expected_domains);
- break;
- default:
- assertUnreachable(family.details);
- }
-
- for (const domain in domains) {
- if (domain !== "*" && !regex.test(domain)) {
- return false;
- }
- }
- }
- }
-
+ // We don't do any well-formedness checks beyond validating
+ // the JSON schema at the moment.
return true;
}
@@ -339,5 +314,4 @@ export namespace ContractTermsUtil {
}
return undefined;
}
-
}