@unchainedshop/core-payment 3.1.13 → 4.0.0-rc.3

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.
@@ -4,10 +4,10 @@ export declare enum PaymentProviderType {
4
4
  INVOICE = "INVOICE",
5
5
  GENERIC = "GENERIC"
6
6
  }
7
- export type PaymentConfiguration = Array<{
7
+ export type PaymentConfiguration = {
8
8
  key: string;
9
9
  value: string | null;
10
- }>;
10
+ }[];
11
11
  export type PaymentProvider = {
12
12
  _id?: string;
13
13
  type: PaymentProviderType;
@@ -1 +1 @@
1
- {"version":3,"file":"PaymentProvidersCollection.d.ts","sourceRoot":"","sources":["../../src/db/PaymentProvidersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAElF,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,oBAAoB,GAAG,KAAK,CAAC;IACvC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,mBAAmB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,oBAAoB,CAAC;CACrC,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,0BAA0B,GAAU,IAAI,OAAO,CAAC,EAAE,iDAkB9D,CAAC"}
1
+ {"version":3,"file":"PaymentProvidersCollection.d.ts","sourceRoot":"","sources":["../../src/db/PaymentProvidersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAElF,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAED,MAAM,MAAM,oBAAoB,GAAG;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,EAAE,CAAC;AAEJ,MAAM,MAAM,eAAe,GAAG;IAC5B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,mBAAmB,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,oBAAoB,CAAC;CACrC,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,0BAA0B,GAAU,IAAI,OAAO,CAAC,EAAE,iDAkB9D,CAAC"}
@@ -14,10 +14,8 @@ export declare const configurePaymentCredentialsModule: (PaymentCredentials: mon
14
14
  userId?: string;
15
15
  paymentProviderId?: string;
16
16
  }, options?: mongodb.FindOptions) => Promise<PaymentCredentialsType>;
17
- findPaymentCredentials: (query: mongodb.Filter<PaymentCredentialsType>, options?: mongodb.FindOptions) => Promise<Array<PaymentCredentialsType>>;
18
- upsertCredentials: ({ userId, paymentProviderId, _id, token, ...meta }: Pick<PaymentCredentialsType, "userId" | "paymentProviderId" | "_id" | "token"> & {
19
- [x: string]: any;
20
- }) => Promise<string>;
17
+ findPaymentCredentials: (query: mongodb.Filter<PaymentCredentialsType>, options?: mongodb.FindOptions) => Promise<PaymentCredentialsType[]>;
18
+ upsertCredentials: ({ userId, paymentProviderId, _id, token, ...meta }: Pick<PaymentCredentialsType, "userId" | "paymentProviderId" | "_id" | "token"> & Record<string, any>) => Promise<string>;
21
19
  removeCredentials: (paymentCredentialsId: string) => Promise<PaymentCredentialsType>;
22
20
  deleteUserPaymentCredentials: (userId: string) => Promise<number>;
23
21
  };
@@ -1 +1 @@
1
- {"version":3,"file":"configurePaymentCredentialsModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentCredentialsModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4C,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAErG,eAAO,MAAM,iCAAiC,GAC5C,oBAAoB,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC;uDAK3D;QACD,MAAM,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,MAAM,CAAC;KAC9B,KAAG,OAAO,CAAC,IAAI,CAAC;iBA0BI,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;mDAMxE;QACD,oBAAoB,EAAE,MAAM,CAAC;KAC9B,KAAG,OAAO,CAAC,OAAO,CAAC;kFAaf;QACD,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,YACS,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,sBAAsB,CAAC;oCAUzB,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,YACnC,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;4EAWtC,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,mBAAmB,GAAG,KAAK,GAAG,OAAO,CAAC,GAAG;QAClF,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;KAClB,KAAG,OAAO,CAAC,MAAM,CAAC;8CAsC6B,MAAM,KAAG,OAAO,CAAC,sBAAsB,CAAC;2CAK3C,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;CAKxE,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
1
+ {"version":3,"file":"configurePaymentCredentialsModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentCredentialsModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4C,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,IAAI,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAErG,eAAO,MAAM,iCAAiC,GAC5C,oBAAoB,OAAO,CAAC,UAAU,CAAC,sBAAsB,CAAC;uDAK3D;QACD,MAAM,EAAE,MAAM,CAAC;QACf,oBAAoB,EAAE,MAAM,CAAC;KAC9B,KAAG,OAAO,CAAC,IAAI,CAAC;iBA0BI,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;mDAMxE;QACD,oBAAoB,EAAE,MAAM,CAAC;KAC9B,KAAG,OAAO,CAAC,OAAO,CAAC;kFAaf;QACD,oBAAoB,CAAC,EAAE,MAAM,CAAC;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;KAC5B,YACS,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,sBAAsB,CAAC;oCAUzB,OAAO,CAAC,MAAM,CAAC,sBAAsB,CAAC,YACnC,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,sBAAsB,EAAE,CAAC;4EAWjC,IAAI,CAAC,sBAAsB,EAAE,QAAQ,GAAG,mBAAmB,GAAG,KAAK,GAAG,OAAO,CAAC,GAC/E,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;8CAsCS,MAAM,KAAG,OAAO,CAAC,sBAAsB,CAAC;2CAK3C,MAAM,KAAG,OAAO,CAAC,MAAM,CAAC;CAKxE,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,iCAAiC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"configurePaymentCredentialsModule.js","sourceRoot":"","sources":["../../src/module/configurePaymentCredentialsModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurePaymentCredentialsModule.js","sourceRoot":"","sources":["../../src/module/configurePaymentCredentialsModule.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,8 @@ export declare const configurePaymentModule: ({ db, options: paymentOptions, }:
6
6
  findProvider: ({ paymentProviderId, ...query }: import("mongodb").Filter<import("../db/PaymentProvidersCollection.js").PaymentProvider> & {
7
7
  paymentProviderId: string;
8
8
  }, options?: import("mongodb").FindOptions) => Promise<import("../db/PaymentProvidersCollection.js").PaymentProvider>;
9
- findProviders: (query: import("mongodb").Filter<import("../db/PaymentProvidersCollection.js").PaymentProvider>, options?: import("mongodb").FindOptions) => Promise<Array<import("../db/PaymentProvidersCollection.js").PaymentProvider>>;
9
+ findProviders: (query: import("mongodb").Filter<import("../db/PaymentProvidersCollection.js").PaymentProvider>, options?: import("mongodb").FindOptions) => Promise<import("../db/PaymentProvidersCollection.js").PaymentProvider[]>;
10
+ allProviders: () => Promise<import("mongodb").WithId<import("../db/PaymentProvidersCollection.js").PaymentProvider>[]>;
10
11
  providerExists: ({ paymentProviderId }: {
11
12
  paymentProviderId: string;
12
13
  }) => Promise<boolean>;
@@ -28,10 +29,8 @@ export declare const configurePaymentModule: ({ db, options: paymentOptions, }:
28
29
  userId?: string;
29
30
  paymentProviderId?: string;
30
31
  }, options?: import("mongodb").FindOptions) => Promise<import("../db/PaymentCredentialsCollection.js").PaymentCredentials>;
31
- findPaymentCredentials: (query: import("mongodb").Filter<import("../db/PaymentCredentialsCollection.js").PaymentCredentials>, options?: import("mongodb").FindOptions) => Promise<Array<import("../db/PaymentCredentialsCollection.js").PaymentCredentials>>;
32
- upsertCredentials: ({ userId, paymentProviderId, _id, token, ...meta }: Pick<import("../db/PaymentCredentialsCollection.js").PaymentCredentials, "userId" | "paymentProviderId" | "_id" | "token"> & {
33
- [x: string]: any;
34
- }) => Promise<string>;
32
+ findPaymentCredentials: (query: import("mongodb").Filter<import("../db/PaymentCredentialsCollection.js").PaymentCredentials>, options?: import("mongodb").FindOptions) => Promise<import("../db/PaymentCredentialsCollection.js").PaymentCredentials[]>;
33
+ upsertCredentials: ({ userId, paymentProviderId, _id, token, ...meta }: Pick<import("../db/PaymentCredentialsCollection.js").PaymentCredentials, "userId" | "paymentProviderId" | "_id" | "token"> & Record<string, any>) => Promise<string>;
35
34
  removeCredentials: (paymentCredentialsId: string) => Promise<import("../db/PaymentCredentialsCollection.js").PaymentCredentials>;
36
35
  deleteUserPaymentCredentials: (userId: string) => Promise<number>;
37
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"configurePaymentModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentModule.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,eAAO,MAAM,sBAAsB,GAAU,kCAG1C,WAAW,CAAC,sBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;gCAgBuZ,CAAC;kBAAwB,CAAC;6BAAmC,CAAC;;;;;;;;;EAH1f,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"configurePaymentModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentModule.ts"],"names":[],"mappings":"AAIA,OAAO,EAAmB,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAErD,eAAO,MAAM,sBAAsB,GAAU,kCAG1C,WAAW,CAAC,sBAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;gCAgBuZ,CAAC;kBAAwB,CAAC;6BAAmC,CAAC;;;;;;;EAH1f,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,sBAAsB,CAAC,CAAC,CAAC"}
@@ -5,16 +5,33 @@ export interface PaymentInterface {
5
5
  label: string;
6
6
  version: string;
7
7
  }
8
- export declare const buildFindSelector: ({ type }?: mongodb.Filter<PaymentProvider>) => {
8
+ export declare const buildFindSelector: (query?: mongodb.Filter<PaymentProvider>) => {
9
9
  deleted: any;
10
10
  type?: mongodb.Condition<import("../db/PaymentProvidersCollection.js").PaymentProviderType>;
11
+ created?: mongodb.Condition<Date>;
12
+ updated?: mongodb.Condition<Date>;
13
+ adapterKey?: mongodb.Condition<string>;
14
+ configuration?: mongodb.Condition<import("../db/PaymentProvidersCollection.js").PaymentConfiguration>;
15
+ _id?: mongodb.Condition<string>;
16
+ $and?: mongodb.Filter<mongodb.WithId<PaymentProvider>>[];
17
+ $nor?: mongodb.Filter<mongodb.WithId<PaymentProvider>>[];
18
+ $or?: mongodb.Filter<mongodb.WithId<PaymentProvider>>[];
19
+ $text?: {
20
+ $search: string;
21
+ $language?: string;
22
+ $caseSensitive?: boolean;
23
+ $diacriticSensitive?: boolean;
24
+ };
25
+ $where?: string | ((this: mongodb.WithId<PaymentProvider>) => boolean);
26
+ $comment?: string | mongodb.BSON.Document;
11
27
  };
12
28
  export declare const configurePaymentProvidersModule: (PaymentProviders: mongodb.Collection<PaymentProvider>) => {
13
29
  count: (query: mongodb.Filter<PaymentProvider>) => Promise<number>;
14
30
  findProvider: ({ paymentProviderId, ...query }: mongodb.Filter<PaymentProvider> & {
15
31
  paymentProviderId: string;
16
32
  }, options?: mongodb.FindOptions) => Promise<PaymentProvider>;
17
- findProviders: (query: mongodb.Filter<PaymentProvider>, options?: mongodb.FindOptions) => Promise<Array<PaymentProvider>>;
33
+ findProviders: (query: mongodb.Filter<PaymentProvider>, options?: mongodb.FindOptions) => Promise<PaymentProvider[]>;
34
+ allProviders: () => Promise<mongodb.WithId<PaymentProvider>[]>;
18
35
  providerExists: ({ paymentProviderId }: {
19
36
  paymentProviderId: string;
20
37
  }) => Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"configurePaymentProvidersModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentProvidersModule.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAEtE,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAQD,eAAO,MAAM,iBAAiB,GAAI,WAAU,OAAO,CAAC,MAAM,CAAC,eAAe,CAAM;;;CAE/E,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAC1C,kBAAkB,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;mBAM9B,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;oDASjE,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG;QACnC,iBAAiB,EAAE,MAAM,CAAC;KAC3B,YACS,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,eAAe,CAAC;2BAQlB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,YAC7B,OAAO,CAAC,WAAW,KAC3B,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;4CAKY;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,KAAG,OAAO,CAAC,OAAO,CAAC;kBAS1E,eAAe,KAAG,OAAO,CAAC,eAAe,CAAC;kBAe1C,MAAM,OAAO,eAAe,KAAG,OAAO,CAAC,eAAe,CAAC;kBAevD,MAAM,KAAG,OAAO,CAAC,eAAe,CAAC;CAcxD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
1
+ {"version":3,"file":"configurePaymentProvidersModule.d.ts","sourceRoot":"","sources":["../../src/module/configurePaymentProvidersModule.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AAItE,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAUD,eAAO,MAAM,iBAAiB,GAAI,QAAO,OAAO,CAAC,MAAM,CAAC,eAAe,CAAM;;;;;;;;;;;;;iBA2Gu2vS,CAAC;sBAAgC,CAAC;2BAAsC,CAAC;;;;CAzG5/vS,CAAC;AAEF,eAAO,MAAM,+BAA+B,GAC1C,kBAAkB,OAAO,CAAC,UAAU,CAAC,eAAe,CAAC;mBAM9B,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,KAAG,OAAO,CAAC,MAAM,CAAC;oDASjE,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG;QACnC,iBAAiB,EAAE,MAAM,CAAC;KAC3B,YACS,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,eAAe,CAAC;2BAQlB,OAAO,CAAC,MAAM,CAAC,eAAe,CAAC,YAC7B,OAAO,CAAC,WAAW,KAC3B,OAAO,CAAC,eAAe,EAAE,CAAC;;4CAciB;QAAE,iBAAiB,EAAE,MAAM,CAAA;KAAE,KAAG,OAAO,CAAC,OAAO,CAAC;kBAS1E,eAAe,KAAG,OAAO,CAAC,eAAe,CAAC;kBAgB1C,MAAM,OAAO,eAAe,KAAG,OAAO,CAAC,eAAe,CAAC;kBAgBvD,MAAM,KAAG,OAAO,CAAC,eAAe,CAAC;CAexD,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
@@ -1,12 +1,15 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
2
  import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
3
+ import pMemoize from 'p-memoize';
4
+ import ExpiryMap from 'expiry-map';
3
5
  const PAYMENT_PROVIDER_EVENTS = [
4
6
  'PAYMENT_PROVIDER_CREATE',
5
7
  'PAYMENT_PROVIDER_UPDATE',
6
8
  'PAYMENT_PROVIDER_REMOVE',
7
9
  ];
8
- export const buildFindSelector = ({ type } = {}) => {
9
- return { ...(type ? { type } : {}), deleted: null };
10
+ const allProvidersCache = new ExpiryMap(process.env.NODE_ENV === 'production' ? 60000 : 1);
11
+ export const buildFindSelector = (query = {}) => {
12
+ return { ...query, deleted: null };
10
13
  };
11
14
  export const configurePaymentProvidersModule = (PaymentProviders) => {
12
15
  registerEvents(PAYMENT_PROVIDER_EVENTS);
@@ -23,6 +26,11 @@ export const configurePaymentProvidersModule = (PaymentProviders) => {
23
26
  const providers = PaymentProviders.find(buildFindSelector(query), options);
24
27
  return providers.toArray();
25
28
  },
29
+ allProviders: pMemoize(async function () {
30
+ return PaymentProviders.find({ deleted: null }, { sort: { created: 1 } }).toArray();
31
+ }, {
32
+ cache: allProvidersCache,
33
+ }),
26
34
  providerExists: async ({ paymentProviderId }) => {
27
35
  const providerCount = await PaymentProviders.countDocuments(generateDbFilterById(paymentProviderId, { deleted: null }), { limit: 1 });
28
36
  return !!providerCount;
@@ -35,6 +43,7 @@ export const configurePaymentProvidersModule = (PaymentProviders) => {
35
43
  ...doc,
36
44
  });
37
45
  const paymentProvider = await PaymentProviders.findOne(generateDbFilterById(paymentProviderId), {});
46
+ allProvidersCache.clear();
38
47
  await emit('PAYMENT_PROVIDER_CREATE', { paymentProvider });
39
48
  return paymentProvider;
40
49
  },
@@ -45,6 +54,7 @@ export const configurePaymentProvidersModule = (PaymentProviders) => {
45
54
  ...doc,
46
55
  },
47
56
  }, { returnDocument: 'after' });
57
+ allProvidersCache.clear();
48
58
  await emit('PAYMENT_PROVIDER_UPDATE', { paymentProvider });
49
59
  return paymentProvider;
50
60
  },
@@ -54,6 +64,7 @@ export const configurePaymentProvidersModule = (PaymentProviders) => {
54
64
  deleted: new Date(),
55
65
  },
56
66
  }, { returnDocument: 'after' });
67
+ allProvidersCache.clear();
57
68
  await emit('PAYMENT_PROVIDER_REMOVE', { paymentProvider });
58
69
  return paymentProvider;
59
70
  },
@@ -1 +1 @@
1
- {"version":3,"file":"configurePaymentProvidersModule.js","sourceRoot":"","sources":["../../src/module/configurePaymentProvidersModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurePaymentProvidersModule.js","sourceRoot":"","sources":["../../src/module/configurePaymentProvidersModule.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  import { PaymentCredentials } from './db/PaymentCredentialsCollection.js';
2
2
  import { PaymentProvider } from './db/PaymentProvidersCollection.js';
3
3
  export type FilterProviders<Order = unknown, UnchainedAPI = unknown> = (params: {
4
- providers: Array<PaymentProvider>;
4
+ providers: PaymentProvider[];
5
5
  order: Order;
6
- }, unchainedAPI: UnchainedAPI) => Promise<Array<PaymentProvider>>;
6
+ }, unchainedAPI: UnchainedAPI) => Promise<PaymentProvider[]>;
7
7
  export type DetermineDefaultProvider<Order = unknown, UnchainedAPI = unknown> = (params: {
8
- providers: Array<PaymentProvider>;
8
+ providers: PaymentProvider[];
9
9
  order: Order;
10
- paymentCredentials?: Array<PaymentCredentials>;
10
+ paymentCredentials?: PaymentCredentials[];
11
11
  }, unchainedAPI: UnchainedAPI) => Promise<PaymentProvider>;
12
12
  export interface PaymentSettingsOptions {
13
13
  sortProviders?: (a: PaymentProvider, b: PaymentProvider) => number;
@@ -1 +1 @@
1
- {"version":3,"file":"payment-settings.d.ts","sourceRoot":"","sources":["../src/payment-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO,IAAI,CACrE,MAAM,EAAE;IACN,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,KAAK,EAAE,KAAK,CAAC;CACd,EACD,YAAY,EAAE,YAAY,KACvB,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;AAErC,MAAM,MAAM,wBAAwB,CAAC,KAAK,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO,IAAI,CAC9E,MAAM,EAAE;IACN,SAAS,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;IAClC,KAAK,EAAE,KAAK,CAAC;IACb,kBAAkB,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,CAAC;CAChD,EACD,YAAY,EAAE,YAAY,KACvB,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9B,MAAM,WAAW,sBAAsB;IACrC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,KAAK,MAAM,CAAC;IACnE,wBAAwB,CAAC,EAAE,eAAe,CAAC;IAC3C,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;CACrD;AAED,MAAM,WAAW,eAAe;IAC9B,wBAAwB,EAAE,eAAe,CAAC;IAC1C,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC/D;AAoBD,eAAO,MAAM,eAAe,EAAE,eAW7B,CAAC"}
1
+ {"version":3,"file":"payment-settings.d.ts","sourceRoot":"","sources":["../src/payment-settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE,MAAM,MAAM,eAAe,CAAC,KAAK,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO,IAAI,CACrE,MAAM,EAAE;IACN,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC;CACd,EACD,YAAY,EAAE,YAAY,KACvB,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;AAEhC,MAAM,MAAM,wBAAwB,CAAC,KAAK,GAAG,OAAO,EAAE,YAAY,GAAG,OAAO,IAAI,CAC9E,MAAM,EAAE;IACN,SAAS,EAAE,eAAe,EAAE,CAAC;IAC7B,KAAK,EAAE,KAAK,CAAC;IACb,kBAAkB,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC3C,EACD,YAAY,EAAE,YAAY,KACvB,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9B,MAAM,WAAW,sBAAsB;IACrC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,EAAE,eAAe,KAAK,MAAM,CAAC;IACnE,wBAAwB,CAAC,EAAE,eAAe,CAAC;IAC3C,wBAAwB,CAAC,EAAE,wBAAwB,CAAC;CACrD;AAED,MAAM,WAAW,eAAe;IAC9B,wBAAwB,EAAE,eAAe,CAAC;IAC1C,wBAAwB,EAAE,wBAAwB,CAAC;IACnD,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,sBAAsB,KAAK,IAAI,CAAC;CAC/D;AAoBD,eAAO,MAAM,eAAe,EAAE,eAW7B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@unchainedshop/core-payment",
3
- "version": "3.1.13",
3
+ "version": "4.0.0-rc.3",
4
4
  "main": "lib/payment-index.js",
5
5
  "types": "lib/payment-index.d.ts",
6
6
  "type": "module",
@@ -31,9 +31,11 @@
31
31
  },
32
32
  "homepage": "https://github.com/unchainedshop/unchained#readme",
33
33
  "dependencies": {
34
- "@unchainedshop/events": "^3.1.13",
35
- "@unchainedshop/logger": "^3.1.13",
36
- "@unchainedshop/utils": "^3.1.13"
34
+ "@unchainedshop/events": "^4.0.0-rc.3",
35
+ "@unchainedshop/logger": "^4.0.0-rc.3",
36
+ "@unchainedshop/utils": "^4.0.0-rc.3",
37
+ "expiry-map": "^2.0.0",
38
+ "p-memoize": "^7.1.1"
37
39
  },
38
40
  "devDependencies": {
39
41
  "@types/node": "^24.0.4",
@@ -6,10 +6,10 @@ export enum PaymentProviderType {
6
6
  GENERIC = 'GENERIC',
7
7
  }
8
8
 
9
- export type PaymentConfiguration = Array<{
9
+ export type PaymentConfiguration = {
10
10
  key: string;
11
11
  value: string | null;
12
- }>;
12
+ }[];
13
13
 
14
14
  export type PaymentProvider = {
15
15
  _id?: string;
@@ -75,7 +75,7 @@ export const configurePaymentCredentialsModule = (
75
75
  findPaymentCredentials: async (
76
76
  query: mongodb.Filter<PaymentCredentialsType>,
77
77
  options?: mongodb.FindOptions,
78
- ): Promise<Array<PaymentCredentialsType>> => {
78
+ ): Promise<PaymentCredentialsType[]> => {
79
79
  const credentials = await PaymentCredentials.find(query, options).toArray();
80
80
  return credentials;
81
81
  },
@@ -86,9 +86,8 @@ export const configurePaymentCredentialsModule = (
86
86
  _id,
87
87
  token,
88
88
  ...meta
89
- }: Pick<PaymentCredentialsType, 'userId' | 'paymentProviderId' | '_id' | 'token'> & {
90
- [x: string]: any;
91
- }): Promise<string> => {
89
+ }: Pick<PaymentCredentialsType, 'userId' | 'paymentProviderId' | '_id' | 'token'> &
90
+ Record<string, any>): Promise<string> => {
92
91
  const insertedId = _id || generateDbObjectId();
93
92
  const result = await PaymentCredentials.updateOne(
94
93
  _id
@@ -1,6 +1,8 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
2
  import { generateDbFilterById, generateDbObjectId, mongodb } from '@unchainedshop/mongodb';
3
3
  import { PaymentProvider } from '../db/PaymentProvidersCollection.js';
4
+ import pMemoize from 'p-memoize';
5
+ import ExpiryMap from 'expiry-map';
4
6
 
5
7
  export interface PaymentInterface {
6
8
  _id: string;
@@ -14,8 +16,10 @@ const PAYMENT_PROVIDER_EVENTS: string[] = [
14
16
  'PAYMENT_PROVIDER_REMOVE',
15
17
  ];
16
18
 
17
- export const buildFindSelector = ({ type }: mongodb.Filter<PaymentProvider> = {}) => {
18
- return { ...(type ? { type } : {}), deleted: null };
19
+ const allProvidersCache = new ExpiryMap(process.env.NODE_ENV === 'production' ? 60000 : 1);
20
+
21
+ export const buildFindSelector = (query: mongodb.Filter<PaymentProvider> = {}) => {
22
+ return { ...query, deleted: null };
19
23
  };
20
24
 
21
25
  export const configurePaymentProvidersModule = (
@@ -48,11 +52,20 @@ export const configurePaymentProvidersModule = (
48
52
  findProviders: async (
49
53
  query: mongodb.Filter<PaymentProvider>,
50
54
  options: mongodb.FindOptions = { sort: { created: 1 } },
51
- ): Promise<Array<PaymentProvider>> => {
55
+ ): Promise<PaymentProvider[]> => {
52
56
  const providers = PaymentProviders.find(buildFindSelector(query), options);
53
57
  return providers.toArray();
54
58
  },
55
59
 
60
+ allProviders: pMemoize(
61
+ async function () {
62
+ return PaymentProviders.find({ deleted: null }, { sort: { created: 1 } }).toArray();
63
+ },
64
+ {
65
+ cache: allProvidersCache,
66
+ },
67
+ ),
68
+
56
69
  providerExists: async ({ paymentProviderId }: { paymentProviderId: string }): Promise<boolean> => {
57
70
  const providerCount = await PaymentProviders.countDocuments(
58
71
  generateDbFilterById(paymentProviderId, { deleted: null }),
@@ -73,6 +86,7 @@ export const configurePaymentProvidersModule = (
73
86
  generateDbFilterById(paymentProviderId),
74
87
  {},
75
88
  );
89
+ allProvidersCache.clear();
76
90
  await emit('PAYMENT_PROVIDER_CREATE', { paymentProvider });
77
91
  return paymentProvider;
78
92
  },
@@ -88,6 +102,7 @@ export const configurePaymentProvidersModule = (
88
102
  },
89
103
  { returnDocument: 'after' },
90
104
  );
105
+ allProvidersCache.clear();
91
106
  await emit('PAYMENT_PROVIDER_UPDATE', { paymentProvider });
92
107
  return paymentProvider;
93
108
  },
@@ -102,6 +117,7 @@ export const configurePaymentProvidersModule = (
102
117
  },
103
118
  { returnDocument: 'after' },
104
119
  );
120
+ allProvidersCache.clear();
105
121
  await emit('PAYMENT_PROVIDER_REMOVE', { paymentProvider });
106
122
  return paymentProvider;
107
123
  },
@@ -3,17 +3,17 @@ import { PaymentProvider } from './db/PaymentProvidersCollection.js';
3
3
 
4
4
  export type FilterProviders<Order = unknown, UnchainedAPI = unknown> = (
5
5
  params: {
6
- providers: Array<PaymentProvider>;
6
+ providers: PaymentProvider[];
7
7
  order: Order;
8
8
  },
9
9
  unchainedAPI: UnchainedAPI,
10
- ) => Promise<Array<PaymentProvider>>;
10
+ ) => Promise<PaymentProvider[]>;
11
11
 
12
12
  export type DetermineDefaultProvider<Order = unknown, UnchainedAPI = unknown> = (
13
13
  params: {
14
- providers: Array<PaymentProvider>;
14
+ providers: PaymentProvider[];
15
15
  order: Order;
16
- paymentCredentials?: Array<PaymentCredentials>;
16
+ paymentCredentials?: PaymentCredentials[];
17
17
  },
18
18
  unchainedAPI: UnchainedAPI,
19
19
  ) => Promise<PaymentProvider>;