@unchainedshop/core-payment 3.0.0-alpha7 → 3.0.0-rc10

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.
Files changed (78) hide show
  1. package/lib/db/PaymentCredentialsCollection.d.ts +10 -3
  2. package/lib/db/PaymentCredentialsCollection.d.ts.map +1 -1
  3. package/lib/db/PaymentCredentialsCollection.js +3 -3
  4. package/lib/db/PaymentCredentialsCollection.js.map +1 -1
  5. package/lib/db/PaymentProvidersCollection.d.ts +16 -2
  6. package/lib/db/PaymentProvidersCollection.d.ts.map +1 -1
  7. package/lib/db/PaymentProvidersCollection.js +6 -0
  8. package/lib/db/PaymentProvidersCollection.js.map +1 -1
  9. package/lib/module/configurePaymentCredentialsModule.d.ts +11 -12
  10. package/lib/module/configurePaymentCredentialsModule.d.ts.map +1 -1
  11. package/lib/module/configurePaymentCredentialsModule.js +3 -3
  12. package/lib/module/configurePaymentCredentialsModule.js.map +1 -1
  13. package/lib/module/configurePaymentModule.d.ts +35 -10
  14. package/lib/module/configurePaymentModule.d.ts.map +1 -1
  15. package/lib/module/configurePaymentModule.js +2 -18
  16. package/lib/module/configurePaymentModule.js.map +1 -1
  17. package/lib/module/configurePaymentProvidersModule.d.ts +17 -41
  18. package/lib/module/configurePaymentProvidersModule.d.ts.map +1 -1
  19. package/lib/module/configurePaymentProvidersModule.js +0 -101
  20. package/lib/module/configurePaymentProvidersModule.js.map +1 -1
  21. package/lib/payment-index.d.ts +2 -8
  22. package/lib/payment-index.d.ts.map +1 -1
  23. package/lib/payment-index.js +2 -8
  24. package/lib/payment-index.js.map +1 -1
  25. package/lib/payment-settings.d.ts +6 -7
  26. package/lib/payment-settings.d.ts.map +1 -1
  27. package/lib/payment-settings.js +1 -1
  28. package/lib/payment-settings.js.map +1 -1
  29. package/package.json +13 -13
  30. package/src/db/PaymentCredentialsCollection.ts +13 -5
  31. package/src/db/PaymentProvidersCollection.ts +19 -2
  32. package/src/module/configurePaymentCredentialsModule.ts +42 -40
  33. package/src/module/configurePaymentModule.ts +5 -57
  34. package/src/module/configurePaymentProvidersModule.ts +27 -239
  35. package/src/module/payment-index.test.ts +1 -1
  36. package/src/payment-index.ts +2 -10
  37. package/src/payment-settings.ts +7 -8
  38. package/tsconfig.json +5 -7
  39. package/lib/director/PaymentAdapter.d.ts +0 -3
  40. package/lib/director/PaymentAdapter.d.ts.map +0 -1
  41. package/lib/director/PaymentAdapter.js +0 -49
  42. package/lib/director/PaymentAdapter.js.map +0 -1
  43. package/lib/director/PaymentDirector.d.ts +0 -3
  44. package/lib/director/PaymentDirector.d.ts.map +0 -1
  45. package/lib/director/PaymentDirector.js +0 -84
  46. package/lib/director/PaymentDirector.js.map +0 -1
  47. package/lib/director/PaymentError.d.ts +0 -7
  48. package/lib/director/PaymentError.d.ts.map +0 -1
  49. package/lib/director/PaymentError.js +0 -8
  50. package/lib/director/PaymentError.js.map +0 -1
  51. package/lib/director/PaymentPricingAdapter.d.ts +0 -46
  52. package/lib/director/PaymentPricingAdapter.d.ts.map +0 -1
  53. package/lib/director/PaymentPricingAdapter.js +0 -25
  54. package/lib/director/PaymentPricingAdapter.js.map +0 -1
  55. package/lib/director/PaymentPricingDirector.d.ts +0 -19
  56. package/lib/director/PaymentPricingDirector.d.ts.map +0 -1
  57. package/lib/director/PaymentPricingDirector.js +0 -58
  58. package/lib/director/PaymentPricingDirector.js.map +0 -1
  59. package/lib/director/PaymentPricingSheet.d.ts +0 -10
  60. package/lib/director/PaymentPricingSheet.d.ts.map +0 -1
  61. package/lib/director/PaymentPricingSheet.js +0 -75
  62. package/lib/director/PaymentPricingSheet.js.map +0 -1
  63. package/lib/director/PaymentProviderType.d.ts +0 -6
  64. package/lib/director/PaymentProviderType.d.ts.map +0 -1
  65. package/lib/director/PaymentProviderType.js +0 -7
  66. package/lib/director/PaymentProviderType.js.map +0 -1
  67. package/lib/types.d.ts +0 -84
  68. package/lib/types.d.ts.map +0 -1
  69. package/lib/types.js +0 -17
  70. package/lib/types.js.map +0 -1
  71. package/src/director/PaymentAdapter.ts +0 -63
  72. package/src/director/PaymentDirector.ts +0 -99
  73. package/src/director/PaymentError.ts +0 -6
  74. package/src/director/PaymentPricingAdapter.ts +0 -87
  75. package/src/director/PaymentPricingDirector.ts +0 -101
  76. package/src/director/PaymentPricingSheet.ts +0 -87
  77. package/src/director/PaymentProviderType.ts +0 -5
  78. package/src/types.ts +0 -108
@@ -1,22 +1,21 @@
1
- import { Order } from '@unchainedshop/core-orders';
2
- import { PaymentCredentials, PaymentProvider } from './types.js';
3
- import { UnchainedCore } from '@unchainedshop/core';
1
+ import { PaymentCredentials } from './db/PaymentCredentialsCollection.js';
2
+ import { PaymentProvider } from './db/PaymentProvidersCollection.js';
4
3
 
5
- export type FilterProviders = (
4
+ export type FilterProviders<Order = unknown, UnchainedAPI = unknown> = (
6
5
  params: {
7
6
  providers: Array<PaymentProvider>;
8
7
  order: Order;
9
8
  },
10
- context: UnchainedCore,
9
+ unchainedAPI: UnchainedAPI,
11
10
  ) => Promise<Array<PaymentProvider>>;
12
11
 
13
- export type DetermineDefaultProvider = (
12
+ export type DetermineDefaultProvider<Order = unknown, UnchainedAPI = unknown> = (
14
13
  params: {
15
14
  providers: Array<PaymentProvider>;
16
15
  order: Order;
17
16
  paymentCredentials?: Array<PaymentCredentials>;
18
17
  },
19
- context: UnchainedCore,
18
+ unchainedAPI: UnchainedAPI,
20
19
  ) => Promise<PaymentProvider>;
21
20
  export interface PaymentSettingsOptions {
22
21
  sortProviders?: (a: PaymentProvider, b: PaymentProvider) => number;
@@ -35,7 +34,7 @@ const sortByCreationDate = (left: PaymentProvider, right: PaymentProvider) => {
35
34
  };
36
35
 
37
36
  const allProviders: FilterProviders = async ({ providers }) => {
38
- return providers.sort(sortByCreationDate);
37
+ return providers.toSorted(sortByCreationDate);
39
38
  };
40
39
 
41
40
  const firstProviderIsDefault: DetermineDefaultProvider = async ({ providers, paymentCredentials }) => {
package/tsconfig.json CHANGED
@@ -1,11 +1,9 @@
1
1
  {
2
2
  "extends": "../shared/base.tsconfig.json",
3
3
  "compilerOptions": {
4
- "rootDir": "src",
5
- "outDir": "lib",
4
+ "declarationDir": "./lib",
5
+ "rootDir": "./src",
6
+ "outDir": "./lib"
6
7
  },
7
- "exclude": ["**/*.test.ts", "**/*.test.js", "tests"],
8
- "include": [
9
- "./src"
10
- ]
11
- }
8
+ "exclude": ["**/*.test.ts", "**/*.test.js", "tests", "lib"]
9
+ }
@@ -1,3 +0,0 @@
1
- import { IPaymentAdapter } from '@unchainedshop/core-payment';
2
- export declare const PaymentAdapter: Omit<IPaymentAdapter, 'key' | 'label' | 'version'>;
3
- //# sourceMappingURL=PaymentAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentAdapter.d.ts","sourceRoot":"","sources":["../../src/director/PaymentAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAI9D,eAAO,MAAM,cAAc,EAAE,IAAI,CAAC,eAAe,EAAE,KAAK,GAAG,OAAO,GAAG,SAAS,CA0D7E,CAAC"}
@@ -1,49 +0,0 @@
1
- import { log, LogLevel } from '@unchainedshop/logger';
2
- import { PaymentError } from './PaymentError.js';
3
- export const PaymentAdapter = {
4
- initialConfiguration: [],
5
- typeSupported: () => {
6
- return false;
7
- },
8
- actions: () => {
9
- return {
10
- configurationError: () => {
11
- return PaymentError.NOT_IMPLEMENTED;
12
- },
13
- isActive: () => {
14
- return false;
15
- },
16
- isPayLaterAllowed: () => {
17
- return false;
18
- },
19
- charge: async () => {
20
- // if you return true, the status will be changed to PAID
21
- // if you return false, the order payment status stays the
22
- // same but the order status might change
23
- // if you throw an error, you cancel the checkout process
24
- return false;
25
- },
26
- register: async () => {
27
- return {
28
- token: '',
29
- };
30
- },
31
- sign: async () => {
32
- return null;
33
- },
34
- validate: async () => {
35
- return false;
36
- },
37
- cancel: async () => {
38
- return false;
39
- },
40
- confirm: async () => {
41
- return false;
42
- },
43
- };
44
- },
45
- log(message, { level = LogLevel.Debug, ...options } = {}) {
46
- return log(message, { level, ...options });
47
- },
48
- };
49
- //# sourceMappingURL=PaymentAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentAdapter.js","sourceRoot":"","sources":["../../src/director/PaymentAdapter.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,CAAC,MAAM,cAAc,GAAuD;IAChF,oBAAoB,EAAE,EAAE;IAExB,aAAa,EAAE,GAAG,EAAE;QAClB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,EAAE,GAAG,EAAE;QACZ,OAAO;YACL,kBAAkB,EAAE,GAAG,EAAE;gBACvB,OAAO,YAAY,CAAC,eAAe,CAAC;YACtC,CAAC;YAED,QAAQ,EAAE,GAAG,EAAE;gBACb,OAAO,KAAK,CAAC;YACf,CAAC;YAED,iBAAiB,EAAE,GAAG,EAAE;gBACtB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,yDAAyD;gBAEzD,0DAA0D;gBAC1D,yCAAyC;gBAEzC,yDAAyD;gBACzD,OAAO,KAAK,CAAC;YACf,CAAC;YAED,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACnB,OAAO;oBACL,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,CAAC;YAED,IAAI,EAAE,KAAK,IAAI,EAAE;gBACf,OAAO,IAAI,CAAC;YACd,CAAC;YAED,QAAQ,EAAE,KAAK,IAAI,EAAE;gBACnB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,EAAE,KAAK,IAAI,EAAE;gBACjB,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,EAAE,KAAK,IAAI,EAAE;gBAClB,OAAO,KAAK,CAAC;YACf,CAAC;SACF,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,OAAe,EAAE,EAAE,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE;QAC9D,OAAO,GAAG,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,GAAG,OAAO,EAAE,CAAC,CAAC;IAC7C,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import { IPaymentDirector } from '@unchainedshop/core-payment';
2
- export declare const PaymentDirector: IPaymentDirector;
3
- //# sourceMappingURL=PaymentDirector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentDirector.d.ts","sourceRoot":"","sources":["../../src/director/PaymentDirector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,gBAAgB,EAAkB,MAAM,6BAA6B,CAAC;AAQhG,eAAO,MAAM,eAAe,EAAE,gBA0F7B,CAAC"}
@@ -1,84 +0,0 @@
1
- import { BaseDirector } from '@unchainedshop/utils';
2
- import { createLogger } from '@unchainedshop/logger';
3
- import { PaymentError } from './PaymentError.js';
4
- const logger = createLogger('unchained:core-payment');
5
- const baseDirector = BaseDirector('PaymentDirector');
6
- export const PaymentDirector = {
7
- ...baseDirector,
8
- actions: async (paymentProvider, paymentContext, unchainedAPI) => {
9
- const Adapter = baseDirector.getAdapter(paymentProvider.adapterKey);
10
- if (!Adapter) {
11
- throw new Error(`Payment Plugin ${paymentProvider.adapterKey} not available`);
12
- }
13
- const newPaymentContext = {
14
- ...paymentContext,
15
- };
16
- if (paymentContext?.orderPayment) {
17
- const { modules } = unchainedAPI;
18
- const { orderId } = paymentContext.orderPayment;
19
- const order = paymentContext?.order ||
20
- (await modules.orders.findOrder({
21
- orderId,
22
- }));
23
- newPaymentContext.order = order;
24
- }
25
- const adapter = Adapter.actions({
26
- config: paymentProvider.configuration,
27
- paymentContext: {
28
- paymentProvider,
29
- paymentProviderId: paymentProvider._id,
30
- ...newPaymentContext,
31
- },
32
- context: unchainedAPI,
33
- });
34
- return {
35
- configurationError: () => {
36
- try {
37
- const error = adapter.configurationError();
38
- return error;
39
- }
40
- catch {
41
- return PaymentError.ADAPTER_NOT_FOUND;
42
- }
43
- },
44
- isActive: () => {
45
- try {
46
- return adapter.isActive(paymentContext.transactionContext);
47
- }
48
- catch (error) {
49
- logger.error(error.message);
50
- return false;
51
- }
52
- },
53
- isPayLaterAllowed: () => {
54
- try {
55
- return adapter.isPayLaterAllowed(paymentContext.transactionContext);
56
- }
57
- catch (error) {
58
- logger.error(error.message);
59
- return false;
60
- }
61
- },
62
- charge: async () => {
63
- return adapter.charge(paymentContext.transactionContext);
64
- },
65
- register: async () => {
66
- return adapter.register(paymentContext.transactionContext);
67
- },
68
- sign: async () => {
69
- return adapter.sign(paymentContext.transactionContext);
70
- },
71
- validate: async () => {
72
- const validated = await adapter.validate(paymentContext.token);
73
- return !!validated;
74
- },
75
- cancel: async () => {
76
- return adapter.cancel(paymentContext.transactionContext);
77
- },
78
- confirm: async () => {
79
- return adapter.confirm(paymentContext.transactionContext);
80
- },
81
- };
82
- },
83
- };
84
- //# sourceMappingURL=PaymentDirector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentDirector.js","sourceRoot":"","sources":["../../src/director/PaymentDirector.ts"],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export declare enum PaymentError {
2
- ADAPTER_NOT_FOUND = "ADAPTER_NOT_FOUND",
3
- NOT_IMPLEMENTED = "NOT_IMPLEMENTED",
4
- INCOMPLETE_CONFIGURATION = "INCOMPLETE_CONFIGURATION",
5
- WRONG_CREDENTIALS = "WRONG_CREDENTIALS"
6
- }
7
- //# sourceMappingURL=PaymentError.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentError.d.ts","sourceRoot":"","sources":["../../src/director/PaymentError.ts"],"names":[],"mappings":"AAAA,oBAAY,YAAY;IACtB,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,wBAAwB,6BAA6B;IACrD,iBAAiB,sBAAsB;CACxC"}
@@ -1,8 +0,0 @@
1
- export var PaymentError;
2
- (function (PaymentError) {
3
- PaymentError["ADAPTER_NOT_FOUND"] = "ADAPTER_NOT_FOUND";
4
- PaymentError["NOT_IMPLEMENTED"] = "NOT_IMPLEMENTED";
5
- PaymentError["INCOMPLETE_CONFIGURATION"] = "INCOMPLETE_CONFIGURATION";
6
- PaymentError["WRONG_CREDENTIALS"] = "WRONG_CREDENTIALS";
7
- })(PaymentError || (PaymentError = {}));
8
- //# sourceMappingURL=PaymentError.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentError.js","sourceRoot":"","sources":["../../src/director/PaymentError.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,YAKX;AALD,WAAY,YAAY;IACtB,uDAAuC,CAAA;IACvC,mDAAmC,CAAA;IACnC,qEAAqD,CAAA;IACrD,uDAAuC,CAAA;AACzC,CAAC,EALW,YAAY,KAAZ,YAAY,QAKvB"}
@@ -1,46 +0,0 @@
1
- import { BasePricingAdapterContext, IPricingAdapter, IPricingSheet, PricingCalculation } from '@unchainedshop/utils';
2
- import { User } from '@unchainedshop/core-users';
3
- import { OrderPayment } from '@unchainedshop/core-orders';
4
- import { Order } from '@unchainedshop/core-orders';
5
- import { PaymentProvider } from '../types.js';
6
- import { OrderDiscount } from '@unchainedshop/core-orders';
7
- export interface PaymentPricingCalculation extends PricingCalculation {
8
- discountId?: string;
9
- isTaxable: boolean;
10
- isNetPrice: boolean;
11
- rate?: number;
12
- }
13
- export interface PaymentPricingAdapterContext extends BasePricingAdapterContext {
14
- country?: string;
15
- currency?: string;
16
- user: User;
17
- orderPayment: OrderPayment;
18
- order: Order;
19
- provider: PaymentProvider;
20
- discounts: Array<OrderDiscount>;
21
- }
22
- export type IPaymentPricingSheet = IPricingSheet<PaymentPricingCalculation> & {
23
- addFee: (params: {
24
- amount: number;
25
- isTaxable: boolean;
26
- isNetPrice: boolean;
27
- meta?: any;
28
- }) => void;
29
- addTax: (params: {
30
- amount: number;
31
- rate: number;
32
- baseCategory?: string;
33
- discountId?: string;
34
- meta?: any;
35
- }) => void;
36
- addDiscount: (params: {
37
- amount: number;
38
- isTaxable: boolean;
39
- isNetPrice: boolean;
40
- discountId: string;
41
- meta?: any;
42
- }) => void;
43
- };
44
- export type IPaymentPricingAdapter<DiscountConfiguration = unknown> = IPricingAdapter<PaymentPricingAdapterContext, PaymentPricingCalculation, IPaymentPricingSheet, DiscountConfiguration>;
45
- export declare const PaymentPricingAdapter: IPricingAdapter<PaymentPricingAdapterContext, PaymentPricingCalculation, IPaymentPricingSheet>;
46
- //# sourceMappingURL=PaymentPricingAdapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingAdapter.d.ts","sourceRoot":"","sources":["../../src/director/PaymentPricingAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,eAAe,EACf,aAAa,EACb,kBAAkB,EACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,MAAM,WAAW,yBAA0B,SAAQ,kBAAkB;IACnE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,YAAY,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,eAAe,CAAC;IAC1B,SAAS,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;CACjC;AAED,MAAM,MAAM,oBAAoB,GAAG,aAAa,CAAC,yBAAyB,CAAC,GAAG;IAC5E,MAAM,EAAE,CAAC,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,GAAG,CAAA;KAAE,KAAK,IAAI,CAAC;IAClG,MAAM,EAAE,CAAC,MAAM,EAAE;QACf,MAAM,EAAE,MAAM,CAAC;QACf,IAAI,EAAE,MAAM,CAAC;QACb,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,GAAG,CAAC;KACZ,KAAK,IAAI,CAAC;IACX,WAAW,EAAE,CAAC,MAAM,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,OAAO,CAAC;QACnB,UAAU,EAAE,OAAO,CAAC;QACpB,UAAU,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,GAAG,CAAC;KACZ,KAAK,IAAI,CAAC;CACZ,CAAC;AAEF,MAAM,MAAM,sBAAsB,CAAC,qBAAqB,GAAG,OAAO,IAAI,eAAe,CACnF,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,EACpB,qBAAqB,CACtB,CAAC;AAIF,eAAO,MAAM,qBAAqB,EAAE,eAAe,CACjD,4BAA4B,EAC5B,yBAAyB,EACzB,oBAAoB,CA0BrB,CAAC"}
@@ -1,25 +0,0 @@
1
- import { BasePricingAdapter } from '@unchainedshop/utils';
2
- import { PaymentPricingSheet } from './PaymentPricingSheet.js';
3
- const basePricingAdapter = BasePricingAdapter();
4
- export const PaymentPricingAdapter = {
5
- ...basePricingAdapter,
6
- isActivatedFor: () => {
7
- return false;
8
- },
9
- actions: (params) => {
10
- const { context } = params;
11
- const { currency } = context.order;
12
- const baseActions = basePricingAdapter.actions(params);
13
- const resultSheet = PaymentPricingSheet({ currency });
14
- return {
15
- ...baseActions,
16
- calculate: async () => {
17
- const resultRaw = resultSheet.getRawPricingSheet();
18
- resultRaw.forEach(({ amount, category }) => basePricingAdapter.log(`Payment Calculation -> ${category} ${amount}`));
19
- return resultRaw;
20
- },
21
- resultSheet: () => resultSheet,
22
- };
23
- },
24
- };
25
- //# sourceMappingURL=PaymentPricingAdapter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingAdapter.js","sourceRoot":"","sources":["../../src/director/PaymentPricingAdapter.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAgD/D,MAAM,kBAAkB,GAAG,kBAAkB,EAA2D,CAAC;AAEzG,MAAM,CAAC,MAAM,qBAAqB,GAI9B;IACF,GAAG,kBAAkB;IAErB,cAAc,EAAE,GAAG,EAAE;QACnB,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAClB,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QAC3B,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC;QACnC,MAAM,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,mBAAmB,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEtD,OAAO;YACL,GAAG,WAAW;YACd,SAAS,EAAE,KAAK,IAAI,EAAE;gBACpB,MAAM,SAAS,GAAG,WAAW,CAAC,kBAAkB,EAAE,CAAC;gBACnD,SAAS,CAAC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,CACzC,kBAAkB,CAAC,GAAG,CAAC,0BAA0B,QAAQ,IAAI,MAAM,EAAE,CAAC,CACvE,CAAC;gBACF,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,WAAW,EAAE,GAAG,EAAE,CAAC,WAAW;SAC/B,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,19 +0,0 @@
1
- import { IPaymentPricingAdapter, IPaymentPricingSheet, PaymentPricingAdapterContext, PaymentPricingCalculation } from './PaymentPricingAdapter.js';
2
- import { User } from '@unchainedshop/core-users';
3
- import { Order } from '@unchainedshop/core-orders';
4
- import { PaymentProvider } from '../types.js';
5
- import { OrderPayment } from '@unchainedshop/core-orders';
6
- import { IPricingDirector } from '@unchainedshop/utils';
7
- export type PaymentPricingContext = {
8
- country?: string;
9
- currency?: string;
10
- user: User;
11
- order: Order;
12
- provider: PaymentProvider;
13
- providerContext?: any;
14
- } | {
15
- item: OrderPayment;
16
- };
17
- export type IPaymentPricingDirector<DiscountConfiguration = unknown> = IPricingDirector<PaymentPricingContext, PaymentPricingCalculation, PaymentPricingAdapterContext, IPaymentPricingSheet, IPaymentPricingAdapter<DiscountConfiguration>>;
18
- export declare const PaymentPricingDirector: IPaymentPricingDirector;
19
- //# sourceMappingURL=PaymentPricingDirector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingDirector.d.ts","sourceRoot":"","sources":["../../src/director/PaymentPricingDirector.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,4BAA4B,EAC5B,yBAAyB,EAC1B,MAAM,4BAA4B,CAAC;AAGpC,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACjD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAExD,MAAM,MAAM,qBAAqB,GAC7B;IACE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,eAAe,CAAC;IAC1B,eAAe,CAAC,EAAE,GAAG,CAAC;CACvB,GACD;IACE,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAEN,MAAM,MAAM,uBAAuB,CAAC,qBAAqB,GAAG,OAAO,IAAI,gBAAgB,CACrF,qBAAqB,EACrB,yBAAyB,EACzB,4BAA4B,EAC5B,oBAAoB,EACpB,sBAAsB,CAAC,qBAAqB,CAAC,CAC9C,CAAC;AASF,eAAO,MAAM,sBAAsB,EAAE,uBA0DpC,CAAC"}
@@ -1,58 +0,0 @@
1
- import { BasePricingDirector } from '@unchainedshop/utils';
2
- import { PaymentPricingSheet } from './PaymentPricingSheet.js';
3
- const baseDirector = BasePricingDirector('PaymentPricingDirector');
4
- export const PaymentPricingDirector = {
5
- ...baseDirector,
6
- async buildPricingContext(context, unchainedAPI) {
7
- const { modules } = unchainedAPI;
8
- if ('item' in context) {
9
- const { item } = context;
10
- const order = await modules.orders.findOrder({
11
- orderId: item.orderId,
12
- });
13
- const provider = await modules.payment.paymentProviders.findProvider({
14
- paymentProviderId: item.paymentProviderId,
15
- });
16
- const user = await modules.users.findUserById(order.userId);
17
- const discounts = await modules.orders.discounts.findOrderDiscounts({
18
- orderId: item.orderId,
19
- });
20
- return {
21
- ...unchainedAPI,
22
- country: order.countryCode,
23
- currency: order.currency,
24
- order,
25
- provider,
26
- user,
27
- discounts,
28
- orderPayment: item,
29
- providerContext: null,
30
- };
31
- }
32
- return {
33
- ...unchainedAPI,
34
- country: context.country,
35
- currency: context.currency,
36
- order: context.order,
37
- provider: context.provider,
38
- user: context.user,
39
- discounts: [],
40
- orderPayment: null,
41
- providerContext: context.providerContext,
42
- };
43
- },
44
- async actions(pricingContext, unchainedAPI) {
45
- const actions = await baseDirector.actions(pricingContext, unchainedAPI, this.buildPricingContext);
46
- return {
47
- ...actions,
48
- calculationSheet() {
49
- const context = actions.getContext();
50
- return PaymentPricingSheet({
51
- calculation: actions.getCalculation(),
52
- currency: context.currency,
53
- });
54
- },
55
- };
56
- },
57
- };
58
- //# sourceMappingURL=PaymentPricingDirector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingDirector.js","sourceRoot":"","sources":["../../src/director/PaymentPricingDirector.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AA4B/D,MAAM,YAAY,GAAG,mBAAmB,CAKtC,wBAAwB,CAAC,CAAC;AAE5B,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,GAAG,YAAY;IAEf,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY;QAC7C,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,CAAC;QAEjC,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACtB,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;YACzB,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC;gBAC3C,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,gBAAgB,CAAC,YAAY,CAAC;gBACnE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;aAC1C,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAC5D,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,kBAAkB,CAAC;gBAClE,OAAO,EAAE,IAAI,CAAC,OAAO;aACtB,CAAC,CAAC;YAEH,OAAO;gBACL,GAAG,YAAY;gBACf,OAAO,EAAE,KAAK,CAAC,WAAW;gBAC1B,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,KAAK;gBACL,QAAQ;gBACR,IAAI;gBACJ,SAAS;gBACT,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,IAAI;aACtB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,GAAG,YAAY;YACf,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,SAAS,EAAE,EAAE;YACb,YAAY,EAAE,IAAI;YAClB,eAAe,EAAE,OAAO,CAAC,eAAe;SACzC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,cAAc,EAAE,YAAY;QACxC,MAAM,OAAO,GAAG,MAAM,YAAY,CAAC,OAAO,CAAC,cAAc,EAAE,YAAY,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACnG,OAAO;YACL,GAAG,OAAO;YACV,gBAAgB;gBACd,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC;gBACrC,OAAO,mBAAmB,CAAC;oBACzB,WAAW,EAAE,OAAO,CAAC,cAAc,EAAE;oBACrC,QAAQ,EAAE,OAAO,CAAC,QAAQ;iBAC3B,CAAC,CAAC;YACL,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC"}
@@ -1,10 +0,0 @@
1
- import { PaymentPricingCalculation, IPaymentPricingSheet } from './PaymentPricingAdapter.js';
2
- import { PricingSheetParams } from '@unchainedshop/utils';
3
- export declare enum PaymentPricingRowCategory {
4
- Item = "ITEM",
5
- Payment = "PAYMENT",
6
- Discount = "DISCOUNT",
7
- Tax = "TAX"
8
- }
9
- export declare const PaymentPricingSheet: (params: PricingSheetParams<PaymentPricingCalculation>) => IPaymentPricingSheet;
10
- //# sourceMappingURL=PaymentPricingSheet.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingSheet.d.ts","sourceRoot":"","sources":["../../src/director/PaymentPricingSheet.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAC7F,OAAO,EAAqB,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE7E,oBAAY,yBAAyB;IACnC,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,GAAG,QAAQ;CACZ;AAED,eAAO,MAAM,mBAAmB,WACtB,kBAAkB,CAAC,yBAAyB,CAAC,KACpD,oBAyEF,CAAC"}
@@ -1,75 +0,0 @@
1
- import { BasePricingSheet } from '@unchainedshop/utils';
2
- export var PaymentPricingRowCategory;
3
- (function (PaymentPricingRowCategory) {
4
- PaymentPricingRowCategory["Item"] = "ITEM";
5
- PaymentPricingRowCategory["Payment"] = "PAYMENT";
6
- PaymentPricingRowCategory["Discount"] = "DISCOUNT";
7
- PaymentPricingRowCategory["Tax"] = "TAX";
8
- })(PaymentPricingRowCategory || (PaymentPricingRowCategory = {}));
9
- export const PaymentPricingSheet = (params) => {
10
- const basePricingSheet = BasePricingSheet(params);
11
- const pricingSheet = {
12
- ...basePricingSheet,
13
- addDiscount({ amount, isTaxable, isNetPrice, discountId, meta }) {
14
- basePricingSheet.calculation.push({
15
- category: PaymentPricingRowCategory.Discount,
16
- amount,
17
- isTaxable,
18
- isNetPrice,
19
- discountId,
20
- meta,
21
- });
22
- },
23
- addFee({ amount, isTaxable, isNetPrice, meta }) {
24
- basePricingSheet.calculation.push({
25
- category: PaymentPricingRowCategory.Payment,
26
- amount,
27
- isTaxable,
28
- isNetPrice,
29
- meta,
30
- });
31
- },
32
- addTax({ amount, rate, meta }) {
33
- basePricingSheet.calculation.push({
34
- category: PaymentPricingRowCategory.Tax,
35
- amount,
36
- isTaxable: false,
37
- isNetPrice: false,
38
- rate,
39
- meta,
40
- });
41
- },
42
- taxSum(filter) {
43
- return basePricingSheet.sum({
44
- category: PaymentPricingRowCategory.Tax,
45
- ...(filter || {}),
46
- });
47
- },
48
- discountPrices(explicitDiscountId) {
49
- const discountIds = pricingSheet
50
- .filterBy({
51
- category: PaymentPricingRowCategory.Discount,
52
- discountId: explicitDiscountId,
53
- })
54
- .map(({ discountId }) => discountId);
55
- return [...new Set(discountIds)]
56
- .map((discountId) => {
57
- const amount = basePricingSheet.sum({
58
- category: PaymentPricingRowCategory.Discount,
59
- discountId,
60
- });
61
- if (!amount) {
62
- return null;
63
- }
64
- return {
65
- discountId,
66
- amount: Math.round(amount),
67
- currency: basePricingSheet.currency,
68
- };
69
- })
70
- .filter(Boolean);
71
- },
72
- };
73
- return pricingSheet;
74
- };
75
- //# sourceMappingURL=PaymentPricingSheet.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentPricingSheet.js","sourceRoot":"","sources":["../../src/director/PaymentPricingSheet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAIxD,MAAM,CAAN,IAAY,yBAKX;AALD,WAAY,yBAAyB;IACnC,0CAAa,CAAA;IACb,gDAAmB,CAAA;IACnB,kDAAqB,CAAA;IACrB,wCAAW,CAAA;AACb,CAAC,EALW,yBAAyB,KAAzB,yBAAyB,QAKpC;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,MAAqD,EAC/B,EAAE;IACxB,MAAM,gBAAgB,GAAiD,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAEhG,MAAM,YAAY,GAAyB;QACzC,GAAG,gBAAgB;QAEnB,WAAW,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE;YAC7D,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC;gBAChC,QAAQ,EAAE,yBAAyB,CAAC,QAAQ;gBAC5C,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,UAAU;gBACV,IAAI;aACL,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE;YAC5C,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC;gBAChC,QAAQ,EAAE,yBAAyB,CAAC,OAAO;gBAC3C,MAAM;gBACN,SAAS;gBACT,UAAU;gBACV,IAAI;aACL,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE;YAC3B,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC;gBAChC,QAAQ,EAAE,yBAAyB,CAAC,GAAG;gBACvC,MAAM;gBACN,SAAS,EAAE,KAAK;gBAChB,UAAU,EAAE,KAAK;gBACjB,IAAI;gBACJ,IAAI;aACL,CAAC,CAAC;QACL,CAAC;QAED,MAAM,CAAC,MAAM;YACX,OAAO,gBAAgB,CAAC,GAAG,CAAC;gBAC1B,QAAQ,EAAE,yBAAyB,CAAC,GAAG;gBACvC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC;aAClB,CAAC,CAAC;QACL,CAAC;QAED,cAAc,CAAC,kBAAkB;YAC/B,MAAM,WAAW,GAAG,YAAY;iBAC7B,QAAQ,CAAC;gBACR,QAAQ,EAAE,yBAAyB,CAAC,QAAQ;gBAC5C,UAAU,EAAE,kBAAkB;aAC/B,CAAC;iBACD,GAAG,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC;YAEvC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;iBAC7B,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;gBAClB,MAAM,MAAM,GAAG,gBAAgB,CAAC,GAAG,CAAC;oBAClC,QAAQ,EAAE,yBAAyB,CAAC,QAAQ;oBAC5C,UAAU;iBACX,CAAC,CAAC;gBACH,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,IAAI,CAAC;gBACd,CAAC;gBACD,OAAO;oBACL,UAAU;oBACV,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC1B,QAAQ,EAAE,gBAAgB,CAAC,QAAQ;iBACpC,CAAC;YACJ,CAAC,CAAC;iBACD,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;KACF,CAAC;IAEF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC"}
@@ -1,6 +0,0 @@
1
- export declare enum PaymentProviderType {
2
- CARD = "CARD",
3
- INVOICE = "INVOICE",
4
- GENERIC = "GENERIC"
5
- }
6
- //# sourceMappingURL=PaymentProviderType.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentProviderType.d.ts","sourceRoot":"","sources":["../../src/director/PaymentProviderType.ts"],"names":[],"mappings":"AAAA,oBAAY,mBAAmB;IAC7B,IAAI,SAAS;IACb,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB"}
@@ -1,7 +0,0 @@
1
- export var PaymentProviderType;
2
- (function (PaymentProviderType) {
3
- PaymentProviderType["CARD"] = "CARD";
4
- PaymentProviderType["INVOICE"] = "INVOICE";
5
- PaymentProviderType["GENERIC"] = "GENERIC";
6
- })(PaymentProviderType || (PaymentProviderType = {}));
7
- //# sourceMappingURL=PaymentProviderType.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentProviderType.js","sourceRoot":"","sources":["../../src/director/PaymentProviderType.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,oCAAa,CAAA;IACb,0CAAmB,CAAA;IACnB,0CAAmB,CAAA;AACrB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B"}
package/lib/types.d.ts DELETED
@@ -1,84 +0,0 @@
1
- import { IBaseAdapter, IBaseDirector } from '@unchainedshop/utils';
2
- import type { TimestampFields } from '@unchainedshop/mongodb';
3
- import { Order } from '@unchainedshop/core-orders';
4
- import { OrderPayment } from '@unchainedshop/core-orders';
5
- import { UnchainedCore } from '@unchainedshop/core';
6
- export declare enum PaymentProviderType {
7
- CARD = "CARD",
8
- INVOICE = "INVOICE",
9
- GENERIC = "GENERIC"
10
- }
11
- export type PaymentConfiguration = Array<{
12
- key: string;
13
- value: string | null;
14
- }>;
15
- export type PaymentProvider = {
16
- _id?: string;
17
- type: PaymentProviderType;
18
- adapterKey: string;
19
- configuration: PaymentConfiguration;
20
- } & TimestampFields;
21
- export type PaymentCredentials = {
22
- _id?: string;
23
- paymentProviderId: string;
24
- userId: string;
25
- token?: string;
26
- isPreferred?: boolean;
27
- meta: any;
28
- } & TimestampFields;
29
- export declare enum PaymentError {
30
- ADAPTER_NOT_FOUND = "ADAPTER_NOT_FOUND",
31
- NOT_IMPLEMENTED = "NOT_IMPLEMENTED",
32
- INCOMPLETE_CONFIGURATION = "INCOMPLETE_CONFIGURATION",
33
- WRONG_CREDENTIALS = "WRONG_CREDENTIALS"
34
- }
35
- export interface PaymentContext {
36
- userId?: string;
37
- order?: Order;
38
- orderPayment?: OrderPayment;
39
- transactionContext?: any;
40
- token?: any;
41
- meta?: any;
42
- }
43
- export type ChargeResult = {
44
- transactionId?: string;
45
- [key: string]: any;
46
- };
47
- export type PaymentChargeActionResult = ChargeResult & {
48
- credentials?: {
49
- token: string;
50
- [key: string]: any;
51
- };
52
- };
53
- export interface IPaymentActions {
54
- charge: (transactionContext?: any) => Promise<PaymentChargeActionResult | false>;
55
- configurationError: (transactionContext?: any) => PaymentError;
56
- isActive: (transactionContext?: any) => boolean;
57
- isPayLaterAllowed: (transactionContext?: any) => boolean;
58
- register: (transactionContext?: any) => Promise<any>;
59
- sign: (transactionContext?: any) => Promise<string>;
60
- validate: (token?: any) => Promise<boolean>;
61
- cancel: (transactionContext?: any) => Promise<boolean>;
62
- confirm: (transactionContext?: any) => Promise<boolean>;
63
- }
64
- export type IPaymentAdapter = IBaseAdapter & {
65
- initialConfiguration: PaymentConfiguration;
66
- typeSupported: (type: PaymentProviderType) => boolean;
67
- actions: (params: {
68
- config: PaymentConfiguration;
69
- paymentContext: PaymentContext & {
70
- paymentProviderId: string;
71
- paymentProvider: PaymentProvider;
72
- };
73
- context: UnchainedCore;
74
- }) => IPaymentActions;
75
- };
76
- export type IPaymentDirector = IBaseDirector<IPaymentAdapter> & {
77
- actions: (paymentProvider: PaymentProvider, paymentContext: PaymentContext, unchainedAPI: UnchainedCore) => Promise<IPaymentActions>;
78
- };
79
- export interface PaymentInterface {
80
- _id: string;
81
- label: string;
82
- version: string;
83
- }
84
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,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,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,GAAG,CAAC;CACX,GAAG,eAAe,CAAC;AAEpB,oBAAY,YAAY;IACtB,iBAAiB,sBAAsB;IACvC,eAAe,oBAAoB;IACnC,wBAAwB,6BAA6B;IACrD,iBAAiB,sBAAsB;CACxC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,kBAAkB,CAAC,EAAE,GAAG,CAAC;IACzB,KAAK,CAAC,EAAE,GAAG,CAAC;IACZ,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG,YAAY,GAAG;IACrD,WAAW,CAAC,EAAE;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;KACpB,CAAC;CACH,CAAC;AACF,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,yBAAyB,GAAG,KAAK,CAAC,CAAC;IACjF,kBAAkB,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,YAAY,CAAC;IAC/D,QAAQ,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;IAChD,iBAAiB,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC;IACzD,QAAQ,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,GAAG,CAAC,CAAC;IACrD,IAAI,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACpD,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACvD,OAAO,EAAE,CAAC,kBAAkB,CAAC,EAAE,GAAG,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACzD;AAED,MAAM,MAAM,eAAe,GAAG,YAAY,GAAG;IAC3C,oBAAoB,EAAE,oBAAoB,CAAC;IAE3C,aAAa,EAAE,CAAC,IAAI,EAAE,mBAAmB,KAAK,OAAO,CAAC;IAEtD,OAAO,EAAE,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,oBAAoB,CAAC;QAC7B,cAAc,EAAE,cAAc,GAAG;YAC/B,iBAAiB,EAAE,MAAM,CAAC;YAC1B,eAAe,EAAE,eAAe,CAAC;SAClC,CAAC;QACF,OAAO,EAAE,aAAa,CAAC;KACxB,KAAK,eAAe,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG,aAAa,CAAC,eAAe,CAAC,GAAG;IAC9D,OAAO,EAAE,CACP,eAAe,EAAE,eAAe,EAChC,cAAc,EAAE,cAAc,EAC9B,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,eAAe,CAAC,CAAC;CAC/B,CAAC;AAMF,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB"}