@mimicprotocol/sdk 0.0.1-rc.0 → 0.0.1-rc.2

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 (118) hide show
  1. package/dist/axia/constants.d.ts +1 -0
  2. package/dist/axia/constants.d.ts.map +1 -1
  3. package/dist/axia/constants.js +2 -1
  4. package/dist/axia/constants.js.map +1 -1
  5. package/dist/axia/types.d.ts +3 -1
  6. package/dist/axia/types.d.ts.map +1 -1
  7. package/dist/axia/validators.d.ts +54 -0
  8. package/dist/axia/validators.d.ts.map +1 -1
  9. package/dist/axia/validators.js +14 -1
  10. package/dist/axia/validators.js.map +1 -1
  11. package/dist/client/core/config.d.ts +1 -1
  12. package/dist/client/core/config.d.ts.map +1 -1
  13. package/dist/client/core/config.js +1 -0
  14. package/dist/client/core/config.js.map +1 -1
  15. package/dist/client/core/http/FetchHttpClient.js +1 -1
  16. package/dist/client/core/http/FetchHttpClient.js.map +1 -1
  17. package/dist/client/core/http/utils.d.ts +7 -0
  18. package/dist/client/core/http/utils.d.ts.map +1 -1
  19. package/dist/client/core/http/utils.js +22 -0
  20. package/dist/client/core/http/utils.js.map +1 -1
  21. package/dist/client/domains/Client.d.ts +6 -3
  22. package/dist/client/domains/Client.d.ts.map +1 -1
  23. package/dist/client/domains/Client.js +6 -1
  24. package/dist/client/domains/Client.js.map +1 -1
  25. package/dist/client/domains/ConfigsClient.d.ts +9 -1
  26. package/dist/client/domains/ConfigsClient.d.ts.map +1 -1
  27. package/dist/client/domains/ConfigsClient.js +36 -0
  28. package/dist/client/domains/ConfigsClient.js.map +1 -1
  29. package/dist/client/domains/IntentsClient.d.ts +26 -0
  30. package/dist/client/domains/IntentsClient.d.ts.map +1 -0
  31. package/dist/client/domains/IntentsClient.js +74 -0
  32. package/dist/client/domains/IntentsClient.js.map +1 -0
  33. package/dist/client/domains/TasksClient.d.ts +2 -1
  34. package/dist/client/domains/TasksClient.d.ts.map +1 -1
  35. package/dist/client/domains/TasksClient.js +9 -0
  36. package/dist/client/domains/TasksClient.js.map +1 -1
  37. package/dist/client/domains/index.d.ts +1 -0
  38. package/dist/client/domains/index.d.ts.map +1 -1
  39. package/dist/client/domains/index.js +3 -1
  40. package/dist/client/domains/index.js.map +1 -1
  41. package/dist/client/index.d.ts +4 -1
  42. package/dist/client/index.d.ts.map +1 -1
  43. package/dist/client/index.js +4 -3
  44. package/dist/client/index.js.map +1 -1
  45. package/dist/registry/ConfigSigner.d.ts +16 -6
  46. package/dist/registry/ConfigSigner.d.ts.map +1 -1
  47. package/dist/registry/ConfigSigner.js +51 -4
  48. package/dist/registry/ConfigSigner.js.map +1 -1
  49. package/dist/registry/eip712Types.d.ts +6 -18
  50. package/dist/registry/eip712Types.d.ts.map +1 -1
  51. package/dist/registry/eip712Types.js +15 -13
  52. package/dist/registry/eip712Types.js.map +1 -1
  53. package/dist/registry/types.d.ts +8 -8
  54. package/dist/registry/types.d.ts.map +1 -1
  55. package/dist/registry/types.js.map +1 -1
  56. package/dist/registry/validators.d.ts +200 -1699
  57. package/dist/registry/validators.d.ts.map +1 -1
  58. package/dist/registry/validators.js +15 -21
  59. package/dist/registry/validators.js.map +1 -1
  60. package/dist/relayer/types.d.ts +2 -1
  61. package/dist/relayer/types.d.ts.map +1 -1
  62. package/dist/relayer/validators.d.ts +782 -0
  63. package/dist/relayer/validators.d.ts.map +1 -1
  64. package/dist/relayer/validators.js +12 -11
  65. package/dist/relayer/validators.js.map +1 -1
  66. package/dist/runner/validators.d.ts +453 -3
  67. package/dist/runner/validators.d.ts.map +1 -1
  68. package/dist/runner/validators.js +3 -1
  69. package/dist/runner/validators.js.map +1 -1
  70. package/dist/shared/codec/encoder.d.ts +18 -1
  71. package/dist/shared/codec/encoder.d.ts.map +1 -1
  72. package/dist/shared/codec/encoder.js +50 -6
  73. package/dist/shared/codec/encoder.js.map +1 -1
  74. package/dist/shared/signer/WindowEthereumSigner.d.ts +17 -0
  75. package/dist/shared/signer/WindowEthereumSigner.d.ts.map +1 -0
  76. package/dist/shared/signer/WindowEthereumSigner.js +50 -0
  77. package/dist/shared/signer/WindowEthereumSigner.js.map +1 -0
  78. package/dist/shared/signer/index.d.ts +1 -0
  79. package/dist/shared/signer/index.d.ts.map +1 -1
  80. package/dist/shared/signer/index.js +1 -0
  81. package/dist/shared/signer/index.js.map +1 -1
  82. package/dist/shared/signer/types.d.ts +7 -1
  83. package/dist/shared/signer/types.d.ts.map +1 -1
  84. package/dist/shared/utils/addresses.d.ts +0 -3
  85. package/dist/shared/utils/addresses.d.ts.map +1 -1
  86. package/dist/shared/utils/addresses.js +1 -7
  87. package/dist/shared/utils/addresses.js.map +1 -1
  88. package/dist/shared/utils/chains.d.ts +1 -1
  89. package/dist/shared/utils/chains.js +1 -1
  90. package/dist/shared/utils/index.d.ts +1 -0
  91. package/dist/shared/utils/index.d.ts.map +1 -1
  92. package/dist/shared/utils/index.js +1 -0
  93. package/dist/shared/utils/index.js.map +1 -1
  94. package/dist/shared/utils/tokens.d.ts +7 -0
  95. package/dist/shared/utils/tokens.d.ts.map +1 -0
  96. package/dist/shared/utils/tokens.js +16 -0
  97. package/dist/shared/utils/tokens.js.map +1 -0
  98. package/dist/shared/validators/eip712Types.d.ts +6 -0
  99. package/dist/shared/validators/eip712Types.d.ts.map +1 -0
  100. package/dist/shared/validators/eip712Types.js +12 -0
  101. package/dist/shared/validators/eip712Types.js.map +1 -0
  102. package/dist/shared/validators/index.d.ts +1 -0
  103. package/dist/shared/validators/index.d.ts.map +1 -1
  104. package/dist/shared/validators/index.js +1 -0
  105. package/dist/shared/validators/index.js.map +1 -1
  106. package/dist/validator/ValidatorSigner.d.ts +10 -0
  107. package/dist/validator/ValidatorSigner.d.ts.map +1 -0
  108. package/dist/validator/ValidatorSigner.js +27 -0
  109. package/dist/validator/ValidatorSigner.js.map +1 -0
  110. package/dist/validator/eip712Types.d.ts +17 -0
  111. package/dist/validator/eip712Types.d.ts.map +1 -0
  112. package/dist/validator/eip712Types.js +14 -0
  113. package/dist/validator/eip712Types.js.map +1 -0
  114. package/dist/validator/index.d.ts +2 -0
  115. package/dist/validator/index.d.ts.map +1 -1
  116. package/dist/validator/index.js +2 -0
  117. package/dist/validator/index.js.map +1 -1
  118. package/package.json +1 -1
@@ -1,18 +1,25 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.hashIntent = hashIntent;
3
4
  exports.encodeIntent = encodeIntent;
5
+ exports.hashProposal = hashProposal;
4
6
  exports.encodeProposal = encodeProposal;
5
7
  exports.encodeSwapIntent = encodeSwapIntent;
6
8
  exports.encodeSwapProposal = encodeSwapProposal;
7
9
  exports.encodeTransferIntent = encodeTransferIntent;
8
10
  exports.encodeCallIntent = encodeCallIntent;
11
+ exports.hashExecution = hashExecution;
9
12
  exports.encodeExecution = encodeExecution;
10
13
  exports.encodeCronExecution = encodeCronExecution;
11
14
  exports.encodeEventExecution = encodeEventExecution;
15
+ exports.toRawIntent = toRawIntent;
12
16
  const ethers_1 = require("ethers");
13
17
  const eip712Types_1 = require("../eip712Types");
18
+ const validators_1 = require("../validators");
19
+ function hashIntent(intent) {
20
+ return (0, ethers_1.keccak256)(encodeIntent(intent));
21
+ }
14
22
  function encodeIntent(intent) {
15
- const maxFeesHash = (0, ethers_1.keccak256)(encodeMaxFees(intent.maxFees));
16
23
  return ethers_1.AbiCoder.defaultAbiCoder().encode([
17
24
  'bytes32', // type hash
18
25
  'uint8', // op
@@ -30,19 +37,21 @@ function encodeIntent(intent) {
30
37
  intent.nonce,
31
38
  intent.deadline,
32
39
  (0, ethers_1.keccak256)(intent.data),
33
- maxFeesHash,
40
+ (0, ethers_1.keccak256)(encodeMaxFees(intent.maxFees)),
34
41
  ]);
35
42
  }
36
43
  function encodeMaxFees(maxFees) {
37
44
  const maxFeesHashes = maxFees.map((maxFee) => (0, ethers_1.keccak256)(encodeMaxFee(maxFee)));
38
- return (0, ethers_1.keccak256)('0x' + maxFeesHashes.map((hash) => hash.slice(2)).join(''));
45
+ return '0x' + maxFeesHashes.map((hash) => hash.slice(2)).join('');
39
46
  }
40
47
  function encodeMaxFee(maxFee) {
41
48
  return ethers_1.AbiCoder.defaultAbiCoder().encode(['bytes32', 'address', 'uint256'], [eip712Types_1.MAX_FEE_TYPE_HASH, maxFee.token, maxFee.amount]);
42
49
  }
50
+ function hashProposal(proposal, intentOrHash) {
51
+ return (0, ethers_1.keccak256)(encodeProposal(proposal, intentOrHash));
52
+ }
43
53
  function encodeProposal(proposal, intentOrHash) {
44
- const intentHash = typeof intentOrHash == 'string' ? intentOrHash : (0, ethers_1.keccak256)(encodeIntent(intentOrHash));
45
- const feesHash = (0, ethers_1.keccak256)(encodeFees(proposal.fees));
54
+ const intentHash = typeof intentOrHash == 'string' ? intentOrHash : hashIntent(intentOrHash);
46
55
  return ethers_1.AbiCoder.defaultAbiCoder().encode([
47
56
  'bytes32', // type hash
48
57
  'bytes32', // intent hash
@@ -50,7 +59,14 @@ function encodeProposal(proposal, intentOrHash) {
50
59
  'uint256', // deadline
51
60
  'bytes32', // keccak256 of data
52
61
  'bytes32', // fees hash
53
- ], [eip712Types_1.PROPOSAL_TYPE_HASH, intentHash, proposal.solver, proposal.deadline, (0, ethers_1.keccak256)(proposal.data), feesHash]);
62
+ ], [
63
+ eip712Types_1.PROPOSAL_TYPE_HASH,
64
+ intentHash,
65
+ proposal.solver,
66
+ proposal.deadline,
67
+ (0, ethers_1.keccak256)(proposal.data),
68
+ (0, ethers_1.keccak256)(encodeFees(proposal.fees)),
69
+ ]);
54
70
  }
55
71
  function encodeFees(fees) {
56
72
  return '0x' + fees.map((fee) => ethers_1.AbiCoder.defaultAbiCoder().encode(['uint256'], [fee]).slice(2)).join('');
@@ -79,6 +95,9 @@ function encodeTransferIntent(intent) {
79
95
  function encodeCallIntent(intent) {
80
96
  return ethers_1.AbiCoder.defaultAbiCoder().encode([eip712Types_1.CALL_INTENT_ABI_TYPE], [[intent.chainId, (intent.calls || []).map((call) => [call.target, call.data, call.value])]]);
81
97
  }
98
+ function hashExecution(execution) {
99
+ return (0, ethers_1.keccak256)(encodeExecution(execution));
100
+ }
82
101
  function encodeExecution(execution) {
83
102
  return ethers_1.AbiCoder.defaultAbiCoder().encode([
84
103
  'bytes32', // type hash
@@ -93,4 +112,29 @@ function encodeCronExecution(execution) {
93
112
  function encodeEventExecution(execution) {
94
113
  return ethers_1.AbiCoder.defaultAbiCoder().encode([eip712Types_1.EVENT_EXECUTION_ABI_TYPE], [[execution.chainId, execution.contract, execution.block, execution.index]]);
95
114
  }
115
+ function toRawIntent(output) {
116
+ let data = '';
117
+ switch (output.op) {
118
+ case validators_1.OpType.Swap:
119
+ data = encodeSwapIntent(output);
120
+ break;
121
+ case validators_1.OpType.Transfer:
122
+ data = encodeTransferIntent(output);
123
+ break;
124
+ case validators_1.OpType.Call:
125
+ data = encodeCallIntent(output);
126
+ break;
127
+ }
128
+ const { settler, user, nonce, deadline, op, maxFees } = output;
129
+ return {
130
+ settler,
131
+ user,
132
+ nonce,
133
+ deadline,
134
+ op,
135
+ data,
136
+ maxFees,
137
+ hash: hashIntent({ settler, user, nonce, deadline, op, data, maxFees }),
138
+ };
139
+ }
96
140
  //# sourceMappingURL=encoder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../../src/shared/codec/encoder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"encoder.js","sourceRoot":"","sources":["../../../src/shared/codec/encoder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import { Address, Signature } from '../types';
2
+ import { Signer } from './Signer';
3
+ import { TypedDataDomain, TypedDataTypes } from './types';
4
+ declare global {
5
+ interface Window {
6
+ ethereum: any;
7
+ }
8
+ }
9
+ export declare class WindowEthereumSigner implements Signer {
10
+ readonly walletAddress: string;
11
+ constructor(walletAddress: string);
12
+ signMessage(message: string): Promise<Signature>;
13
+ signTypedData(domain: TypedDataDomain, types: TypedDataTypes, value: Record<string, unknown>): Promise<Signature>;
14
+ verifyMessage(message: string, signature: Signature): Address;
15
+ verifyTypedData(domain: TypedDataDomain, types: TypedDataTypes, value: Record<string, unknown>, signature: Signature): Address;
16
+ }
17
+ //# sourceMappingURL=WindowEthereumSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WindowEthereumSigner.d.ts","sourceRoot":"","sources":["../../../src/shared/signer/WindowEthereumSigner.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAE7C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAEzD,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QAEd,QAAQ,EAAE,GAAG,CAAA;KACd;CACF;AAED,qBAAa,oBAAqB,YAAW,MAAM;aACrB,aAAa,EAAE,MAAM;gBAArB,aAAa,EAAE,MAAM;IAM3C,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAYhD,aAAa,CACjB,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,SAAS,CAAC;IAkBrB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,OAAO;IAI7D,eAAe,CACb,MAAM,EAAE,eAAe,EACvB,KAAK,EAAE,cAAc,EACrB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC9B,SAAS,EAAE,SAAS,GACnB,OAAO;CAGX"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WindowEthereumSigner = void 0;
4
+ const ethers_1 = require("ethers");
5
+ class WindowEthereumSigner {
6
+ constructor(walletAddress) {
7
+ this.walletAddress = walletAddress;
8
+ if (typeof window.ethereum === 'undefined') {
9
+ throw new Error('Wallet not detected. Please connect your wallet.');
10
+ }
11
+ }
12
+ async signMessage(message) {
13
+ try {
14
+ return await window.ethereum.request({
15
+ method: 'personal_sign',
16
+ params: [message, this.walletAddress],
17
+ });
18
+ }
19
+ catch (err) {
20
+ console.error('🛑 Signing error:', err);
21
+ throw new Error('User rejected the signature request.');
22
+ }
23
+ }
24
+ async signTypedData(domain, types, value) {
25
+ const typedData = {
26
+ domain,
27
+ primaryType: 'Config',
28
+ types: types,
29
+ message: value,
30
+ };
31
+ try {
32
+ return await window.ethereum.request({
33
+ method: 'eth_signTypedData_v4',
34
+ params: [this.walletAddress, JSON.stringify(typedData)],
35
+ });
36
+ }
37
+ catch (err) {
38
+ console.error('🛑 Signing error:', err);
39
+ throw new Error('User rejected the signature request.');
40
+ }
41
+ }
42
+ verifyMessage(message, signature) {
43
+ return ethers_1.ethers.verifyMessage(message, signature);
44
+ }
45
+ verifyTypedData(domain, types, value, signature) {
46
+ return ethers_1.ethers.verifyTypedData(domain, types, value, signature);
47
+ }
48
+ }
49
+ exports.WindowEthereumSigner = WindowEthereumSigner;
50
+ //# sourceMappingURL=WindowEthereumSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WindowEthereumSigner.js","sourceRoot":"","sources":["../../../src/shared/signer/WindowEthereumSigner.ts"],"names":[],"mappings":";;;AAAA,mCAA+B;AAc/B,MAAa,oBAAoB;IAC/B,YAA4B,aAAqB;QAArB,kBAAa,GAAb,aAAa,CAAQ;QAC/C,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,CAAA;QACrE,CAAC;IACH,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,OAAe;QAC/B,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACnC,MAAM,EAAE,eAAe;gBACvB,MAAM,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,aAAa,CAAC;aACtC,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;YACvC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,MAAuB,EACvB,KAAqB,EACrB,KAA8B;QAE9B,MAAM,SAAS,GAAG;YAChB,MAAM;YACN,WAAW,EAAE,QAAQ;YACrB,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,KAAK;SACf,CAAA;QACD,IAAI,CAAC;YACH,OAAO,MAAM,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;gBACnC,MAAM,EAAE,sBAAsB;gBAC9B,MAAM,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;aACxD,CAAC,CAAA;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,GAAG,CAAC,CAAA;YACvC,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;QACzD,CAAC;IACH,CAAC;IAED,aAAa,CAAC,OAAe,EAAE,SAAoB;QACjD,OAAO,eAAM,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAA;IACjD,CAAC;IAED,eAAe,CACb,MAAuB,EACvB,KAAqB,EACrB,KAA8B,EAC9B,SAAoB;QAEpB,OAAO,eAAM,CAAC,eAAe,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,CAAA;IAChE,CAAC;CACF;AArDD,oDAqDC"}
@@ -1,4 +1,5 @@
1
1
  export * from './EthersSigner';
2
2
  export * from './Signer';
3
3
  export * from './types';
4
+ export * from './WindowEthereumSigner';
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/signer/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/signer/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,cAAc,UAAU,CAAA;AACxB,cAAc,SAAS,CAAA;AACvB,cAAc,wBAAwB,CAAA"}
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./EthersSigner"), exports);
18
18
  __exportStar(require("./Signer"), exports);
19
19
  __exportStar(require("./types"), exports);
20
+ __exportStar(require("./WindowEthereumSigner"), exports);
20
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/signer/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA8B;AAC9B,2CAAwB;AACxB,0CAAuB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/signer/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,iDAA8B;AAC9B,2CAAwB;AACxB,0CAAuB;AACvB,yDAAsC"}
@@ -1,6 +1,12 @@
1
1
  import { ethers } from 'ethers';
2
2
  import { Signature } from '../types';
3
- export type TypedDataDomain = ethers.TypedDataDomain;
3
+ export type NoNullFields<Ob> = {
4
+ [K in keyof Ob]: NonNullable<Ob[K]>;
5
+ };
6
+ export type TypedDataDomain = NoNullFields<ethers.TypedDataDomain> & {
7
+ chainId?: number;
8
+ salt?: string;
9
+ };
4
10
  export type TypedDataField = ethers.TypedDataField;
5
11
  export type TypedDataTypes = Record<string, Array<TypedDataField>>;
6
12
  export type SignatureAndTypes = {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/signer/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,eAAe,GAAG,MAAM,CAAC,eAAe,CAAA;AAEpD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;AAElD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,SAAS,CAAA;IACpB,KAAK,EAAE,cAAc,CAAA;CACtB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/shared/signer/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAA;AAE/B,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAA;AAEpC,MAAM,MAAM,YAAY,CAAC,EAAE,IAAI;KAAG,CAAC,IAAI,MAAM,EAAE,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;CAAE,CAAA;AAEtE,MAAM,MAAM,eAAe,GAAG,YAAY,CAAC,MAAM,CAAC,eAAe,CAAC,GAAG;IACnE,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAA;AAElD,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,CAAC,CAAA;AAElE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,SAAS,CAAA;IACpB,KAAK,EAAE,cAAc,CAAA;CACtB,CAAA"}
@@ -1,7 +1,4 @@
1
1
  export declare const ZERO_ADDRESS = "0x0000000000000000000000000000000000000000";
2
2
  export declare const ONES_ADDRESS = "0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF";
3
- export declare const USD_ADDRESS = "0x0000000000000000000000000000000000000348";
4
- export declare const NATIVE_TOKEN_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
5
3
  export declare function equalAddresses(a: string, b: string): boolean;
6
- export declare function isNativeToken(token: string): boolean;
7
4
  //# sourceMappingURL=addresses.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/addresses.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,WAAW,+CAA+C,CAAA;AACvE,eAAO,MAAM,oBAAoB,+CAA+C,CAAA;AAEhF,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAE5D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD"}
1
+ {"version":3,"file":"addresses.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/addresses.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,+CAA+C,CAAA;AACxE,eAAO,MAAM,YAAY,+CAA+C,CAAA;AAExE,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,OAAO,CAE5D"}
@@ -1,16 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.NATIVE_TOKEN_ADDRESS = exports.USD_ADDRESS = exports.ONES_ADDRESS = exports.ZERO_ADDRESS = void 0;
3
+ exports.ONES_ADDRESS = exports.ZERO_ADDRESS = void 0;
4
4
  exports.equalAddresses = equalAddresses;
5
- exports.isNativeToken = isNativeToken;
6
5
  exports.ZERO_ADDRESS = '0x0000000000000000000000000000000000000000';
7
6
  exports.ONES_ADDRESS = '0xFFfFfFffFFfffFFfFFfFFFFFffFFFffffFfFFFfF';
8
- exports.USD_ADDRESS = '0x0000000000000000000000000000000000000348';
9
- exports.NATIVE_TOKEN_ADDRESS = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
10
7
  function equalAddresses(a, b) {
11
8
  return a.toLowerCase() === b.toLowerCase();
12
9
  }
13
- function isNativeToken(token) {
14
- return equalAddresses(token, exports.NATIVE_TOKEN_ADDRESS);
15
- }
16
10
  //# sourceMappingURL=addresses.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/shared/utils/addresses.ts"],"names":[],"mappings":";;;AAKA,wCAEC;AAED,sCAEC;AAXY,QAAA,YAAY,GAAG,4CAA4C,CAAA;AAC3D,QAAA,YAAY,GAAG,4CAA4C,CAAA;AAC3D,QAAA,WAAW,GAAG,4CAA4C,CAAA;AAC1D,QAAA,oBAAoB,GAAG,4CAA4C,CAAA;AAEhF,SAAgB,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;AAC5C,CAAC;AAED,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO,cAAc,CAAC,KAAK,EAAE,4BAAoB,CAAC,CAAA;AACpD,CAAC"}
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/shared/utils/addresses.ts"],"names":[],"mappings":";;;AAGA,wCAEC;AALY,QAAA,YAAY,GAAG,4CAA4C,CAAA;AAC3D,QAAA,YAAY,GAAG,4CAA4C,CAAA;AAExE,SAAgB,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,OAAO,CAAC,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,WAAW,EAAE,CAAA;AAC5C,CAAC"}
@@ -4,6 +4,6 @@ export declare const Chains: {
4
4
  readonly Arbitrum: 42161;
5
5
  readonly Base: 8453;
6
6
  readonly Gnosis: 100;
7
- readonly Sonic: 136;
7
+ readonly Sonic: 146;
8
8
  };
9
9
  //# sourceMappingURL=chains.d.ts.map
@@ -7,6 +7,6 @@ exports.Chains = {
7
7
  Arbitrum: 42161,
8
8
  Base: 8453,
9
9
  Gnosis: 100,
10
- Sonic: 136,
10
+ Sonic: 146,
11
11
  };
12
12
  //# sourceMappingURL=chains.js.map
@@ -3,5 +3,6 @@ export * from './bytes';
3
3
  export * from './chains';
4
4
  export * from './numbers';
5
5
  export * from './random';
6
+ export * from './tokens';
6
7
  export * from './validations';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,UAAU,CAAA;AACxB,cAAc,WAAW,CAAA;AACzB,cAAc,UAAU,CAAA;AACxB,cAAc,UAAU,CAAA;AACxB,cAAc,eAAe,CAAA"}
@@ -19,5 +19,6 @@ __exportStar(require("./bytes"), exports);
19
19
  __exportStar(require("./chains"), exports);
20
20
  __exportStar(require("./numbers"), exports);
21
21
  __exportStar(require("./random"), exports);
22
+ __exportStar(require("./tokens"), exports);
22
23
  __exportStar(require("./validations"), exports);
23
24
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,0CAAuB;AACvB,2CAAwB;AACxB,4CAAyB;AACzB,2CAAwB;AACxB,gDAA6B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,0CAAuB;AACvB,2CAAwB;AACxB,4CAAyB;AACzB,2CAAwB;AACxB,2CAAwB;AACxB,gDAA6B"}
@@ -0,0 +1,7 @@
1
+ import { BigNumberish } from './numbers';
2
+ export declare const USD_DECIMALS = 18;
3
+ export declare const USD_ADDRESS = "0x0000000000000000000000000000000000000348";
4
+ export declare const NATIVE_TOKEN_ADDRESS = "0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE";
5
+ export declare function isNativeToken(token: string): boolean;
6
+ export declare function toFloatUsd(value: BigNumberish): number;
7
+ //# sourceMappingURL=tokens.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.d.ts","sourceRoot":"","sources":["../../../src/shared/utils/tokens.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAExC,eAAO,MAAM,YAAY,KAAK,CAAA;AAC9B,eAAO,MAAM,WAAW,+CAA+C,CAAA;AAEvE,eAAO,MAAM,oBAAoB,+CAA+C,CAAA;AAEhF,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAEpD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,GAAG,MAAM,CAEtD"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NATIVE_TOKEN_ADDRESS = exports.USD_ADDRESS = exports.USD_DECIMALS = void 0;
4
+ exports.isNativeToken = isNativeToken;
5
+ exports.toFloatUsd = toFloatUsd;
6
+ const addresses_1 = require("./addresses");
7
+ exports.USD_DECIMALS = 18;
8
+ exports.USD_ADDRESS = '0x0000000000000000000000000000000000000348';
9
+ exports.NATIVE_TOKEN_ADDRESS = '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE';
10
+ function isNativeToken(token) {
11
+ return (0, addresses_1.equalAddresses)(token, exports.NATIVE_TOKEN_ADDRESS);
12
+ }
13
+ function toFloatUsd(value) {
14
+ return Number(BigInt(value).toString()) / 10 ** exports.USD_DECIMALS;
15
+ }
16
+ //# sourceMappingURL=tokens.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../../src/shared/utils/tokens.ts"],"names":[],"mappings":";;;AAQA,sCAEC;AAED,gCAEC;AAdD,2CAA4C;AAG/B,QAAA,YAAY,GAAG,EAAE,CAAA;AACjB,QAAA,WAAW,GAAG,4CAA4C,CAAA;AAE1D,QAAA,oBAAoB,GAAG,4CAA4C,CAAA;AAEhF,SAAgB,aAAa,CAAC,KAAa;IACzC,OAAO,IAAA,0BAAc,EAAC,KAAK,EAAE,4BAAoB,CAAC,CAAA;AACpD,CAAC;AAED,SAAgB,UAAU,CAAC,KAAmB;IAC5C,OAAO,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,oBAAY,CAAA;AAC9D,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { z } from 'zod';
2
+ export declare function eip712TypesToZodValidator(fields: {
3
+ name: string;
4
+ type: string;
5
+ }[]): z.ZodTuple<[z.ZodTypeAny, ...z.ZodTypeAny[]], null>;
6
+ //# sourceMappingURL=eip712Types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eip712Types.d.ts","sourceRoot":"","sources":["../../../src/shared/validators/eip712Types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAc,MAAM,KAAK,CAAA;AAEnC,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,uDAGjF"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.eip712TypesToZodValidator = eip712TypesToZodValidator;
4
+ const zod_1 = require("zod");
5
+ function eip712TypesToZodValidator(fields) {
6
+ const items = fields.map(({ name, type }) => fieldToZodValidator(name, type));
7
+ return zod_1.z.tuple(items);
8
+ }
9
+ function fieldToZodValidator(name, type) {
10
+ return zod_1.z.object({ name: zod_1.z.literal(name), type: zod_1.z.literal(type) });
11
+ }
12
+ //# sourceMappingURL=eip712Types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eip712Types.js","sourceRoot":"","sources":["../../../src/shared/validators/eip712Types.ts"],"names":[],"mappings":";;AAEA,8DAGC;AALD,6BAAmC;AAEnC,SAAgB,yBAAyB,CAAC,MAAwC;IAChF,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAkC,CAAA;IAC9G,OAAO,OAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;AACvB,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAAY;IACrD,OAAO,OAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;AACnE,CAAC"}
@@ -1,3 +1,4 @@
1
+ export * from './eip712Types';
1
2
  export * from './events';
2
3
  export * from './executions';
3
4
  export * from './intents';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/validators/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/validators/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA;AAC7B,cAAc,UAAU,CAAA;AACxB,cAAc,cAAc,CAAA;AAC5B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA"}
@@ -14,6 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./eip712Types"), exports);
17
18
  __exportStar(require("./events"), exports);
18
19
  __exportStar(require("./executions"), exports);
19
20
  __exportStar(require("./intents"), exports);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/validators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAwB;AACxB,+CAA4B;AAC5B,4CAAyB;AACzB,+CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/shared/validators/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,gDAA6B;AAC7B,2CAAwB;AACxB,+CAA4B;AAC5B,4CAAyB;AACzB,+CAA4B"}
@@ -0,0 +1,10 @@
1
+ import { Address, Signer } from '../shared';
2
+ export declare class ValidatorSigner {
3
+ private readonly signer;
4
+ constructor(signer: Signer);
5
+ recoverSignerFromExecutionSig(signature: string, executionSig: string): Address;
6
+ signExecutionSig(executionSig: string): Promise<string>;
7
+ recoverSignerFromIntentHash(signature: string, intentHash: string): Address;
8
+ signIntentHash(intentHash: string): Promise<string>;
9
+ }
10
+ //# sourceMappingURL=ValidatorSigner.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidatorSigner.d.ts","sourceRoot":"","sources":["../../src/validator/ValidatorSigner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAQ3C,qBAAa,eAAe;IACd,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAAN,MAAM,EAAE,MAAM;IAE3C,6BAA6B,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO;IAMzE,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI7D,2BAA2B,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO;IAMrE,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAG1D"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ValidatorSigner = void 0;
4
+ const eip712Types_1 = require("./eip712Types");
5
+ class ValidatorSigner {
6
+ constructor(signer) {
7
+ this.signer = signer;
8
+ }
9
+ recoverSignerFromExecutionSig(signature, executionSig) {
10
+ return this.signer
11
+ .verifyTypedData(eip712Types_1.VALIDATOR_712_DOMAIN, eip712Types_1.EXECUTION_SIG_VALIDATION_712_TYPES, { executionSig }, signature)
12
+ .toLowerCase();
13
+ }
14
+ async signExecutionSig(executionSig) {
15
+ return this.signer.signTypedData(eip712Types_1.VALIDATOR_712_DOMAIN, eip712Types_1.EXECUTION_SIG_VALIDATION_712_TYPES, { executionSig });
16
+ }
17
+ recoverSignerFromIntentHash(signature, intentHash) {
18
+ return this.signer
19
+ .verifyTypedData(eip712Types_1.VALIDATOR_712_DOMAIN, eip712Types_1.INTENT_HASH_VALIDATION_712_TYPES, { intentHash }, signature)
20
+ .toLowerCase();
21
+ }
22
+ async signIntentHash(intentHash) {
23
+ return this.signer.signTypedData(eip712Types_1.VALIDATOR_712_DOMAIN, eip712Types_1.INTENT_HASH_VALIDATION_712_TYPES, { intentHash });
24
+ }
25
+ }
26
+ exports.ValidatorSigner = ValidatorSigner;
27
+ //# sourceMappingURL=ValidatorSigner.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ValidatorSigner.js","sourceRoot":"","sources":["../../src/validator/ValidatorSigner.ts"],"names":[],"mappings":";;;AAEA,+CAIsB;AAEtB,MAAa,eAAe;IAC1B,YAA6B,MAAc;QAAd,WAAM,GAAN,MAAM,CAAQ;IAAG,CAAC;IAE/C,6BAA6B,CAAC,SAAiB,EAAE,YAAoB;QACnE,OAAO,IAAI,CAAC,MAAM;aACf,eAAe,CAAC,kCAAoB,EAAE,gDAAkC,EAAE,EAAE,YAAY,EAAE,EAAE,SAAS,CAAC;aACtG,WAAW,EAAE,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,YAAoB;QACzC,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,kCAAoB,EAAE,gDAAkC,EAAE,EAAE,YAAY,EAAE,CAAC,CAAA;IAC9G,CAAC;IAED,2BAA2B,CAAC,SAAiB,EAAE,UAAkB;QAC/D,OAAO,IAAI,CAAC,MAAM;aACf,eAAe,CAAC,kCAAoB,EAAE,8CAAgC,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,CAAC;aAClG,WAAW,EAAE,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,UAAkB;QACrC,OAAO,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,kCAAoB,EAAE,8CAAgC,EAAE,EAAE,UAAU,EAAE,CAAC,CAAA;IAC1G,CAAC;CACF;AAtBD,0CAsBC"}
@@ -0,0 +1,17 @@
1
+ export declare const VALIDATOR_712_DOMAIN: {
2
+ name: string;
3
+ version: string;
4
+ };
5
+ export declare const EXECUTION_SIG_VALIDATION_712_TYPES: {
6
+ Validation: {
7
+ name: string;
8
+ type: string;
9
+ }[];
10
+ };
11
+ export declare const INTENT_HASH_VALIDATION_712_TYPES: {
12
+ Validation: {
13
+ name: string;
14
+ type: string;
15
+ }[];
16
+ };
17
+ //# sourceMappingURL=eip712Types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eip712Types.d.ts","sourceRoot":"","sources":["../../src/validator/eip712Types.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,oBAAoB;;;CAGhC,CAAA;AAED,eAAO,MAAM,kCAAkC;;;;;CAE9C,CAAA;AAED,eAAO,MAAM,gCAAgC;;;;;CAE5C,CAAA"}
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.INTENT_HASH_VALIDATION_712_TYPES = exports.EXECUTION_SIG_VALIDATION_712_TYPES = exports.VALIDATOR_712_DOMAIN = void 0;
4
+ exports.VALIDATOR_712_DOMAIN = {
5
+ name: 'Mimic Protocol - Validator',
6
+ version: '1',
7
+ };
8
+ exports.EXECUTION_SIG_VALIDATION_712_TYPES = {
9
+ Validation: [{ name: 'executionSig', type: 'bytes' }],
10
+ };
11
+ exports.INTENT_HASH_VALIDATION_712_TYPES = {
12
+ Validation: [{ name: 'intentHash', type: 'bytes' }],
13
+ };
14
+ //# sourceMappingURL=eip712Types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eip712Types.js","sourceRoot":"","sources":["../../src/validator/eip712Types.ts"],"names":[],"mappings":";;;AAAa,QAAA,oBAAoB,GAAG;IAClC,IAAI,EAAE,4BAA4B;IAClC,OAAO,EAAE,GAAG;CACb,CAAA;AAEY,QAAA,kCAAkC,GAAG;IAChD,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;CACtD,CAAA;AAEY,QAAA,gCAAgC,GAAG;IAC9C,UAAU,EAAE,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;CACpD,CAAA"}
@@ -1,2 +1,4 @@
1
1
  export * from './constants';
2
+ export * from './eip712Types';
3
+ export * from './ValidatorSigner';
2
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,mBAAmB,CAAA"}
@@ -15,4 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./constants"), exports);
18
+ __exportStar(require("./eip712Types"), exports);
19
+ __exportStar(require("./ValidatorSigner"), exports);
18
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/validator/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,gDAA6B;AAC7B,oDAAiC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mimicprotocol/sdk",
3
- "version": "0.0.1-rc.0",
3
+ "version": "0.0.1-rc.2",
4
4
  "license": "GPL-3.0",
5
5
  "private": false,
6
6
  "description": "Mimic Protocol SDK",