From 9d902ed30824f5f1bcf399e7b3a4f7b0c3726213 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Tue, 9 Apr 2024 12:35:20 -0300 Subject: fix listing orders --- packages/taler-util/src/http-client/merchant.ts | 175 +++++++++++++++++------- 1 file changed, 125 insertions(+), 50 deletions(-) (limited to 'packages/taler-util/src') diff --git a/packages/taler-util/src/http-client/merchant.ts b/packages/taler-util/src/http-client/merchant.ts index 23d7c76df..c2dcbad0f 100644 --- a/packages/taler-util/src/http-client/merchant.ts +++ b/packages/taler-util/src/http-client/merchant.ts @@ -178,7 +178,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForClaimResponse()); } case HttpStatusCode.Conflict: @@ -203,7 +205,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForPaymentResponse()); } case HttpStatusCode.BadRequest: @@ -306,7 +310,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForPaidRefundStatusResponse()); } case HttpStatusCode.BadRequest: @@ -336,7 +342,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForAbortResponse()); } case HttpStatusCode.BadRequest: @@ -366,7 +374,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForWalletRefundResponse()); } case HttpStatusCode.BadRequest: @@ -437,7 +447,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_CURRENT_INSTANCE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_CURRENT_INSTANCE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -486,8 +498,8 @@ export class TalerMerchantInstanceHttpClient { ) { const url = new URL(`private`, this.baseUrl); - if (params.purge) { - url.searchParams.set("purge", "YES"); + if (params.purge !== undefined) { + url.searchParams.set("purge", params.purge ? "YES" : "NO"); } const headers: Record = {}; @@ -501,7 +513,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_CURRENT_INSTANCE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_CURRENT_INSTANCE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: @@ -592,7 +606,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_BANK_ACCOUNT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_BANK_ACCOUNT, + ); return opSuccessFromHttp(resp, codecForAccountAddResponse()); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -627,7 +643,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_BANK_ACCOUNT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_BANK_ACCOUNT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -715,7 +733,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_BANK_ACCOUNT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_BANK_ACCOUNT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -752,7 +772,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_PRODUCT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_PRODUCT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -788,7 +810,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_PRODUCT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_PRODUCT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -883,7 +907,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_PRODUCT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_PRODUCT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -914,7 +940,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_PRODUCT); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_PRODUCT, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -993,11 +1021,11 @@ export class TalerMerchantInstanceHttpClient { if (params.fulfillmentUrl) { url.searchParams.set("fulfillment_url", params.fulfillmentUrl); } - if (params.paid) { - url.searchParams.set("paid", "YES"); + if (params.paid !== undefined) { + url.searchParams.set("paid", params.paid ? "YES" : "NO"); } - if (params.refunded) { - url.searchParams.set("refunded", "YES"); + if (params.refunded !== undefined) { + url.searchParams.set("refunded", params.refunded ? "YES" : "NO"); } if (params.sessionId) { url.searchParams.set("session_id", params.sessionId); @@ -1005,8 +1033,8 @@ export class TalerMerchantInstanceHttpClient { if (params.timeout) { url.searchParams.set("timeout", String(params.timeout)); } - if (params.wired) { - url.searchParams.set("wired", "YES"); + if (params.wired !== undefined) { + url.searchParams.set("wired", params.wired ? "YES" : "NO"); } addMerchantPaginationParams(url, params); @@ -1041,8 +1069,11 @@ export class TalerMerchantInstanceHttpClient { ) { const url = new URL(`private/orders/${orderId}`, this.baseUrl); - if (params.allowRefundedForRepurchase) { - url.searchParams.set("allow_refunded_for_repurchase", "YES"); + if (params.allowRefundedForRepurchase !== undefined) { + url.searchParams.set( + "allow_refunded_for_repurchase", + params.allowRefundedForRepurchase ? "YES" : "NO", + ); } if (params.sessionId) { url.searchParams.set("session_id", params.sessionId); @@ -1105,7 +1136,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opEmptySuccess(resp); } case HttpStatusCode.NoContent: @@ -1140,7 +1173,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_ORDER, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1180,7 +1215,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_ORDER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_ORDER, + ); return opSuccessFromHttp(resp, codecForMerchantRefundResponse()); } case HttpStatusCode.Forbidden: @@ -1223,7 +1260,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_TRANSFER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_TRANSFER, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1255,8 +1294,8 @@ export class TalerMerchantInstanceHttpClient { if (params.paytoURI) { url.searchParams.set("payto_uri", params.paytoURI); } - if (params.verified) { - url.searchParams.set("verified", "YES"); + if (params.verified !== undefined) { + url.searchParams.set("verified", params.verified ? "YES" : "NO"); } addMerchantPaginationParams(url, params); @@ -1298,7 +1337,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_TRANSFER); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_TRANSFER, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1337,7 +1378,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_DEVICE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_DEVICE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1370,7 +1413,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_DEVICE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_DEVICE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1466,7 +1511,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_DEVICE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_DEVICE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1502,7 +1549,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_TEMPLATE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_TEMPLATE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1535,7 +1584,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_TEMPLATE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_TEMPLATE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1620,7 +1671,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_TEMPLATE); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_TEMPLATE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1693,7 +1746,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_WEBHOOK); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_WEBHOOK, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1727,7 +1782,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_WEBHOOK); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_WEBHOOK, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1813,7 +1870,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_WEBHOOK); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_WEBHOOK, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1850,7 +1909,9 @@ export class TalerMerchantInstanceHttpClient { switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.CREATE_TOKENFAMILY); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.CREATE_TOKENFAMILY, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1883,7 +1944,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.Ok: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.UPDATE_TOKENFAMILY); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.UPDATE_TOKENFAMILY, + ); return opSuccessFromHttp(resp, codecForTokenFamilyDetails()); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -1971,7 +2034,9 @@ export class TalerMerchantInstanceHttpClient { }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheEvictor.notifySuccess(TalerMerchantInstanceCacheEviction.DELETE_TOKENFAMILY); + this.cacheEvictor.notifySuccess( + TalerMerchantInstanceCacheEviction.DELETE_TOKENFAMILY, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -2002,12 +2067,16 @@ export type TalerMerchantManagementErrorsByMethod< > = FailCasesByMethod; export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttpClient { - readonly cacheManagementEvictor: CacheEvictor; + readonly cacheManagementEvictor: CacheEvictor< + TalerMerchantInstanceCacheEviction | TalerMerchantManagementCacheEviction + >; constructor( readonly baseUrl: string, httpClient?: HttpRequestLibrary, // cacheManagementEvictor?: CacheEvictor, - cacheEvictor?: CacheEvictor, + cacheEvictor?: CacheEvictor< + TalerMerchantInstanceCacheEviction | TalerMerchantManagementCacheEviction + >, ) { super(baseUrl, httpClient, cacheEvictor); this.cacheManagementEvictor = cacheEvictor ?? nullEvictor; @@ -2042,7 +2111,9 @@ export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttp switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheManagementEvictor.notifySuccess(TalerMerchantManagementCacheEviction.CREATE_INSTANCE); + this.cacheManagementEvictor.notifySuccess( + TalerMerchantManagementCacheEviction.CREATE_INSTANCE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -2110,7 +2181,9 @@ export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttp }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheManagementEvictor.notifySuccess(TalerMerchantManagementCacheEviction.UPDATE_INSTANCE); + this.cacheManagementEvictor.notifySuccess( + TalerMerchantManagementCacheEviction.UPDATE_INSTANCE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs @@ -2188,8 +2261,8 @@ export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttp ) { const url = new URL(`management/instances/${instanceId}`, this.baseUrl); - if (params.purge) { - url.searchParams.set("purge", "YES"); + if (params.purge !== undefined) { + url.searchParams.set("purge", params.purge ? "YES" : "NO"); } const headers: Record = {}; @@ -2202,7 +2275,9 @@ export class TalerMerchantManagementHttpClient extends TalerMerchantInstanceHttp }); switch (resp.status) { case HttpStatusCode.NoContent: { - this.cacheManagementEvictor.notifySuccess(TalerMerchantManagementCacheEviction.DELETE_INSTANCE); + this.cacheManagementEvictor.notifySuccess( + TalerMerchantManagementCacheEviction.DELETE_INSTANCE, + ); return opEmptySuccess(resp); } case HttpStatusCode.Unauthorized: // FIXME: missing in docs -- cgit v1.2.3