@0xpolygonid/js-sdk 1.23.0 → 1.24.1

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 (56) hide show
  1. package/dist/browser/esm/index.js +3103 -358
  2. package/dist/browser/esm/index.js.map +1 -1
  3. package/dist/browser/umd/index.js +3106 -356
  4. package/dist/browser/umd/index.js.map +1 -1
  5. package/dist/node/cjs/credentials/credential-wallet.js +11 -78
  6. package/dist/node/cjs/credentials/index.js +1 -0
  7. package/dist/node/cjs/credentials/status/did-resolver-revocation.js +21 -0
  8. package/dist/node/cjs/iden3comm/handlers/fetch.js +32 -0
  9. package/dist/node/cjs/iden3comm/handlers/payment.js +38 -13
  10. package/dist/node/cjs/storage/blockchain/abi/ERC20.json +1 -0
  11. package/dist/node/cjs/storage/blockchain/did-resolver-readonly-storage.js +72 -0
  12. package/dist/node/cjs/storage/blockchain/{erc20-permit-sig.js → erc20-helper.js} +14 -1
  13. package/dist/node/cjs/storage/blockchain/index.js +3 -1
  14. package/dist/node/cjs/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.js +245 -0
  15. package/dist/node/cjs/storage/blockchain/onchain-issuer.js +82 -0
  16. package/dist/node/cjs/storage/blockchain/onchain-zkp-verifier.js +38 -34
  17. package/dist/node/cjs/storage/interfaces/index.js +1 -0
  18. package/dist/node/cjs/storage/interfaces/onchain-issuer.js +2 -0
  19. package/dist/node/cjs/utils/did-helper.js +3 -3
  20. package/dist/node/cjs/verifiable/constants.js +1 -0
  21. package/dist/node/cjs/verifiable/credential.js +86 -0
  22. package/dist/node/esm/credentials/credential-wallet.js +12 -79
  23. package/dist/node/esm/credentials/index.js +1 -0
  24. package/dist/node/esm/credentials/status/did-resolver-revocation.js +17 -0
  25. package/dist/node/esm/iden3comm/handlers/fetch.js +32 -0
  26. package/dist/node/esm/iden3comm/handlers/payment.js +38 -14
  27. package/dist/node/esm/storage/blockchain/abi/ERC20.json +1 -0
  28. package/dist/node/esm/storage/blockchain/did-resolver-readonly-storage.js +68 -0
  29. package/dist/node/esm/storage/blockchain/{erc20-permit-sig.js → erc20-helper.js} +14 -2
  30. package/dist/node/esm/storage/blockchain/index.js +3 -1
  31. package/dist/node/esm/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.js +241 -0
  32. package/dist/node/esm/storage/blockchain/onchain-issuer.js +78 -0
  33. package/dist/node/esm/storage/blockchain/onchain-zkp-verifier.js +38 -34
  34. package/dist/node/esm/storage/interfaces/index.js +1 -0
  35. package/dist/node/esm/storage/interfaces/onchain-issuer.js +1 -0
  36. package/dist/node/esm/utils/did-helper.js +3 -3
  37. package/dist/node/esm/verifiable/constants.js +1 -0
  38. package/dist/node/esm/verifiable/credential.js +88 -2
  39. package/dist/types/credentials/credential-wallet.d.ts +0 -6
  40. package/dist/types/credentials/index.d.ts +1 -0
  41. package/dist/types/credentials/models.d.ts +8 -0
  42. package/dist/types/credentials/status/did-resolver-revocation.d.ts +7 -0
  43. package/dist/types/iden3comm/handlers/fetch.d.ts +8 -0
  44. package/dist/types/iden3comm/handlers/payment.d.ts +3 -2
  45. package/dist/types/storage/blockchain/did-resolver-readonly-storage.d.ts +16 -0
  46. package/dist/types/storage/blockchain/{erc20-permit-sig.d.ts → erc20-helper.d.ts} +8 -1
  47. package/dist/types/storage/blockchain/index.d.ts +3 -1
  48. package/dist/types/storage/blockchain/onchain-issuer-adapter/non-merklized/version/v0.0.1/onchain-non-merklized-issuer-adapter.d.ts +66 -0
  49. package/dist/types/storage/blockchain/onchain-issuer.d.ts +40 -0
  50. package/dist/types/storage/blockchain/onchain-zkp-verifier.d.ts +11 -12
  51. package/dist/types/storage/entities/state.d.ts +2 -0
  52. package/dist/types/storage/interfaces/index.d.ts +1 -0
  53. package/dist/types/storage/interfaces/onchain-issuer.d.ts +12 -0
  54. package/dist/types/verifiable/constants.d.ts +1 -0
  55. package/dist/types/verifiable/credential.d.ts +15 -2
  56. package/package.json +3 -2
@@ -2,6 +2,7 @@ import { Signer } from 'ethers';
2
2
  import { EthConnectionConfig } from './state';
3
3
  import { IOnChainZKPVerifier } from '../interfaces/onchain-zkp-verifier';
4
4
  import { ContractInvokeTransactionData, JsonDocumentObjectValue, ZeroKnowledgeProofResponse } from '../../iden3comm';
5
+ import { GlobalStateUpdate } from '../entities/state';
5
6
  /**
6
7
  * Supported function signature for SubmitZKPResponse
7
8
  */
@@ -33,11 +34,7 @@ export declare class OnChainZKPVerifier implements IOnChainZKPVerifier {
33
34
  /**
34
35
  * supported circuits
35
36
  */
36
- private readonly _supportedCircuits;
37
- /**
38
- * abi coder to encode/decode structures to solidity bytes
39
- */
40
- private readonly _abiCoder;
37
+ private static readonly _supportedCircuits;
41
38
  /**
42
39
  *
43
40
  * Creates an instance of OnChainZKPVerifier.
@@ -45,6 +42,7 @@ export declare class OnChainZKPVerifier implements IOnChainZKPVerifier {
45
42
  * @param {EthConnectionConfig[]} - array of ETH configs
46
43
  */
47
44
  constructor(_configs: EthConnectionConfig[], _opts?: OnChainZKPVerifierOptions | undefined);
45
+ static prepareTxArgsSubmitV1(txData: ContractInvokeTransactionData, zkProofResponse: ZeroKnowledgeProofResponse): Promise<JsonDocumentObjectValue[]>;
48
46
  /**
49
47
  * {@inheritDoc IOnChainZKPVerifier.prepareTxArgsSubmitV1}
50
48
  */
@@ -57,12 +55,13 @@ export declare class OnChainZKPVerifier implements IOnChainZKPVerifier {
57
55
  * {@inheritDoc IOnChainZKPVerifier.submitZKPResponseV2}
58
56
  */
59
57
  submitZKPResponseV2(ethSigner: Signer, txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<Map<string, ZeroKnowledgeProofResponse[]>>;
58
+ static prepareTxArgsSubmitV2(resolverUrl: string, txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<JsonDocumentObjectValue[]>;
60
59
  prepareTxArgsSubmitV2(txData: ContractInvokeTransactionData, zkProofResponses: ZeroKnowledgeProofResponse[]): Promise<JsonDocumentObjectValue[]>;
61
- private packZkpProof;
62
- private packCrossChainProofs;
63
- private packGlobalStateMsg;
64
- private packIdentityStateMsg;
65
- private packMetadatas;
66
- private getOnChainGistRootStatePubSignals;
67
- private resolveDidDocumentEip712MessageAndSignature;
60
+ private static packZkpProof;
61
+ private static packCrossChainProofs;
62
+ static packGlobalStateMsg(msg: GlobalStateUpdate): string;
63
+ private static packIdentityStateMsg;
64
+ private static packMetadatas;
65
+ private static getOnChainGistRootStatePubSignals;
66
+ private static resolveDidDocumentEip712MessageAndSignature;
68
67
  }
@@ -1,3 +1,4 @@
1
+ import { ProofJSON } from '@iden3/js-merkletree';
1
2
  /**
2
3
  * state information of identity from chain.
3
4
  *
@@ -42,6 +43,7 @@ export interface RootInfo {
42
43
  replacedAtTimestamp: bigint;
43
44
  createdAtBlock: bigint;
44
45
  replacedAtBlock: bigint;
46
+ proof?: ProofJSON;
45
47
  }
46
48
  /**
47
49
  * identity state message
@@ -7,3 +7,4 @@ export * from './data-source';
7
7
  export * from './circuits';
8
8
  export * from './onchain-zkp-verifier';
9
9
  export * from './onchain-revocation';
10
+ export * from './onchain-issuer';
@@ -0,0 +1,12 @@
1
+ import { DID } from '@iden3/js-iden3-core';
2
+ import { W3CCredential } from '../../verifiable';
3
+ /**
4
+ * Interface that allows the processing of the on-chain issuer
5
+ *
6
+ * @beta
7
+ * @interface IOnchainIssuer
8
+ */
9
+ export interface IOnchainIssuer {
10
+ getCredential(issuerDID: DID, userDID: DID, credentialId: bigint): Promise<W3CCredential>;
11
+ getUserCredentialIds(issuerDID: DID, userDID: DID): Promise<bigint[]>;
12
+ }
@@ -124,6 +124,7 @@ export declare enum SupportedCurrencies {
124
124
  ETH_WEI = "ETHWEI",
125
125
  ETH_GWEI = "ETHGWEI",
126
126
  MATIC = "MATIC",
127
+ POL = "POL",
127
128
  USDT = "USDT",
128
129
  USDC = "USDC"
129
130
  }
@@ -1,8 +1,8 @@
1
1
  import { BJJSignatureProof2021, Iden3SparseMerkleTreeProof, CredentialStatus, RefreshService, DisplayMethod } from './proof';
2
- import { Claim } from '@iden3/js-iden3-core';
2
+ import { Claim, DID } from '@iden3/js-iden3-core';
3
3
  import { Proof } from '@iden3/js-merkletree';
4
4
  import { Merklizer, Options } from '@iden3/js-jsonld-merklization';
5
- import { CredentialStatusResolverRegistry } from '../credentials';
5
+ import { CredentialRequest, CredentialStatusResolverRegistry } from '../credentials';
6
6
  import { ProofType } from './constants';
7
7
  import { CoreClaimCreationOptions } from './core-utils';
8
8
  import { JsonDocumentObject } from '../iden3comm';
@@ -26,6 +26,19 @@ export declare class W3CCredential {
26
26
  issuer: string;
27
27
  credentialSchema: CredentialSchema;
28
28
  proof?: object | unknown[];
29
+ /**
30
+ *
31
+ * @param issuer - DID of the issuer
32
+ * @param request - Credential request
33
+ * @returns - W3C Credential
34
+ */
35
+ static fromCredentialRequest(issuer: DID, request: CredentialRequest): W3CCredential;
36
+ /**
37
+ * Builds credential status
38
+ * @param {CredentialRequest} request
39
+ * @returns `CredentialStatus`
40
+ */
41
+ private static buildCredentialStatus;
29
42
  toJSON(): this & {
30
43
  proof: any;
31
44
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xpolygonid/js-sdk",
3
- "version": "1.23.0",
3
+ "version": "1.24.1",
4
4
  "description": "SDK to work with Polygon ID",
5
5
  "main": "dist/node/cjs/index.js",
6
6
  "module": "dist/node/esm/index.js",
@@ -79,7 +79,7 @@
79
79
  "eslint-config-prettier": "^8.8.0",
80
80
  "eslint-plugin-prettier": "^4.2.1",
81
81
  "mocha": "10.2.0",
82
- "nock": "^14.0.0-beta.15",
82
+ "nock": "^14.0.0-beta.16",
83
83
  "prettier": "^2.7.1",
84
84
  "rimraf": "^5.0.5",
85
85
  "rollup": "^4.14.3",
@@ -98,6 +98,7 @@
98
98
  "snarkjs": "0.7.4"
99
99
  },
100
100
  "dependencies": {
101
+ "@iden3/onchain-non-merklized-issuer-base-abi": "^0.0.3",
101
102
  "@noble/curves": "^1.4.0",
102
103
  "ajv": "8.12.0",
103
104
  "ajv-formats": "2.1.1",