@0xpolygonid/js-sdk 1.33.1 → 1.33.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.
- package/dist/browser/esm/index.js +1118 -718
- package/dist/browser/esm/index.js.map +1 -1
- package/dist/browser/umd/index.global.js +182 -59
- package/dist/browser/umd/index.global.js.map +1 -1
- package/dist/node/cjs/index.cjs +1325 -914
- package/dist/node/cjs/index.cjs.map +1 -1
- package/dist/node/esm/index.js +1118 -718
- package/dist/node/esm/index.js.map +1 -1
- package/dist/types/iden3comm/handlers/credential-proposal.d.ts.map +1 -1
- package/dist/types/iden3comm/handlers/payment.d.ts +14 -5
- package/dist/types/iden3comm/handlers/payment.d.ts.map +1 -1
- package/dist/types/iden3comm/types/protocol/payment.d.ts +58 -9
- package/dist/types/iden3comm/types/protocol/payment.d.ts.map +1 -1
- package/dist/types/utils/index.d.ts +2 -0
- package/dist/types/utils/index.d.ts.map +1 -1
- package/dist/types/utils/payments/evm.d.ts +19 -0
- package/dist/types/utils/payments/evm.d.ts.map +1 -0
- package/dist/types/utils/payments/solana.d.ts +88 -0
- package/dist/types/utils/payments/solana.d.ts.map +1 -0
- package/dist/types/verifiable/constants.d.ts +16 -3
- package/dist/types/verifiable/constants.d.ts.map +1 -1
- package/package.json +5 -1
- package/src/iden3comm/handlers/credential-proposal.ts +4 -1
- package/src/iden3comm/handlers/payment.ts +138 -131
- package/src/iden3comm/types/protocol/payment.ts +79 -10
- package/src/utils/index.ts +2 -0
- package/src/utils/payments/evm.ts +152 -0
- package/src/utils/payments/solana.ts +360 -0
- package/src/verifiable/constants.ts +17 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-proposal.d.ts","sourceRoot":"","sources":["../../../../src/iden3comm/handlers/credential-proposal.ts"],"names":[],"mappings":"AACA,OAAO,EACL,UAAU,EACV,YAAY,EAGZ,WAAW,EACX,eAAe,EACf,YAAY,EACb,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,GAAG,EAAoB,MAAM,sBAAsB,CAAC;AAG7D,OAAO,EACL,QAAQ,EACR,sBAAsB,EACtB,eAAe,EACf,yBAAyB,EAC1B,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjD,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAG3B,wFAAwF;AACxF,MAAM,MAAM,8BAA8B,GAAG;IAC3C,WAAW,EAAE,yBAAyB,EAAE,CAAC;IACzC,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC;AAEF,yEAAyE;AACzE,MAAM,MAAM,uBAAuB,GAAG;IACpC,YAAY,CAAC,EAAE,IAAI,CAAC;CACrB,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,GAAG,EACX,QAAQ,EAAE,GAAG,EACb,IAAI,EAAE,8BAA8B,GACnC,sBAAsB,
|
|
1
|
+
{"version":3,"file":"credential-proposal.d.ts","sourceRoot":"","sources":["../../../../src/iden3comm/handlers/credential-proposal.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { BasicMessage, IPackageManager, PackerParams } from '../types';
|
|
2
2
|
import { DID } from '@iden3/js-iden3-core';
|
|
3
3
|
import { AbstractMessageHandler, BasicHandlerOptions, IProtocolMessageHandler } from './message-handler';
|
|
4
|
-
import { Iden3PaymentRailsERC20RequestV1,
|
|
4
|
+
import { Iden3PaymentRailsERC20RequestV1, MultiChainPaymentConfig, PaymentMessage, PaymentRequestInfo, PaymentRequestMessage, PaymentRequestTypeUnion, PaymentTypeUnion } from '../types/protocol/payment';
|
|
5
5
|
import { Signer } from 'ethers';
|
|
6
6
|
import { Resolvable } from 'did-resolver';
|
|
7
|
+
import { Keypair } from '@solana/web3.js';
|
|
7
8
|
/** @beta PaymentRequestCreationOptions represents payment-request creation options */
|
|
8
9
|
export type PaymentRequestCreationOptions = {
|
|
9
10
|
expires_time?: Date;
|
|
@@ -12,6 +13,11 @@ export type PaymentRequestCreationOptions = {
|
|
|
12
13
|
export type PaymentCreationOptions = {
|
|
13
14
|
expires_time?: Date;
|
|
14
15
|
};
|
|
16
|
+
/** @beta CreatePaymentRailsV1Options holds options for PaymentRailsV1 creation */
|
|
17
|
+
export type CreatePaymentRailsV1Options = {
|
|
18
|
+
ethSigner?: Signer;
|
|
19
|
+
solSigner?: Keypair;
|
|
20
|
+
};
|
|
15
21
|
/**
|
|
16
22
|
* @beta
|
|
17
23
|
* createPaymentRequest is a function to create protocol payment-request message
|
|
@@ -22,7 +28,6 @@ export type PaymentCreationOptions = {
|
|
|
22
28
|
* @returns `PaymentRequestMessage`
|
|
23
29
|
*/
|
|
24
30
|
export declare function createPaymentRequest(sender: DID, receiver: DID, agent: string, payments: PaymentRequestInfo[], opts?: PaymentRequestCreationOptions): PaymentRequestMessage;
|
|
25
|
-
export declare function verifyEIP712TypedData(data: Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1, resolver: Resolvable): Promise<string>;
|
|
26
31
|
/**
|
|
27
32
|
* @beta
|
|
28
33
|
* PaymentRailsInfo represents payment info for payment rails
|
|
@@ -91,11 +96,13 @@ export interface IPaymentHandler {
|
|
|
91
96
|
* @param {DID} sender - sender did
|
|
92
97
|
* @param {DID} receiver - receiver did
|
|
93
98
|
* @param {string} agent - agent URL
|
|
94
|
-
* @param {Signer} signer -
|
|
99
|
+
* @param {Signer} signer - ETH signer
|
|
95
100
|
* @param payments - payment options
|
|
101
|
+
* @param {CreatePaymentRailsV1Options} createOptions - options for payment rails creation
|
|
96
102
|
* @returns {Promise<PaymentRequestMessage>}
|
|
97
103
|
*/
|
|
98
|
-
createPaymentRailsV1(sender: DID, receiver: DID, agent: string, signer: Signer,
|
|
104
|
+
createPaymentRailsV1(sender: DID, receiver: DID, agent: string, signer: Signer, // the same as createOptions.ethSigner (for compatibility)
|
|
105
|
+
payments: PaymentRailsInfo[], createOptions?: CreatePaymentRailsV1Options): Promise<PaymentRequestMessage>;
|
|
99
106
|
}
|
|
100
107
|
/** @beta PaymentRequestMessageHandlerOptions represents payment-request handler options */
|
|
101
108
|
export type PaymentRequestMessageHandlerOptions = BasicHandlerOptions & {
|
|
@@ -149,10 +156,12 @@ export declare class PaymentHandler extends AbstractMessageHandler implements IP
|
|
|
149
156
|
/**
|
|
150
157
|
* @inheritdoc IPaymentHandler#createPaymentRailsV1
|
|
151
158
|
*/
|
|
152
|
-
createPaymentRailsV1(sender: DID, receiver: DID, agent: string, signer: Signer, payments: PaymentRailsInfo[]): Promise<PaymentRequestMessage>;
|
|
159
|
+
createPaymentRailsV1(sender: DID, receiver: DID, agent: string, signer: Signer, payments: PaymentRailsInfo[], createOptions?: CreatePaymentRailsV1Options): Promise<PaymentRequestMessage>;
|
|
153
160
|
private packMessage;
|
|
154
161
|
private handleIden3PaymentRequestCryptoV1;
|
|
155
162
|
private handleIden3PaymentRailsRequestV1;
|
|
163
|
+
private handleIden3PaymentRailsSolanaRequestV1;
|
|
164
|
+
private handleIden3PaymentRailsSolanaSPLRequestV1;
|
|
156
165
|
private handleIden3PaymentRailsERC20RequestV1;
|
|
157
166
|
}
|
|
158
167
|
//# sourceMappingURL=payment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../../../src/iden3comm/handlers/payment.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAEvE,OAAO,EAAE,GAAG,EAAoB,MAAM,sBAAsB,CAAC;AAI7D,OAAO,EACL,sBAAsB,EACtB,mBAAmB,EACnB,uBAAuB,EACxB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,
|
|
1
|
+
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../../../src/iden3comm/handlers/payment.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,7 +17,7 @@ export type PaymentRequestMessageBody = {
|
|
|
17
17
|
/** @beta PaymentRequestInfo is struct the represents payment info for payment-request */
|
|
18
18
|
export type PaymentRequestInfo = {
|
|
19
19
|
credentials: CredentialSchemaInfo[];
|
|
20
|
-
data: Iden3PaymentRequestCryptoV1 | (Iden3PaymentRequestCryptoV1 | Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1)[];
|
|
20
|
+
data: Iden3PaymentRequestCryptoV1 | (Iden3PaymentRequestCryptoV1 | Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1 | Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1)[];
|
|
21
21
|
description?: string;
|
|
22
22
|
};
|
|
23
23
|
/** @beta Iden3PaymentRequestCryptoV1 is struct the represents payment data info for payment-request */
|
|
@@ -31,6 +31,7 @@ export type Iden3PaymentRequestCryptoV1 = {
|
|
|
31
31
|
currency: SupportedCurrencies | string;
|
|
32
32
|
expiration?: string;
|
|
33
33
|
};
|
|
34
|
+
/** @beta Iden3PaymentRailsRequestV1 is struct the represents EVM native payment rails request */
|
|
34
35
|
export type Iden3PaymentRailsRequestV1 = {
|
|
35
36
|
type: PaymentRequestDataType.Iden3PaymentRailsRequestV1;
|
|
36
37
|
'@context': string | (string | object)[];
|
|
@@ -41,11 +42,23 @@ export type Iden3PaymentRailsRequestV1 = {
|
|
|
41
42
|
metadata: string;
|
|
42
43
|
proof: EthereumEip712Signature2021 | EthereumEip712Signature2021[];
|
|
43
44
|
};
|
|
45
|
+
/** @beta Iden3PaymentRailsERC20RequestV1 is struct the represents EVM ERC 20 payment rails request */
|
|
44
46
|
export type Iden3PaymentRailsERC20RequestV1 = Omit<Required<Iden3PaymentRailsRequestV1>, 'type'> & {
|
|
45
47
|
tokenAddress: string;
|
|
46
48
|
features?: PaymentFeatures[];
|
|
47
49
|
type: PaymentRequestDataType.Iden3PaymentRailsERC20RequestV1;
|
|
48
50
|
};
|
|
51
|
+
/** @beta Iden3PaymentRailsSolanaRequestV1 is struct the represents Solana native payment rails request */
|
|
52
|
+
export type Iden3PaymentRailsSolanaRequestV1 = Omit<Required<Iden3PaymentRailsRequestV1>, 'type' | 'proof'> & {
|
|
53
|
+
type: PaymentRequestDataType.Iden3PaymentRailsSolanaRequestV1;
|
|
54
|
+
proof: Iden3SolanaEd25519SignatureV1 | Iden3SolanaEd25519SignatureV1[];
|
|
55
|
+
};
|
|
56
|
+
/** @beta Iden3PaymentRailsSolanaSPLRequestV1 is struct the represents Solana SPL payment rails request */
|
|
57
|
+
export type Iden3PaymentRailsSolanaSPLRequestV1 = Omit<Required<Iden3PaymentRailsERC20RequestV1>, 'type' | 'proof'> & {
|
|
58
|
+
type: PaymentRequestDataType.Iden3PaymentRailsSolanaSPLRequestV1;
|
|
59
|
+
proof: Iden3SolanaEd25519SignatureV1 | Iden3SolanaEd25519SignatureV1[];
|
|
60
|
+
};
|
|
61
|
+
/** @beta EthereumEip712Signature2021 is struct the represents EIP-712 signature for Ethereum */
|
|
49
62
|
export type EthereumEip712Signature2021 = {
|
|
50
63
|
type: SupportedPaymentProofType.EthereumEip712Signature2021;
|
|
51
64
|
proofPurpose: string;
|
|
@@ -63,6 +76,19 @@ export type EthereumEip712Signature2021 = {
|
|
|
63
76
|
};
|
|
64
77
|
};
|
|
65
78
|
};
|
|
79
|
+
/** @beta Iden3SolanaEd25519SignatureV1 is struct the represents Ed25519 signature for Solana Payment Instruction */
|
|
80
|
+
export type Iden3SolanaEd25519SignatureV1 = {
|
|
81
|
+
type: SupportedPaymentProofType.SolanaEd25519Signature2025;
|
|
82
|
+
proofPurpose: string;
|
|
83
|
+
proofValue: string;
|
|
84
|
+
created: string;
|
|
85
|
+
verificationMethod: string;
|
|
86
|
+
domain: {
|
|
87
|
+
version: 'SolanaEd25519NativeV1' | 'SolanaEd25519SPLV1';
|
|
88
|
+
chainId: string;
|
|
89
|
+
verifyingContract: string;
|
|
90
|
+
};
|
|
91
|
+
};
|
|
66
92
|
/** @beta PaymentMessage is struct the represents payment message */
|
|
67
93
|
export type PaymentMessage = BasicMessage & {
|
|
68
94
|
body: PaymentMessageBody;
|
|
@@ -104,26 +130,49 @@ export type Iden3PaymentRailsERC20V1 = {
|
|
|
104
130
|
tokenAddress: string;
|
|
105
131
|
};
|
|
106
132
|
};
|
|
133
|
+
/** @beta Iden3PaymentRailsSolanaV1 is struct the represents payment info for Iden3PaymentRailsSolanaV1 */
|
|
134
|
+
export type Iden3PaymentRailsSolanaV1 = {
|
|
135
|
+
nonce: string;
|
|
136
|
+
type: 'Iden3PaymentRailsSolanaV1';
|
|
137
|
+
'@context': string | (string | object)[];
|
|
138
|
+
paymentData: {
|
|
139
|
+
txId: string;
|
|
140
|
+
chainId: string;
|
|
141
|
+
};
|
|
142
|
+
};
|
|
143
|
+
/** @beta Iden3PaymentRailsSolanaSPLV1 is struct the represents payment info for Iden3PaymentRailsSolanaSPLV1 */
|
|
144
|
+
export type Iden3PaymentRailsSolanaSPLV1 = {
|
|
145
|
+
nonce: string;
|
|
146
|
+
type: 'Iden3PaymentRailsSolanaSPLV1';
|
|
147
|
+
'@context': string | (string | object)[];
|
|
148
|
+
paymentData: {
|
|
149
|
+
txId: string;
|
|
150
|
+
chainId: string;
|
|
151
|
+
tokenAddress: string;
|
|
152
|
+
};
|
|
153
|
+
};
|
|
107
154
|
/** @beta MultiChainPaymentConfig is struct that represents payments contracts information for different chains */
|
|
108
155
|
export type MultiChainPaymentConfig = {
|
|
109
156
|
chainId: string;
|
|
110
157
|
paymentRails: string;
|
|
111
158
|
recipient: string;
|
|
112
|
-
options:
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
159
|
+
options: MultiChainPaymentConfigOption[];
|
|
160
|
+
};
|
|
161
|
+
/** @beta MultiChainPaymentConfigOption is struct that represents payment options for different chains */
|
|
162
|
+
export type MultiChainPaymentConfigOption = {
|
|
163
|
+
id: string;
|
|
164
|
+
type: PaymentRequestDataType.Iden3PaymentRailsRequestV1 | PaymentRequestDataType.Iden3PaymentRailsERC20RequestV1 | PaymentRequestDataType.Iden3PaymentRailsSolanaRequestV1 | PaymentRequestDataType.Iden3PaymentRailsSolanaSPLRequestV1;
|
|
165
|
+
contractAddress?: string;
|
|
166
|
+
features?: PaymentFeatures[];
|
|
118
167
|
};
|
|
119
168
|
/**
|
|
120
169
|
* @beta
|
|
121
170
|
* PaymentRequestTypeUnion is a type of supported payment request types
|
|
122
171
|
*/
|
|
123
|
-
export type PaymentRequestTypeUnion = Iden3PaymentRequestCryptoV1 | Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1;
|
|
172
|
+
export type PaymentRequestTypeUnion = Iden3PaymentRequestCryptoV1 | Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1 | Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1;
|
|
124
173
|
/**
|
|
125
174
|
* @beta
|
|
126
175
|
* PaymentTypeUnion is a type of supported payment types
|
|
127
176
|
*/
|
|
128
|
-
export type PaymentTypeUnion = Iden3PaymentCryptoV1 | Iden3PaymentRailsV1 | Iden3PaymentRailsERC20V1;
|
|
177
|
+
export type PaymentTypeUnion = Iden3PaymentCryptoV1 | Iden3PaymentRailsV1 | Iden3PaymentRailsERC20V1 | Iden3PaymentRailsSolanaV1 | Iden3PaymentRailsSolanaSPLV1;
|
|
129
178
|
//# sourceMappingURL=payment.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../../../../src/iden3comm/types/protocol/payment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,KAAK,CAAC;AACnC,OAAO,EACL,eAAe,EACf,sBAAsB,EACtB,mBAAmB,EACnB,yBAAyB,EAC1B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAEhD,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG,YAAY,GAAG;IACjD,IAAI,EAAE,yBAAyB,CAAC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,OAAO,qBAAqB,CAAC,4BAA4B,CAAC;CACjE,CAAC;AAEF,wFAAwF;AACxF,MAAM,MAAM,yBAAyB,GAAG;IACtC,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,kBAAkB,EAAE,CAAC;CAChC,CAAC;AAEF,yFAAyF;AACzF,MAAM,MAAM,kBAAkB,GAAG;IAC/B,WAAW,EAAE,oBAAoB,EAAE,CAAC;IACpC,IAAI,EACA,2BAA2B,GAC3B,CACI,2BAA2B,GAC3B,0BAA0B,GAC1B,+BAA+B,
|
|
1
|
+
{"version":3,"file":"payment.d.ts","sourceRoot":"","sources":["../../../../../src/iden3comm/types/protocol/payment.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Signer } from 'ethers';
|
|
2
|
+
import { Iden3PaymentRailsERC20RequestV1, Iden3PaymentRailsRequestV1, MultiChainPaymentConfigOption } from '../../iden3comm';
|
|
3
|
+
import { Resolvable } from 'did-resolver';
|
|
4
|
+
/**
|
|
5
|
+
* @beta
|
|
6
|
+
* buildEvmPayment creates an EVM-based payment request and signs it using EIP-712.
|
|
7
|
+
* @param {Signer} signer - EIP-712 compatible signer
|
|
8
|
+
* @param {MultiChainPaymentConfigOption} option - payment option configuration
|
|
9
|
+
* @param {string} chainId - EVM chain ID
|
|
10
|
+
* @param {string} paymentRails - payment rails contract address
|
|
11
|
+
* @param {string} recipient - recipient address
|
|
12
|
+
* @param {bigint} amount - payment amount in smallest units
|
|
13
|
+
* @param {Date} expirationDateRequired - expiration date
|
|
14
|
+
* @param {bigint} nonce - unique nonce for the payment
|
|
15
|
+
* @returns {Promise<Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1>} payment request object
|
|
16
|
+
*/
|
|
17
|
+
export declare const buildEvmPayment: (signer: Signer, option: MultiChainPaymentConfigOption, chainId: string, paymentRails: string, recipient: string, amount: bigint, expirationDateRequired: Date, nonce: bigint) => Promise<Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1>;
|
|
18
|
+
export declare function verifyEIP712TypedData(data: Iden3PaymentRailsRequestV1 | Iden3PaymentRailsERC20RequestV1, resolver: Resolvable): Promise<string>;
|
|
19
|
+
//# sourceMappingURL=evm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evm.d.ts","sourceRoot":"","sources":["../../../../src/utils/payments/evm.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAU,MAAM,QAAQ,CAAC;AACxC,OAAO,EAEL,+BAA+B,EAC/B,0BAA0B,EAC1B,6BAA6B,EAC9B,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,GAC1B,QAAQ,MAAM,EACd,QAAQ,6BAA6B,EACrC,SAAS,MAAM,EACf,cAAc,MAAM,EACpB,WAAW,MAAM,EACjB,QAAQ,MAAM,EACd,wBAAwB,IAAI,EAC5B,OAAO,MAAM,KACZ,OAAO,CAAC,0BAA0B,GAAG,+BAA+B,CAqEtE,CAAC;AAEF,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,0BAA0B,GAAG,+BAA+B,EAClE,QAAQ,EAAE,UAAU,GACnB,OAAO,CAAC,MAAM,CAAC,CA4CjB"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { Schema } from 'borsh';
|
|
2
|
+
import { Iden3PaymentRailsSolanaRequestV1, Iden3PaymentRailsSolanaSPLRequestV1, MultiChainPaymentConfigOption } from '../../iden3comm';
|
|
3
|
+
import { Keypair } from '@solana/web3.js';
|
|
4
|
+
import { Resolvable } from 'did-resolver';
|
|
5
|
+
export declare class SolanaNativePaymentRequest {
|
|
6
|
+
version: Uint8Array;
|
|
7
|
+
chainId: bigint;
|
|
8
|
+
verifyingContract: Uint8Array;
|
|
9
|
+
recipient: Uint8Array;
|
|
10
|
+
amount: bigint;
|
|
11
|
+
expirationDate: bigint;
|
|
12
|
+
nonce: bigint;
|
|
13
|
+
metadata: Uint8Array;
|
|
14
|
+
constructor(fields: {
|
|
15
|
+
version: Uint8Array;
|
|
16
|
+
chainId: bigint;
|
|
17
|
+
verifyingContract: Uint8Array;
|
|
18
|
+
recipient: Uint8Array;
|
|
19
|
+
amount: bigint;
|
|
20
|
+
expirationDate: bigint;
|
|
21
|
+
nonce: bigint;
|
|
22
|
+
metadata: Uint8Array;
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
export declare class SolanaSplPaymentRequest {
|
|
26
|
+
version: Uint8Array;
|
|
27
|
+
chainId: bigint;
|
|
28
|
+
verifyingContract: Uint8Array;
|
|
29
|
+
tokenAddress: Uint8Array;
|
|
30
|
+
recipient: Uint8Array;
|
|
31
|
+
amount: bigint;
|
|
32
|
+
expirationDate: bigint;
|
|
33
|
+
nonce: bigint;
|
|
34
|
+
metadata: Uint8Array;
|
|
35
|
+
constructor(fields: {
|
|
36
|
+
version: Uint8Array;
|
|
37
|
+
chainId: bigint;
|
|
38
|
+
verifyingContract: Uint8Array;
|
|
39
|
+
tokenAddress: Uint8Array;
|
|
40
|
+
recipient: Uint8Array;
|
|
41
|
+
amount: bigint;
|
|
42
|
+
expirationDate: bigint;
|
|
43
|
+
nonce: bigint;
|
|
44
|
+
metadata: Uint8Array;
|
|
45
|
+
});
|
|
46
|
+
}
|
|
47
|
+
export declare const SolanaNativePaymentSchema: Map<typeof SolanaNativePaymentRequest, {
|
|
48
|
+
kind: string;
|
|
49
|
+
fields: (string | (string | number)[])[][];
|
|
50
|
+
}>;
|
|
51
|
+
export declare const SolanaSplPaymentSchema: Map<typeof SolanaSplPaymentRequest, {
|
|
52
|
+
kind: string;
|
|
53
|
+
fields: (string | (string | number)[])[][];
|
|
54
|
+
}>;
|
|
55
|
+
export declare class SolanaPaymentInstruction {
|
|
56
|
+
recipient: Uint8Array;
|
|
57
|
+
amount: bigint;
|
|
58
|
+
expiration_date: bigint;
|
|
59
|
+
nonce: bigint;
|
|
60
|
+
metadata: Uint8Array;
|
|
61
|
+
signature: Uint8Array;
|
|
62
|
+
constructor(fields: {
|
|
63
|
+
recipient: Uint8Array;
|
|
64
|
+
amount: bigint;
|
|
65
|
+
expiration_date: bigint;
|
|
66
|
+
nonce: bigint;
|
|
67
|
+
metadata: Uint8Array;
|
|
68
|
+
signature: Uint8Array;
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
export declare const SolanaPaymentInstructionSchema: Schema;
|
|
72
|
+
/**
|
|
73
|
+
* @beta
|
|
74
|
+
* buildSolanaPayment creates an Solana-based payment request and signs it using ed25519.
|
|
75
|
+
* @param {Keypair} solSigner - Keypair for signing the payment request
|
|
76
|
+
* @param {MultiChainPaymentConfigOption} option - payment option configuration
|
|
77
|
+
* @param {string} chainId - EVM chain ID
|
|
78
|
+
* @param {string} paymentRails - payment rails contract address
|
|
79
|
+
* @param {string} recipient - recipient address
|
|
80
|
+
* @param {bigint} amount - payment amount in smallest units
|
|
81
|
+
* @param {Date} expirationDateRequired - expiration date
|
|
82
|
+
* @param {bigint} nonce - unique nonce for the payment
|
|
83
|
+
* @returns {Promise<Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1>} payment request object
|
|
84
|
+
*/
|
|
85
|
+
export declare const buildSolanaPayment: (solSigner: Keypair, option: MultiChainPaymentConfigOption, chainId: string, paymentRails: string, recipient: string, amount: bigint, expirationDate: Date, nonce: bigint) => Promise<Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1>;
|
|
86
|
+
export declare const serializeSolanaPaymentInstruction: (data: Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1) => Uint8Array;
|
|
87
|
+
export declare const verifyIden3SolanaPaymentRequest: (data: Iden3PaymentRailsSolanaRequestV1 | Iden3PaymentRailsSolanaSPLRequestV1, resolver: Resolvable) => Promise<boolean>;
|
|
88
|
+
//# sourceMappingURL=solana.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"solana.d.ts","sourceRoot":"","sources":["../../../../src/utils/payments/solana.ts"],"names":[],"mappings":"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"}
|
|
@@ -119,7 +119,9 @@ export declare enum RefreshServiceType {
|
|
|
119
119
|
export declare enum PaymentRequestDataType {
|
|
120
120
|
Iden3PaymentRequestCryptoV1 = "Iden3PaymentRequestCryptoV1",
|
|
121
121
|
Iden3PaymentRailsRequestV1 = "Iden3PaymentRailsRequestV1",
|
|
122
|
-
Iden3PaymentRailsERC20RequestV1 = "Iden3PaymentRailsERC20RequestV1"
|
|
122
|
+
Iden3PaymentRailsERC20RequestV1 = "Iden3PaymentRailsERC20RequestV1",
|
|
123
|
+
Iden3PaymentRailsSolanaRequestV1 = "Iden3PaymentRailsSolanaRequestV1",
|
|
124
|
+
Iden3PaymentRailsSolanaSPLRequestV1 = "Iden3PaymentRailsSolanaSPLRequestV1"
|
|
123
125
|
}
|
|
124
126
|
/**
|
|
125
127
|
* PaymentType type for payment responses
|
|
@@ -129,7 +131,9 @@ export declare enum PaymentRequestDataType {
|
|
|
129
131
|
export declare enum PaymentType {
|
|
130
132
|
Iden3PaymentCryptoV1 = "Iden3PaymentCryptoV1",
|
|
131
133
|
Iden3PaymentRailsV1 = "Iden3PaymentRailsV1",
|
|
132
|
-
Iden3PaymentRailsERC20V1 = "Iden3PaymentRailsERC20V1"
|
|
134
|
+
Iden3PaymentRailsERC20V1 = "Iden3PaymentRailsERC20V1",
|
|
135
|
+
Iden3PaymentRailsSolanaV1 = "Iden3PaymentRailsSolanaV1",
|
|
136
|
+
Iden3PaymentRailsSolanaSPLV1 = "Iden3PaymentRailsSolanaSPLV1"
|
|
133
137
|
}
|
|
134
138
|
/**
|
|
135
139
|
* SupportedPaymentProofType type for payment proofs
|
|
@@ -137,7 +141,8 @@ export declare enum PaymentType {
|
|
|
137
141
|
* @enum {string}
|
|
138
142
|
*/
|
|
139
143
|
export declare enum SupportedPaymentProofType {
|
|
140
|
-
EthereumEip712Signature2021 = "EthereumEip712Signature2021"
|
|
144
|
+
EthereumEip712Signature2021 = "EthereumEip712Signature2021",
|
|
145
|
+
SolanaEd25519Signature2025 = "SolanaEd25519Signature2025"
|
|
141
146
|
}
|
|
142
147
|
/**
|
|
143
148
|
* Media types for Payment supported currencies
|
|
@@ -172,4 +177,12 @@ export declare enum DisplayMethodType {
|
|
|
172
177
|
* Default cache max size for in-memory cache
|
|
173
178
|
*/
|
|
174
179
|
export declare const DEFAULT_CACHE_MAX_SIZE = 10000;
|
|
180
|
+
/**
|
|
181
|
+
* Solana chain reference
|
|
182
|
+
*/
|
|
183
|
+
export declare const SOLANA_CHAIN_REF: Readonly<{
|
|
184
|
+
DEVNET: "EtWTRABZaYq6iMfeYKouRu166VU2xqa1";
|
|
185
|
+
TESTNET: "4uhcVJyU9pJkvQyS88uRDiswHXSCkY3z";
|
|
186
|
+
MAINNET: "5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp";
|
|
187
|
+
}>;
|
|
175
188
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/verifiable/constants.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiF9B,CAAC;AAEH;;;;GAIG;AACH,oBAAY,SAAS;IAEnB,YAAY,qBAAqB;IAEjC,0BAA0B,+BAA+B;CAC1D;AAED;;;;GAIG;AACH,oBAAY,oBAAoB;IAE9B,qBAAqB,0BAA0B;IAE/C,iCAAiC,sCAAsC;IAEvE,2BAA2B,kCAAkC;IAE7D,qCAAqC,0CAA0C;CAChF;AAED;;;;GAIG;AACH,oBAAY,YAAY;IACtB,cAAc,mBAAmB;CAClC;AAED;;;;GAIG;AACH,oBAAY,qBAAqB;IAE/B,KAAK,UAAU;IAEf,KAAK,UAAU;IAEf,IAAI,KAAK;CACV;AAED;;;;GAIG;AACH,oBAAY,eAAe;IAEzB,IAAI,KAAK;IAET,KAAK,UAAU;IAEf,KAAK,UAAU;CAChB;AAED;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,uBAAuB,4BAA4B;CACpD;AAED;;;;GAIG;AACH,oBAAY,sBAAsB;IAChC,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;IACzD,+BAA+B,oCAAoC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/verifiable/constants.ts"],"names":[],"mappings":"AAAA,2BAA2B;AAC3B,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiF9B,CAAC;AAEH;;;;GAIG;AACH,oBAAY,SAAS;IAEnB,YAAY,qBAAqB;IAEjC,0BAA0B,+BAA+B;CAC1D;AAED;;;;GAIG;AACH,oBAAY,oBAAoB;IAE9B,qBAAqB,0BAA0B;IAE/C,iCAAiC,sCAAsC;IAEvE,2BAA2B,kCAAkC;IAE7D,qCAAqC,0CAA0C;CAChF;AAED;;;;GAIG;AACH,oBAAY,YAAY;IACtB,cAAc,mBAAmB;CAClC;AAED;;;;GAIG;AACH,oBAAY,qBAAqB;IAE/B,KAAK,UAAU;IAEf,KAAK,UAAU;IAEf,IAAI,KAAK;CACV;AAED;;;;GAIG;AACH,oBAAY,eAAe;IAEzB,IAAI,KAAK;IAET,KAAK,UAAU;IAEf,KAAK,UAAU;CAChB;AAED;;;;GAIG;AACH,oBAAY,kBAAkB;IAC5B,uBAAuB,4BAA4B;CACpD;AAED;;;;GAIG;AACH,oBAAY,sBAAsB;IAChC,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;IACzD,+BAA+B,oCAAoC;IACnE,gCAAgC,qCAAqC;IACrE,mCAAmC,wCAAwC;CAC5E;AAED;;;;GAIG;AACH,oBAAY,WAAW;IACrB,oBAAoB,yBAAyB;IAC7C,mBAAmB,wBAAwB;IAC3C,wBAAwB,6BAA6B;IACrD,yBAAyB,8BAA8B;IACvD,4BAA4B,iCAAiC;CAC9D;AAED;;;;GAIG;AACH,oBAAY,yBAAyB;IACnC,2BAA2B,gCAAgC;IAC3D,0BAA0B,+BAA+B;CAC1D;AAED;;;;;GAKG;AACH,oBAAY,mBAAmB;IAC7B,GAAG,QAAQ;IACX,OAAO,WAAW;IAClB,QAAQ,YAAY;IACpB,KAAK,UAAU;IACf,GAAG,QAAQ;CACZ;AAED;;;;GAIG;AACH,oBAAY,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED;;;;GAIG;AACH,oBAAY,iBAAiB;IAC3B,yBAAyB,8BAA8B;CACxD;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,QAAS,CAAC;AAE7C;;GAEG;AACH,eAAO,MAAM,gBAAgB;;;;EAI3B,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xpolygonid/js-sdk",
|
|
3
|
-
"version": "1.33.
|
|
3
|
+
"version": "1.33.3",
|
|
4
4
|
"description": "SDK to work with Polygon ID",
|
|
5
5
|
"source": "./src/index.ts",
|
|
6
6
|
"exports": {
|
|
@@ -49,6 +49,8 @@
|
|
|
49
49
|
"@types/node": "^24.0.4",
|
|
50
50
|
"@types/pubsub-js": "^1.8.6",
|
|
51
51
|
"@types/uuid": "^10.0.0",
|
|
52
|
+
"bs58": "^6.0.0",
|
|
53
|
+
"@solana/spl-token": "^0.4.13",
|
|
52
54
|
"dotenv": "^17.0.1",
|
|
53
55
|
"nock": "^14.0.5",
|
|
54
56
|
"rimraf": "^6.0.1",
|
|
@@ -71,8 +73,10 @@
|
|
|
71
73
|
"@iden3/onchain-non-merklized-issuer-base-abi": "^0.0.3",
|
|
72
74
|
"@iden3/universal-verifier-v2-abi": "^2.0.2",
|
|
73
75
|
"@noble/curves": "^1.9.2",
|
|
76
|
+
"@solana/web3.js": "^1.98.4",
|
|
74
77
|
"ajv": "8.17.1",
|
|
75
78
|
"ajv-formats": "3.0.1",
|
|
79
|
+
"borsh": "^0.7.0",
|
|
76
80
|
"did-jwt": "8.0.4",
|
|
77
81
|
"did-resolver": "4.1.0",
|
|
78
82
|
"ethers": "^6.13.1",
|
|
@@ -62,7 +62,10 @@ export function createProposalRequest(
|
|
|
62
62
|
to: receiver.string(),
|
|
63
63
|
typ: MediaType.PlainMessage,
|
|
64
64
|
type: PROTOCOL_MESSAGE_TYPE.PROPOSAL_REQUEST_MESSAGE_TYPE,
|
|
65
|
-
body:
|
|
65
|
+
body: {
|
|
66
|
+
credentials: opts.credentials,
|
|
67
|
+
did_doc: opts.did_doc
|
|
68
|
+
},
|
|
66
69
|
created_time: getUnixTimestamp(new Date()),
|
|
67
70
|
expires_time: opts?.expires_time ? getUnixTimestamp(opts.expires_time) : undefined,
|
|
68
71
|
attachments: opts.attachments
|