@requestnetwork/payment-detection 0.43.1-next.2046 → 0.43.1-next.2048
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.
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -1
- package/dist/index.js.map +1 -1
- package/dist/meta-payment-detector.d.ts +35 -0
- package/dist/meta-payment-detector.d.ts.map +1 -0
- package/dist/meta-payment-detector.js +122 -0
- package/dist/meta-payment-detector.js.map +1 -0
- package/dist/payment-network-factory.d.ts.map +1 -1
- package/dist/payment-network-factory.js +3 -1
- package/dist/payment-network-factory.js.map +1 -1
- package/dist/thegraph/superfluid.d.ts +1 -0
- package/dist/thegraph/superfluid.d.ts.map +1 -1
- package/dist/thegraph/superfluid.js +19 -6
- package/dist/thegraph/superfluid.js.map +1 -1
- package/dist/utils.d.ts +12 -1
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +33 -1
- package/dist/utils.js.map +1 -1
- package/package.json +7 -7
package/dist/index.d.ts
CHANGED
|
@@ -7,7 +7,7 @@ import * as Erc20PaymentNetwork from './erc20';
|
|
|
7
7
|
import { AnyToERC20PaymentDetector, AnyToEthFeeProxyPaymentDetector } from './any';
|
|
8
8
|
import { EthFeeProxyPaymentDetector, EthInputDataPaymentDetector } from './eth';
|
|
9
9
|
import { getTheGraphClient, getTheGraphEvmClient, getTheGraphNearClient } from './thegraph';
|
|
10
|
-
import { calculateEscrowState, formatAddress, getPaymentNetworkExtension, getPaymentReference, hashReference, padAmountForChainlink, parseLogArgs, unpadAmountFromChainlink } from './utils';
|
|
10
|
+
import { calculateEscrowState, formatAddress, getPaymentNetworkExtension, getPaymentReference, getPaymentReferencesForMetaPnRequest, flattenRequestByPnId, hashReference, padAmountForChainlink, parseLogArgs, unpadAmountFromChainlink } from './utils';
|
|
11
11
|
import { NearConversionNativeTokenPaymentDetector, NearNativeTokenPaymentDetector } from './near';
|
|
12
12
|
import { FeeReferenceBasedDetector } from './fee-reference-based-detector';
|
|
13
13
|
import { SuperFluidPaymentDetector } from './erc777/superfluid-detector';
|
|
@@ -15,6 +15,7 @@ import { EscrowERC20InfoRetriever } from './erc20/escrow-info-retriever';
|
|
|
15
15
|
import { SuperFluidInfoRetriever } from './erc777/superfluid-retriever';
|
|
16
16
|
import { PaymentNetworkOptions } from './types';
|
|
17
17
|
import { ERC20TransferableReceivablePaymentDetector } from './erc20';
|
|
18
|
+
import { MetaDetector } from './meta-payment-detector';
|
|
18
19
|
export type { TheGraphClient } from './thegraph';
|
|
19
|
-
export { PaymentNetworkFactory, PaymentNetworkOptions, PaymentReferenceCalculator, BtcPaymentNetwork, DeclarativePaymentDetector, Erc20PaymentNetwork, ERC20TransferableReceivablePaymentDetector, EthInputDataPaymentDetector, EthFeeProxyPaymentDetector, AnyToERC20PaymentDetector, AnyToEthFeeProxyPaymentDetector, FeeReferenceBasedDetector, SuperFluidPaymentDetector, NearNativeTokenPaymentDetector, NearConversionNativeTokenPaymentDetector, EscrowERC20InfoRetriever, SuperFluidInfoRetriever, setProviderFactory, initPaymentDetectionApiKeys, getDefaultProvider, getTheGraphClient, getTheGraphEvmClient, getTheGraphNearClient, parseLogArgs, padAmountForChainlink, unpadAmountFromChainlink, calculateEscrowState, getPaymentNetworkExtension, getPaymentReference, hashReference, formatAddress, };
|
|
20
|
+
export { PaymentNetworkFactory, PaymentNetworkOptions, PaymentReferenceCalculator, BtcPaymentNetwork, DeclarativePaymentDetector, Erc20PaymentNetwork, ERC20TransferableReceivablePaymentDetector, EthInputDataPaymentDetector, EthFeeProxyPaymentDetector, AnyToERC20PaymentDetector, AnyToEthFeeProxyPaymentDetector, FeeReferenceBasedDetector, SuperFluidPaymentDetector, NearNativeTokenPaymentDetector, NearConversionNativeTokenPaymentDetector, EscrowERC20InfoRetriever, SuperFluidInfoRetriever, MetaDetector, setProviderFactory, initPaymentDetectionApiKeys, getDefaultProvider, getTheGraphClient, getTheGraphEvmClient, getTheGraphNearClient, parseLogArgs, padAmountForChainlink, unpadAmountFromChainlink, calculateEscrowState, flattenRequestByPnId, getPaymentNetworkExtension, getPaymentReference, getPaymentReferencesForMetaPnRequest, hashReference, formatAddress, };
|
|
20
21
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,0BAA0B,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,iBAAiB,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,mBAAmB,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,+BAA+B,EAAE,MAAM,OAAO,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,wBAAwB,EACzB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,wCAAwC,EAAE,8BAA8B,EAAE,MAAM,QAAQ,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,0CAA0C,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,2BAA2B,EAC3B,kBAAkB,EACnB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAClE,OAAO,KAAK,0BAA0B,MAAM,gCAAgC,CAAC;AAC7E,OAAO,KAAK,iBAAiB,MAAM,OAAO,CAAC;AAC3C,OAAO,EAAE,0BAA0B,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,KAAK,mBAAmB,MAAM,SAAS,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,+BAA+B,EAAE,MAAM,OAAO,CAAC;AACnF,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,OAAO,CAAC;AAChF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAC5F,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,0BAA0B,EAC1B,mBAAmB,EACnB,oCAAoC,EACpC,oBAAoB,EACpB,aAAa,EACb,qBAAqB,EACrB,YAAY,EACZ,wBAAwB,EACzB,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,wCAAwC,EAAE,8BAA8B,EAAE,MAAM,QAAQ,CAAC;AAClG,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAC3E,OAAO,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AACzE,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAChD,OAAO,EAAE,0CAA0C,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEvD,YAAY,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,0BAA0B,EAC1B,mBAAmB,EACnB,0CAA0C,EAC1C,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,EACzB,yBAAyB,EACzB,8BAA8B,EAC9B,wCAAwC,EACxC,wBAAwB,EACxB,uBAAuB,EACvB,YAAY,EACZ,kBAAkB,EAClB,2BAA2B,EAC3B,kBAAkB,EAClB,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,YAAY,EACZ,qBAAqB,EACrB,wBAAwB,EACxB,oBAAoB,EACpB,oBAAoB,EACpB,0BAA0B,EAC1B,mBAAmB,EACnB,oCAAoC,EACpC,aAAa,EACb,aAAa,GACd,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.formatAddress = exports.hashReference = exports.getPaymentReference = exports.getPaymentNetworkExtension = exports.calculateEscrowState = exports.unpadAmountFromChainlink = exports.padAmountForChainlink = exports.parseLogArgs = exports.getTheGraphNearClient = exports.getTheGraphEvmClient = exports.getTheGraphClient = exports.getDefaultProvider = exports.initPaymentDetectionApiKeys = exports.setProviderFactory = exports.SuperFluidInfoRetriever = exports.EscrowERC20InfoRetriever = exports.NearConversionNativeTokenPaymentDetector = exports.NearNativeTokenPaymentDetector = exports.SuperFluidPaymentDetector = exports.FeeReferenceBasedDetector = exports.AnyToEthFeeProxyPaymentDetector = exports.AnyToERC20PaymentDetector = exports.EthFeeProxyPaymentDetector = exports.EthInputDataPaymentDetector = exports.ERC20TransferableReceivablePaymentDetector = exports.Erc20PaymentNetwork = exports.DeclarativePaymentDetector = exports.BtcPaymentNetwork = exports.PaymentReferenceCalculator = exports.PaymentNetworkFactory = void 0;
|
|
3
|
+
exports.formatAddress = exports.hashReference = exports.getPaymentReferencesForMetaPnRequest = exports.getPaymentReference = exports.getPaymentNetworkExtension = exports.flattenRequestByPnId = exports.calculateEscrowState = exports.unpadAmountFromChainlink = exports.padAmountForChainlink = exports.parseLogArgs = exports.getTheGraphNearClient = exports.getTheGraphEvmClient = exports.getTheGraphClient = exports.getDefaultProvider = exports.initPaymentDetectionApiKeys = exports.setProviderFactory = exports.MetaDetector = exports.SuperFluidInfoRetriever = exports.EscrowERC20InfoRetriever = exports.NearConversionNativeTokenPaymentDetector = exports.NearNativeTokenPaymentDetector = exports.SuperFluidPaymentDetector = exports.FeeReferenceBasedDetector = exports.AnyToEthFeeProxyPaymentDetector = exports.AnyToERC20PaymentDetector = exports.EthFeeProxyPaymentDetector = exports.EthInputDataPaymentDetector = exports.ERC20TransferableReceivablePaymentDetector = exports.Erc20PaymentNetwork = exports.DeclarativePaymentDetector = exports.BtcPaymentNetwork = exports.PaymentReferenceCalculator = exports.PaymentNetworkFactory = void 0;
|
|
4
4
|
const utils_1 = require("@requestnetwork/utils");
|
|
5
5
|
Object.defineProperty(exports, "getDefaultProvider", { enumerable: true, get: function () { return utils_1.getDefaultProvider; } });
|
|
6
6
|
Object.defineProperty(exports, "initPaymentDetectionApiKeys", { enumerable: true, get: function () { return utils_1.initPaymentDetectionApiKeys; } });
|
|
@@ -30,6 +30,8 @@ Object.defineProperty(exports, "calculateEscrowState", { enumerable: true, get:
|
|
|
30
30
|
Object.defineProperty(exports, "formatAddress", { enumerable: true, get: function () { return utils_2.formatAddress; } });
|
|
31
31
|
Object.defineProperty(exports, "getPaymentNetworkExtension", { enumerable: true, get: function () { return utils_2.getPaymentNetworkExtension; } });
|
|
32
32
|
Object.defineProperty(exports, "getPaymentReference", { enumerable: true, get: function () { return utils_2.getPaymentReference; } });
|
|
33
|
+
Object.defineProperty(exports, "getPaymentReferencesForMetaPnRequest", { enumerable: true, get: function () { return utils_2.getPaymentReferencesForMetaPnRequest; } });
|
|
34
|
+
Object.defineProperty(exports, "flattenRequestByPnId", { enumerable: true, get: function () { return utils_2.flattenRequestByPnId; } });
|
|
33
35
|
Object.defineProperty(exports, "hashReference", { enumerable: true, get: function () { return utils_2.hashReference; } });
|
|
34
36
|
Object.defineProperty(exports, "padAmountForChainlink", { enumerable: true, get: function () { return utils_2.padAmountForChainlink; } });
|
|
35
37
|
Object.defineProperty(exports, "parseLogArgs", { enumerable: true, get: function () { return utils_2.parseLogArgs; } });
|
|
@@ -47,4 +49,6 @@ const superfluid_retriever_1 = require("./erc777/superfluid-retriever");
|
|
|
47
49
|
Object.defineProperty(exports, "SuperFluidInfoRetriever", { enumerable: true, get: function () { return superfluid_retriever_1.SuperFluidInfoRetriever; } });
|
|
48
50
|
const erc20_1 = require("./erc20");
|
|
49
51
|
Object.defineProperty(exports, "ERC20TransferableReceivablePaymentDetector", { enumerable: true, get: function () { return erc20_1.ERC20TransferableReceivablePaymentDetector; } });
|
|
52
|
+
const meta_payment_detector_1 = require("./meta-payment-detector");
|
|
53
|
+
Object.defineProperty(exports, "MetaDetector", { enumerable: true, get: function () { return meta_payment_detector_1.MetaDetector; } });
|
|
50
54
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAI+B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,iDAI+B;AAqD7B,mGAxDA,0BAAkB,OAwDA;AADlB,4GAtDA,mCAA2B,OAsDA;AAD3B,mGApDA,0BAAkB,OAoDA;AAlDpB,uEAAkE;AAgChE,sGAhCO,+CAAqB,OAgCP;AA/BvB,6EAA6E;AAiC3E,gEAA0B;AAhC5B,2CAA2C;AAiCzC,8CAAiB;AAhCnB,+CAA2D;AAiCzD,2GAjCO,wCAA0B,OAiCP;AAhC5B,+CAA+C;AAiC7C,kDAAmB;AAhCrB,+BAAmF;AAoCjF,0GApCO,+BAAyB,OAoCP;AACzB,gHArCkC,qCAA+B,OAqClC;AApCjC,+BAAgF;AAkC9E,2GAlCO,gCAA0B,OAkCP;AAD1B,4GAjCmC,iCAA2B,OAiCnC;AAhC7B,yCAA4F;AA8C1F,kGA9CO,4BAAiB,OA8CP;AACjB,qGA/C0B,+BAAoB,OA+C1B;AACpB,sGAhDgD,gCAAqB,OAgDhD;AA/CvB,mCAWiB;AAwCf,qGAlDA,4BAAoB,OAkDA;AAMpB,8FAvDA,qBAAa,OAuDA;AAJb,2GAlDA,kCAA0B,OAkDA;AAC1B,oGAlDA,2BAAmB,OAkDA;AACnB,qHAlDA,4CAAoC,OAkDA;AAHpC,qGA9CA,4BAAoB,OA8CA;AAIpB,8FAjDA,qBAAa,OAiDA;AAPb,sGAzCA,6BAAqB,OAyCA;AADrB,6FAvCA,oBAAY,OAuCA;AAEZ,yGAxCA,gCAAwB,OAwCA;AAtC1B,iCAAkG;AA0BhG,yHA1BO,+CAAwC,OA0BP;AADxC,+GAzBiD,qCAA8B,OAyBjD;AAxBhC,iFAA2E;AAsBzE,0GAtBO,wDAAyB,OAsBP;AArB3B,sEAAyE;AAsBvE,0GAtBO,+CAAyB,OAsBP;AArB3B,yEAAyE;AAwBvE,yGAxBO,gDAAwB,OAwBP;AAvB1B,wEAAwE;AAwBtE,wGAxBO,8CAAuB,OAwBP;AAtBzB,mCAAqE;AAYnE,2HAZO,kDAA0C,OAYP;AAX5C,mEAAuD;AAsBrD,6FAtBO,oCAAY,OAsBP"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types';
|
|
2
|
+
import { PaymentNetworkOptions, ReferenceBasedDetectorOptions } from './types';
|
|
3
|
+
import { DeclarativePaymentDetectorBase } from './declarative';
|
|
4
|
+
/**
|
|
5
|
+
* Detect payment for the meta payment network.
|
|
6
|
+
* Recursively detects payments on each sub payment network.
|
|
7
|
+
* For each sub payment network we check for payments with the paymentReference associated to the sub payment network.
|
|
8
|
+
*/
|
|
9
|
+
export declare class MetaDetector extends DeclarativePaymentDetectorBase<ExtensionTypes.PnMeta.IMeta<any>, PaymentTypes.ConversionPaymentNetworkEventParameters | PaymentTypes.IDeclarativePaymentEventParameters> {
|
|
10
|
+
private readonly advancedLogic;
|
|
11
|
+
private readonly currencyManager;
|
|
12
|
+
private readonly options;
|
|
13
|
+
constructor({ advancedLogic, currencyManager, options, }: ReferenceBasedDetectorOptions & {
|
|
14
|
+
options: Partial<PaymentNetworkOptions>;
|
|
15
|
+
});
|
|
16
|
+
/**
|
|
17
|
+
* Creates the extensions data for the creation of this extension.
|
|
18
|
+
*
|
|
19
|
+
* @param paymentNetworkCreationParameters Parameters to create the extension
|
|
20
|
+
* @returns The extensionData object
|
|
21
|
+
*/
|
|
22
|
+
createExtensionsDataForCreation(paymentNetworkCreationParameters: ExtensionTypes.PnMeta.ICreationParameters): Promise<ExtensionTypes.IAction>;
|
|
23
|
+
/**
|
|
24
|
+
* Creates the extensions data to apply an action on a sub pn
|
|
25
|
+
*
|
|
26
|
+
* @param Parameters to apply an action on a sub pn
|
|
27
|
+
* @returns The extensionData object
|
|
28
|
+
*/
|
|
29
|
+
createExtensionsDataForApplyActionOnPn(parameters: ExtensionTypes.PnMeta.IApplyActionToPn): ExtensionTypes.IAction;
|
|
30
|
+
/**
|
|
31
|
+
* To retrieve all events, iterate over the sub payment networks and aggregate their balances
|
|
32
|
+
*/
|
|
33
|
+
protected getEvents(request: RequestLogicTypes.IRequest): Promise<PaymentTypes.AllNetworkEvents<PaymentTypes.ConversionPaymentNetworkEventParameters | PaymentTypes.IDeclarativePaymentEventParameters>>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=meta-payment-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta-payment-detector.d.ts","sourceRoot":"","sources":["../src/meta-payment-detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAG/B,OAAO,EAEL,qBAAqB,EACrB,6BAA6B,EAC9B,MAAM,SAAS,CAAC;AACjB,OAAO,EAA8B,8BAA8B,EAAE,MAAM,eAAe,CAAC;AA0B3F;;;;GAIG;AACH,qBAAa,YAAa,SAAQ,8BAA8B,CAC9D,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,EAC9B,YAAY,CAAC,uCAAuC,GACpD,YAAY,CAAC,kCAAkC,CAClD;IACC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAoC;IAClE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAiC;IACjE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAiC;gBAEtC,EACjB,aAAa,EACb,eAAe,EACf,OAAO,GACR,EAAE,6BAA6B,GAAG;QAAE,OAAO,EAAE,OAAO,CAAC,qBAAqB,CAAC,CAAA;KAAE;IAO9E;;;;;OAKG;IACU,+BAA+B,CAC1C,gCAAgC,EAAE,cAAc,CAAC,MAAM,CAAC,mBAAmB,GAC1E,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC;IAiClC;;;;;OAKG;IACI,sCAAsC,CAC3C,UAAU,EAAE,cAAc,CAAC,MAAM,CAAC,gBAAgB,GACjD,cAAc,CAAC,OAAO;IAQzB;;OAEG;cACa,SAAS,CACvB,OAAO,EAAE,iBAAiB,CAAC,QAAQ,GAClC,OAAO,CACR,YAAY,CAAC,gBAAgB,CACzB,YAAY,CAAC,uCAAuC,GACpD,YAAY,CAAC,kCAAkC,CAClD,CACF;CAyDF"}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MetaDetector = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
5
|
+
const types_1 = require("@requestnetwork/types");
|
|
6
|
+
const utils_1 = require("@requestnetwork/utils");
|
|
7
|
+
const any_1 = require("./any");
|
|
8
|
+
const declarative_1 = require("./declarative");
|
|
9
|
+
const ethers_1 = require("ethers");
|
|
10
|
+
const supportedPns = [
|
|
11
|
+
types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_DECLARATIVE,
|
|
12
|
+
types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ERC20_PROXY,
|
|
13
|
+
types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ETH_PROXY,
|
|
14
|
+
];
|
|
15
|
+
const detectorMap = {
|
|
16
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_DECLARATIVE]: declarative_1.DeclarativePaymentDetector,
|
|
17
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ERC20_PROXY]: any_1.AnyToERC20PaymentDetector,
|
|
18
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ETH_PROXY]: any_1.AnyToEthFeeProxyPaymentDetector,
|
|
19
|
+
};
|
|
20
|
+
const advancedLogicMap = {
|
|
21
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_DECLARATIVE]: 'declarative',
|
|
22
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ERC20_PROXY]: 'anyToErc20Proxy',
|
|
23
|
+
[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.ANY_TO_ETH_PROXY]: 'anyToEthProxy',
|
|
24
|
+
};
|
|
25
|
+
/**
|
|
26
|
+
* Detect payment for the meta payment network.
|
|
27
|
+
* Recursively detects payments on each sub payment network.
|
|
28
|
+
* For each sub payment network we check for payments with the paymentReference associated to the sub payment network.
|
|
29
|
+
*/
|
|
30
|
+
class MetaDetector extends declarative_1.DeclarativePaymentDetectorBase {
|
|
31
|
+
constructor({ advancedLogic, currencyManager, options, }) {
|
|
32
|
+
super(types_1.ExtensionTypes.PAYMENT_NETWORK_ID.META, advancedLogic.extensions.metaPn);
|
|
33
|
+
this.options = options || {};
|
|
34
|
+
this.currencyManager = currencyManager;
|
|
35
|
+
this.advancedLogic = advancedLogic;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Creates the extensions data for the creation of this extension.
|
|
39
|
+
*
|
|
40
|
+
* @param paymentNetworkCreationParameters Parameters to create the extension
|
|
41
|
+
* @returns The extensionData object
|
|
42
|
+
*/
|
|
43
|
+
createExtensionsDataForCreation(paymentNetworkCreationParameters) {
|
|
44
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
45
|
+
// Do the same for each sub-extension
|
|
46
|
+
for (const [key, value] of Object.entries(paymentNetworkCreationParameters)) {
|
|
47
|
+
if (supportedPns.includes(key)) {
|
|
48
|
+
const detectorClass = detectorMap[key];
|
|
49
|
+
const extensionKey = advancedLogicMap[key];
|
|
50
|
+
const extension = this.advancedLogic.extensions[extensionKey];
|
|
51
|
+
if (!detectorClass || !extension) {
|
|
52
|
+
throw new Error(`The payment network id: ${key} is not supported for meta-pn detection`);
|
|
53
|
+
}
|
|
54
|
+
const detector = new detectorClass(Object.assign({ advancedLogic: this.advancedLogic, paymentNetworkId: key, extension, currencyManager: this.currencyManager }, this.options));
|
|
55
|
+
for (let index = 0; index < value.length; index++) {
|
|
56
|
+
paymentNetworkCreationParameters[key][index] = (yield detector.createExtensionsDataForCreation(value[index])).parameters;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
return this.extension.createCreationAction(Object.assign({}, paymentNetworkCreationParameters));
|
|
61
|
+
});
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Creates the extensions data to apply an action on a sub pn
|
|
65
|
+
*
|
|
66
|
+
* @param Parameters to apply an action on a sub pn
|
|
67
|
+
* @returns The extensionData object
|
|
68
|
+
*/
|
|
69
|
+
createExtensionsDataForApplyActionOnPn(parameters) {
|
|
70
|
+
return this.extension.createApplyActionToPn({
|
|
71
|
+
pnIdentifier: parameters.pnIdentifier,
|
|
72
|
+
action: parameters.action,
|
|
73
|
+
parameters: parameters.parameters,
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* To retrieve all events, iterate over the sub payment networks and aggregate their balances
|
|
78
|
+
*/
|
|
79
|
+
getEvents(request) {
|
|
80
|
+
return tslib_1.__awaiter(this, void 0, void 0, function* () {
|
|
81
|
+
const paymentExtension = this.getPaymentExtension(request);
|
|
82
|
+
const events = [];
|
|
83
|
+
const feeBalances = [];
|
|
84
|
+
for (const value of Object.values(paymentExtension.values)) {
|
|
85
|
+
if (supportedPns.includes(value.id)) {
|
|
86
|
+
const detectorClass = detectorMap[value.id];
|
|
87
|
+
const extensionKey = advancedLogicMap[value.id];
|
|
88
|
+
const extension = this.advancedLogic.extensions[extensionKey];
|
|
89
|
+
if (!detectorClass || !extension) {
|
|
90
|
+
throw new Error(`The payment network id: ${value.id} is not supported for meta-pn detection`);
|
|
91
|
+
}
|
|
92
|
+
const detector = new detectorClass(Object.assign({ advancedLogic: this.advancedLogic, paymentNetworkId: value.id, extension, currencyManager: this.currencyManager }, this.options));
|
|
93
|
+
const partialRequest = (0, utils_1.deepCopy)(request);
|
|
94
|
+
partialRequest.extensions = {
|
|
95
|
+
[value.id]: value,
|
|
96
|
+
};
|
|
97
|
+
partialRequest.extensionsData = [value];
|
|
98
|
+
events.push(yield detector.getBalance(partialRequest));
|
|
99
|
+
const feeBalance = partialRequest.extensions[value.id].values.feeBalance;
|
|
100
|
+
if (feeBalance) {
|
|
101
|
+
feeBalances.push(feeBalance);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
const declaredEvents = this.getDeclarativeEvents(request);
|
|
106
|
+
const allPaymentEvents = [...declaredEvents, ...events.map((event) => event.events).flat()];
|
|
107
|
+
// FIXME: should be at the same level as balance
|
|
108
|
+
const values = this.getPaymentExtension(request).values;
|
|
109
|
+
values.feeBalance = {
|
|
110
|
+
events: feeBalances.map((event) => event.events).flat(),
|
|
111
|
+
balance: feeBalances
|
|
112
|
+
.reduce((sum, curr) => sum.add(curr.balance || '0'), ethers_1.BigNumber.from(0))
|
|
113
|
+
.toString(),
|
|
114
|
+
};
|
|
115
|
+
return {
|
|
116
|
+
paymentEvents: allPaymentEvents,
|
|
117
|
+
};
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
exports.MetaDetector = MetaDetector;
|
|
122
|
+
//# sourceMappingURL=meta-payment-detector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"meta-payment-detector.js","sourceRoot":"","sources":["../src/meta-payment-detector.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment-network-factory.d.ts","sourceRoot":"","sources":["../src/payment-network-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAIL,qBAAqB,EACtB,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"payment-network-factory.d.ts","sourceRoot":"","sources":["../src/payment-network-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAIL,qBAAqB,EACtB,MAAM,SAAS,CAAC;AA4EjB,+FAA+F;AAC/F,qBAAa,qBAAqB;IAS9B,OAAO,CAAC,QAAQ,CAAC,aAAa;IAC9B,OAAO,CAAC,QAAQ,CAAC,eAAe;IATlC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D;;;;;OAKG;gBAEgB,aAAa,EAAE,kBAAkB,CAAC,cAAc,EAChD,eAAe,EAAE,aAAa,CAAC,gBAAgB,EAChE,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC;IAK1C,OAAO,CAAC,YAAY;IASpB;;;;;;;;OAQG;IACI,oBAAoB,CAAC,KAAK,SAAS,cAAc,CAAC,kBAAkB,EACzE,gBAAgB,EAAE,KAAK,EACvB,YAAY,EAAE,iBAAiB,CAAC,QAAQ,EACxC,YAAY,CAAC,EAAE,aAAa,CAAC,SAAS,EACtC,qBAAqB,CAAC,EAAE,MAAM,GAC7B,YAAY,CAAC,eAAe,CAC7B,YAAY,CAAC,sBAAsB,EACnC,OAAO,CAAC,YAAY,CAAC,8BAA8B,EAAE;QAAE,EAAE,EAAE,KAAK,CAAA;KAAE,CAAC,CAAC,YAAY,CAAC,CAClF;IAsCD;;;;;;OAMG;IACI,4BAA4B,CACjC,OAAO,EAAE,iBAAiB,CAAC,QAAQ,GAClC,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,sBAAsB,EAAE,GAAG,CAAC,GAAG,IAAI;CAWjF"}
|
|
@@ -4,6 +4,7 @@ exports.PaymentNetworkFactory = void 0;
|
|
|
4
4
|
const types_1 = require("@requestnetwork/types");
|
|
5
5
|
const btc_1 = require("./btc");
|
|
6
6
|
const declarative_1 = require("./declarative");
|
|
7
|
+
const meta_payment_detector_1 = require("./meta-payment-detector");
|
|
7
8
|
const erc20_1 = require("./erc20");
|
|
8
9
|
const superfluid_detector_1 = require("./erc777/superfluid-detector");
|
|
9
10
|
const eth_1 = require("./eth");
|
|
@@ -64,6 +65,7 @@ const anyCurrencyPaymentNetwork = {
|
|
|
64
65
|
[PN_ID.ANY_DECLARATIVE]: declarative_1.DeclarativePaymentDetector,
|
|
65
66
|
[PN_ID.ANY_TO_ETH_PROXY]: any_1.AnyToEthFeeProxyPaymentDetector,
|
|
66
67
|
[PN_ID.ANY_TO_NATIVE_TOKEN]: near_1.NearConversionNativeTokenPaymentDetector,
|
|
68
|
+
[PN_ID.META]: meta_payment_detector_1.MetaDetector,
|
|
67
69
|
};
|
|
68
70
|
/** Factory to create the payment network according to the currency and payment network type */
|
|
69
71
|
class PaymentNetworkFactory {
|
|
@@ -106,7 +108,7 @@ class PaymentNetworkFactory {
|
|
|
106
108
|
if (!detectorClass) {
|
|
107
109
|
throw new Error(`the payment network id: ${paymentNetworkId} is not supported for the currency: ${currencyType} on network ${network}`);
|
|
108
110
|
}
|
|
109
|
-
const detector = new detectorClass(Object.assign({ network, advancedLogic: this.advancedLogic, currencyManager: this.currencyManager }, this.options));
|
|
111
|
+
const detector = new detectorClass(Object.assign({ network, advancedLogic: this.advancedLogic, currencyManager: this.currencyManager, options: this.options }, this.options));
|
|
110
112
|
if (detector.extension && 'getDeploymentInformation' in detectorClass) {
|
|
111
113
|
// this throws when the contract isn't deployed and was mandatory for payment detection
|
|
112
114
|
detectorClass.getDeploymentInformation(network, paymentNetworkVersion || detector.extension.currentVersion);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment-network-factory.js","sourceRoot":"","sources":["../src/payment-network-factory.ts"],"names":[],"mappings":";;;AAAA,iDAM+B;AAO/B,+BAAuF;AACvF,+CAA2D;AAC3D,mCAKiB;AACjB,sEAAyE;AACzE,+BAAgF;AAChF,+BAAmF;AACnF,iCAAkG;AAClG,mCAAqD;AACrD,yCAAsD;AACtD,mCAA4C;AAE5C,MAAM,KAAK,GAAG,sBAAc,CAAC,kBAAkB,CAAC;AAEhD,wDAAwD;AACxD,MAAM,uBAAuB,GAAuC;IAClE,GAAG,EAAE;QACH,OAAO,EAAE;YACP,CAAC,KAAK,CAAC,qBAAqB,CAAC,EAAE,oCAA8B;SAC9D;QACD,OAAO,EAAE;YACP,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAE,oCAA8B;SACtE;KACF;IACD,MAAM,EAAE;QACN,GAAG,EAAE;YACH,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,+CAAyB;SACjD;KACF;IACD,KAAK,EAAE;QACL,MAAM,EAAE;YACN,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,CAAA,oCAAyD,CAAA;SAC5F;QACD,gBAAgB,EAAE;YAChB,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,CAAA,oCAAyD,CAAA;SAC5F;QACD,cAAc,EAAE;YACd,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,CAAA,oCAAyD,CAAA;SAC5F;QAED,GAAG,EAAE;YACH,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,wCAAgC;YAC7D,CAAC,KAAK,CAAC,oBAAoB,CAAC,EAAE,iCAAyB;YACvD,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,oCAA4B;YAC9D,CAAC,KAAK,CAAC,6BAA6B,CAAC,EAAE,kDAA0C;SAClF;KACF;IACD,GAAG,EAAE;QACH,MAAM,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,qCAA8B,EAAE;QAChE,gBAAgB,EAAE;YAChB,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,qCAA8B;SACrD;QACD,cAAc,EAAE;YACd,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,qCAA8B;SACrD;QACD,GAAG,EAAE;YACH,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,iCAA2B;YACnD,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,gCAA0B;SAC3D;KACF;CACF,CAAC;AAEF,MAAM,yBAAyB,GAAgC;IAC7D,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,+BAAyB;IACrD,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,wCAA0B;IACnD,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,qCAA+B;IACzD,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,+CAAwC;
|
|
1
|
+
{"version":3,"file":"payment-network-factory.js","sourceRoot":"","sources":["../src/payment-network-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,4 +8,5 @@ export type TheGraphClientOptions = RequestConfig & {
|
|
|
8
8
|
baseUrl?: string;
|
|
9
9
|
};
|
|
10
10
|
export declare const getTheGraphSuperfluidClient: (network: string, options?: TheGraphClientOptions) => TheGraphSuperfluidClient;
|
|
11
|
+
export declare const buildTheGraphSuperfluidUrl: (baseUrl: string | undefined, network: string) => string;
|
|
11
12
|
//# sourceMappingURL=superfluid.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superfluid.d.ts","sourceRoot":"","sources":["../../src/thegraph/superfluid.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"superfluid.d.ts","sourceRoot":"","sources":["../../src/thegraph/superfluid.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,gCAAgC,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAmB1D;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,UAAU,CAAC,OAAO,MAAM,CAAC,CAAC;AACjE,MAAM,MAAM,qBAAqB,GAAG,aAAa,GAAG;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,2BAA2B,YAC7B,MAAM,YACL,qBAAqB,KAC9B,wBAIF,CAAC;AAEF,eAAO,MAAM,0BAA0B,YAC5B,MAAM,GAAG,SAAS,WAClB,MAAM,KACd,MASF,CAAC"}
|
|
@@ -1,24 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getTheGraphSuperfluidClient = void 0;
|
|
3
|
+
exports.buildTheGraphSuperfluidUrl = exports.getTheGraphSuperfluidClient = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
|
5
5
|
const graphql_request_1 = require("graphql-request");
|
|
6
6
|
const graphql_superfluid_1 = require("./generated/graphql-superfluid");
|
|
7
7
|
const BASE_URL = `https://subgraph-endpoints.superfluid.dev`;
|
|
8
8
|
const NETWORK_TO_URL = {
|
|
9
|
-
|
|
9
|
+
'arbitrum-one': 'arbitrum-one',
|
|
10
10
|
avalanche: 'avalanche-c',
|
|
11
|
+
base: 'base-mainnet',
|
|
12
|
+
bsc: 'bsc-mainnet',
|
|
13
|
+
celo: 'celo-mainnet',
|
|
14
|
+
mainnet: 'eth-mainnet',
|
|
15
|
+
matic: 'polygon-mainnet',
|
|
16
|
+
optimism: 'optimism-mainnet',
|
|
17
|
+
sepolia: 'eth-sepolia',
|
|
18
|
+
xdai: 'xdai-mainnet',
|
|
11
19
|
};
|
|
12
20
|
const getTheGraphSuperfluidClient = (network, options) => {
|
|
13
21
|
const _a = options !== null && options !== void 0 ? options : {}, { baseUrl: _baseUrl } = _a, clientOptions = tslib_1.__rest(_a, ["baseUrl"]);
|
|
14
|
-
const
|
|
22
|
+
const url = (0, exports.buildTheGraphSuperfluidUrl)(_baseUrl, network);
|
|
23
|
+
return (0, graphql_superfluid_1.getSdk)(new graphql_request_1.GraphQLClient(url, clientOptions));
|
|
24
|
+
};
|
|
25
|
+
exports.getTheGraphSuperfluidClient = getTheGraphSuperfluidClient;
|
|
26
|
+
const buildTheGraphSuperfluidUrl = (baseUrl, network) => {
|
|
15
27
|
// Note: it is also possible to use the IPFS hash of the subgraph
|
|
16
28
|
// eg. /subgraphs/id/QmcCaSkefrmhe4xQj6Y6BBbHiFkbrn6UGDEBUWER7nt399
|
|
17
29
|
// which is a better security but would require an update of the
|
|
18
30
|
// library each time the subgraph is updated, which isn't ideal
|
|
19
31
|
// for early testing.
|
|
20
|
-
|
|
21
|
-
|
|
32
|
+
return network === 'private'
|
|
33
|
+
? 'http://localhost:8000/subgraphs/name/superfluid-finance/protocol-v1-goerli'
|
|
34
|
+
: `${baseUrl || BASE_URL}/${NETWORK_TO_URL[network]}/protocol-v1`;
|
|
22
35
|
};
|
|
23
|
-
exports.
|
|
36
|
+
exports.buildTheGraphSuperfluidUrl = buildTheGraphSuperfluidUrl;
|
|
24
37
|
//# sourceMappingURL=superfluid.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"superfluid.js","sourceRoot":"","sources":["../../src/thegraph/superfluid.ts"],"names":[],"mappings":";;;;AAAA,qDAAgD;AAChD,uEAAwD;AAGxD,MAAM,QAAQ,GAAG,2CAA2C,CAAC;AAC7D,MAAM,cAAc,GAA2B;IAC7C,QAAQ,EAAE,kBAAkB;IAC5B,
|
|
1
|
+
{"version":3,"file":"superfluid.js","sourceRoot":"","sources":["../../src/thegraph/superfluid.ts"],"names":[],"mappings":";;;;AAAA,qDAAgD;AAChD,uEAAwD;AAGxD,MAAM,QAAQ,GAAG,2CAA2C,CAAC;AAC7D,MAAM,cAAc,GAA2B;IAC7C,cAAc,EAAE,cAAc;IAC9B,SAAS,EAAE,aAAa;IACxB,IAAI,EAAE,cAAc;IACpB,GAAG,EAAE,aAAa;IAClB,IAAI,EAAE,cAAc;IACpB,OAAO,EAAE,aAAa;IACtB,KAAK,EAAE,iBAAiB;IACxB,QAAQ,EAAE,kBAAkB;IAC5B,OAAO,EAAE,aAAa;IACtB,IAAI,EAAE,cAAc;CACrB,CAAC;AAaK,MAAM,2BAA2B,GAAG,CACzC,OAAe,EACf,OAA+B,EACL,EAAE;IAC5B,MAAM,KAA0C,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,EAAvD,EAAE,OAAO,EAAE,QAAQ,OAAoC,EAA/B,aAAa,sBAArC,WAAuC,CAAgB,CAAC;IAC9D,MAAM,GAAG,GAAG,IAAA,kCAA0B,EAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC1D,OAAO,IAAA,2BAAM,EAAC,IAAI,+BAAa,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC;AAPW,QAAA,2BAA2B,+BAOtC;AAEK,MAAM,0BAA0B,GAAG,CACxC,OAA2B,EAC3B,OAAe,EACP,EAAE;IACV,iEAAiE;IACjE,oEAAoE;IACpE,iEAAiE;IACjE,gEAAgE;IAChE,sBAAsB;IACtB,OAAO,OAAO,KAAK,SAAS;QAC1B,CAAC,CAAC,4EAA4E;QAC9E,CAAC,CAAC,GAAG,OAAO,IAAI,QAAQ,IAAI,cAAc,CAAC,OAAO,CAAC,cAAc,CAAC;AACtE,CAAC,CAAC;AAZW,QAAA,0BAA0B,8BAYrC"}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CurrencyTypes, ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types';
|
|
1
|
+
import { ClientTypes, CurrencyTypes, ExtensionTypes, PaymentTypes, RequestLogicTypes } from '@requestnetwork/types';
|
|
2
2
|
import { BigNumber, BigNumberish, Contract } from 'ethers';
|
|
3
3
|
import { LogDescription } from 'ethers/lib/utils';
|
|
4
4
|
import { ContractArtifact, DeploymentInformation } from '@requestnetwork/smart-contracts';
|
|
@@ -28,6 +28,17 @@ export declare const calculateEscrowState: (escrowEvents: PaymentTypes.EscrowNet
|
|
|
28
28
|
export declare function getPaymentNetworkExtension<T = any>(request: Pick<RequestLogicTypes.IRequest, 'extensions'>): ExtensionTypes.IPaymentNetworkState<T> | undefined;
|
|
29
29
|
/** Gets a payment (or refund) reference for any type of Request */
|
|
30
30
|
export declare function getPaymentReference(request: Pick<RequestLogicTypes.IRequest, 'extensions' | 'requestId'>, event?: PaymentTypes.EVENTS_NAMES): string | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* Format a request we wish to build a payment for.
|
|
33
|
+
* If the request does not use the meta-pn, it returns it as is.
|
|
34
|
+
* Otherwise, returns the request formatted with the pn of interest
|
|
35
|
+
*/
|
|
36
|
+
export declare function flattenRequestByPnId({ request, pnIdentifier, }: {
|
|
37
|
+
request: ClientTypes.IRequestData;
|
|
38
|
+
pnIdentifier?: string;
|
|
39
|
+
}): ClientTypes.IRequestData;
|
|
40
|
+
/** Gets all payment references associated to a request using meta-pn */
|
|
41
|
+
export declare const getPaymentReferencesForMetaPnRequest: (request: ClientTypes.IRequestData) => (string | undefined)[];
|
|
31
42
|
/**
|
|
32
43
|
* Returns the hash of a payment reference.
|
|
33
44
|
* @see getPaymentReference
|
package/dist/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAkB,MAAM,QAAQ,CAAC;AAC3E,OAAO,EAAyB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AACA,OAAO,EACL,WAAW,EACX,aAAa,EACb,cAAc,EACd,YAAY,EACZ,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAkB,MAAM,QAAQ,CAAC;AAC3E,OAAO,EAAyB,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAK1F;;GAEG;AACH,eAAO,MAAM,YAAY,+BAAgC,cAAc,MAKtE,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,qBAAqB,WACxB,YAAY,YACV,KAAK,cAAc,kBAAkB,EAAE,UAAU,GAAG,MAAM,CAAC,KACpE,SAGF,CAAC;AAEF,eAAO,MAAM,wBAAwB,WAC3B,YAAY,YACV,KAAK,cAAc,kBAAkB,EAAE,UAAU,GAAG,MAAM,CAAC,KACpE,SAGF,CAAC;AAsBF,MAAM,MAAM,gCAAgC,GAAG,qBAAqB,GAAG;IAAE,eAAe,EAAE,MAAM,CAAA;CAAE,CAAC;AACnG,MAAM,MAAM,wBAAwB,CAAC,eAAe,SAAS,OAAO,IAAI,CACtE,OAAO,EAAE,aAAa,CAAC,WAAW,EAClC,qBAAqB,EAAE,MAAM,KAC1B,eAAe,SAAS,KAAK,GAC9B,gCAAgC,GAChC,gCAAgC,GAAG,IAAI,CAAC;AAM5C,eAAO,MAAM,4BAA4B,wFAI7B,iBAAiB,QAAQ,CAAC,2HAyBrC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB,iBACjB,aAAa,kBAAkB,EAAE,KAC9C,aAAa,YAAY,GAAG,IAiB9B,CAAC;AAEF;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,GAAG,GAAG,EAChD,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,YAAY,CAAC,GACtD,cAAc,CAAC,oBAAoB,CAAC,CAAC,CAAC,GAAG,SAAS,CAIpD;AAgBD,mEAAmE;AACnE,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,YAAY,GAAG,WAAW,CAAC,EACrE,KAAK,GAAE,YAAY,CAAC,YAAgD,GACnE,MAAM,GAAG,SAAS,CAapB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,EACnC,OAAO,EACP,YAAY,GACb,EAAE;IACD,OAAO,EAAE,WAAW,CAAC,YAAY,CAAC;IAClC,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,WAAW,CAAC,YAAY,CAe3B;AAED,yEAAyE;AACzE,eAAO,MAAM,oCAAoC,YAAa,YAAY,YAAY,2BAcrF,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,qBAAsB,MAAM,KAAG,MAExD,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE;IAC1B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;IACpF,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;CAgBhG,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,gBAAgB,8LAU1B,CAAC"}
|
package/dist/utils.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.transformNonNull = exports.formatAddress = exports.hashReference = exports.getPaymentReference = exports.getPaymentNetworkExtension = exports.calculateEscrowState = exports.makeGetDeploymentInformation = exports.unpadAmountFromChainlink = exports.padAmountForChainlink = exports.parseLogArgs = void 0;
|
|
3
|
+
exports.transformNonNull = exports.formatAddress = exports.hashReference = exports.getPaymentReferencesForMetaPnRequest = exports.flattenRequestByPnId = exports.getPaymentReference = exports.getPaymentNetworkExtension = exports.calculateEscrowState = exports.makeGetDeploymentInformation = exports.unpadAmountFromChainlink = exports.padAmountForChainlink = exports.parseLogArgs = void 0;
|
|
4
4
|
const currency_1 = require("@requestnetwork/currency");
|
|
5
5
|
const types_1 = require("@requestnetwork/types");
|
|
6
6
|
const ethers_1 = require("ethers");
|
|
7
7
|
const utils_1 = require("ethers/lib/utils");
|
|
8
8
|
const balance_error_1 = require("./balance-error");
|
|
9
9
|
const PaymentReferenceCalculator = require("./payment-reference-calculator");
|
|
10
|
+
const utils_2 = require("@requestnetwork/utils");
|
|
10
11
|
/**
|
|
11
12
|
* Converts the Log's args from array to an object with keys being the name of the arguments
|
|
12
13
|
*/
|
|
@@ -123,6 +124,37 @@ function getPaymentReference(request, event = types_1.PaymentTypes.EVENTS_NAMES.
|
|
|
123
124
|
return PaymentReferenceCalculator.calculate(requestId, salt, info);
|
|
124
125
|
}
|
|
125
126
|
exports.getPaymentReference = getPaymentReference;
|
|
127
|
+
/**
|
|
128
|
+
* Format a request we wish to build a payment for.
|
|
129
|
+
* If the request does not use the meta-pn, it returns it as is.
|
|
130
|
+
* Otherwise, returns the request formatted with the pn of interest
|
|
131
|
+
*/
|
|
132
|
+
function flattenRequestByPnId({ request, pnIdentifier, }) {
|
|
133
|
+
const pn = getPaymentNetworkExtension(request);
|
|
134
|
+
if (!(pn === null || pn === void 0 ? void 0 : pn.id) || pn.id !== types_1.ExtensionTypes.PAYMENT_NETWORK_ID.META)
|
|
135
|
+
return request;
|
|
136
|
+
if (!pnIdentifier)
|
|
137
|
+
throw new Error('Missing pn identifier');
|
|
138
|
+
const extensionOfInterest = pn.values[pnIdentifier];
|
|
139
|
+
if (!extensionOfInterest)
|
|
140
|
+
throw new Error('Invalid pn identifier');
|
|
141
|
+
const formattedRequest = Object.assign(Object.assign({}, (0, utils_2.deepCopy)(request)), { extensions: {
|
|
142
|
+
[extensionOfInterest.id]: extensionOfInterest,
|
|
143
|
+
} });
|
|
144
|
+
return formattedRequest;
|
|
145
|
+
}
|
|
146
|
+
exports.flattenRequestByPnId = flattenRequestByPnId;
|
|
147
|
+
/** Gets all payment references associated to a request using meta-pn */
|
|
148
|
+
const getPaymentReferencesForMetaPnRequest = (request) => {
|
|
149
|
+
var _a;
|
|
150
|
+
if (!((_a = request === null || request === void 0 ? void 0 : request.extensions) === null || _a === void 0 ? void 0 : _a[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.META]))
|
|
151
|
+
throw new Error('This request does not have a meta-pn extension');
|
|
152
|
+
const pnKeys = Object.keys(request.extensions[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.META].values);
|
|
153
|
+
const pnIdentifiers = pnKeys.filter((key) => request.extensions[types_1.ExtensionTypes.PAYMENT_NETWORK_ID.META].values[key].type ===
|
|
154
|
+
types_1.ExtensionTypes.TYPE.PAYMENT_NETWORK);
|
|
155
|
+
return pnIdentifiers.map((pnIdentifier) => getPaymentReference(flattenRequestByPnId({ request, pnIdentifier })));
|
|
156
|
+
};
|
|
157
|
+
exports.getPaymentReferencesForMetaPnRequest = getPaymentReferencesForMetaPnRequest;
|
|
126
158
|
/**
|
|
127
159
|
* Returns the hash of a payment reference.
|
|
128
160
|
* @see getPaymentReference
|
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;;AAAA,uDAA8D;AAC9D,
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@requestnetwork/payment-detection",
|
|
3
|
-
"version": "0.43.1-next.
|
|
3
|
+
"version": "0.43.1-next.2048+a9ce591b",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"access": "public"
|
|
6
6
|
},
|
|
@@ -41,10 +41,10 @@
|
|
|
41
41
|
"codegen": "graphql-codegen --config codegen.yml ; graphql-codegen --config codegen-superfluid.yml; graphql-codegen --config codegen-near.yml"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"@requestnetwork/currency": "0.16.1-next.
|
|
45
|
-
"@requestnetwork/smart-contracts": "0.36.1-next.
|
|
46
|
-
"@requestnetwork/types": "0.43.1-next.
|
|
47
|
-
"@requestnetwork/utils": "0.43.1-next.
|
|
44
|
+
"@requestnetwork/currency": "0.16.1-next.2048+a9ce591b",
|
|
45
|
+
"@requestnetwork/smart-contracts": "0.36.1-next.2048+a9ce591b",
|
|
46
|
+
"@requestnetwork/types": "0.43.1-next.2048+a9ce591b",
|
|
47
|
+
"@requestnetwork/utils": "0.43.1-next.2048+a9ce591b",
|
|
48
48
|
"ethers": "5.5.1",
|
|
49
49
|
"graphql": "16.8.1",
|
|
50
50
|
"graphql-request": "6.1.0",
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
"@graphql-codegen/typescript-operations": "4.0.1",
|
|
62
62
|
"@graphql-codegen/typescript-resolvers": "4.0.1",
|
|
63
63
|
"@jridgewell/gen-mapping": "0.3.2",
|
|
64
|
-
"@requestnetwork/advanced-logic": "0.42.1-next.
|
|
64
|
+
"@requestnetwork/advanced-logic": "0.42.1-next.2048+a9ce591b",
|
|
65
65
|
"@types/jest": "29.5.6",
|
|
66
66
|
"jest": "29.5.0",
|
|
67
67
|
"jest-junit": "16.0.0",
|
|
@@ -70,5 +70,5 @@
|
|
|
70
70
|
"ts-node": "10.9.1",
|
|
71
71
|
"typescript": "5.1.3"
|
|
72
72
|
},
|
|
73
|
-
"gitHead": "
|
|
73
|
+
"gitHead": "a9ce591b8dc8f14034aa5a1efe64d00cd0ea5077"
|
|
74
74
|
}
|