dequanto 0.2.52 → 0.2.55

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 (70) hide show
  1. package/lib/cjs/contracts/ContractStorageReaderBase.js.map +1 -1
  2. package/lib/cjs/contracts/deploy/proxy/$proxyDeploy.js +4 -4
  3. package/lib/cjs/contracts/deploy/proxy/$proxyDeploy.js.map +1 -1
  4. package/lib/cjs/gen/Generator.js +1 -0
  5. package/lib/cjs/gen/Generator.js.map +1 -1
  6. package/lib/cjs/gen/GeneratorFromAbi.js +38 -9
  7. package/lib/cjs/gen/GeneratorFromAbi.js.map +1 -1
  8. package/lib/cjs/gen/GeneratorStorageReader.js +13 -2
  9. package/lib/cjs/gen/GeneratorStorageReader.js.map +1 -1
  10. package/lib/cjs/solidity/SlotsParser/Ast.js +20 -2
  11. package/lib/cjs/solidity/SlotsParser/Ast.js.map +1 -1
  12. package/lib/cjs/solidity/SlotsParser.js +31 -19
  13. package/lib/cjs/solidity/SlotsParser.js.map +1 -1
  14. package/lib/cjs/solidity/SlotsStorage.js +4 -1
  15. package/lib/cjs/solidity/SlotsStorage.js.map +1 -1
  16. package/lib/cjs/solidity/storage/SlotsStorageTransport.js +6 -9
  17. package/lib/cjs/solidity/storage/SlotsStorageTransport.js.map +1 -1
  18. package/lib/cjs/solidity/storage/handlers/SlotDynamicArrayHandler.js +1 -1
  19. package/lib/cjs/solidity/storage/handlers/SlotDynamicArrayHandler.js.map +1 -1
  20. package/lib/cjs/utils/$bigint.js +3 -1
  21. package/lib/cjs/utils/$bigint.js.map +1 -1
  22. package/lib/esm/contracts/ContractStorageReaderBase.js.map +1 -1
  23. package/lib/esm/contracts/deploy/proxy/$proxyDeploy.js.map +1 -1
  24. package/lib/esm/contracts/deploy/proxy/$proxyDeploy.mjs +4 -4
  25. package/lib/esm/gen/Generator.js.map +1 -1
  26. package/lib/esm/gen/Generator.mjs +1 -0
  27. package/lib/esm/gen/GeneratorFromAbi.js.map +1 -1
  28. package/lib/esm/gen/GeneratorFromAbi.mjs +38 -9
  29. package/lib/esm/gen/GeneratorStorageReader.js.map +1 -1
  30. package/lib/esm/gen/GeneratorStorageReader.mjs +13 -2
  31. package/lib/esm/solidity/SlotsParser/Ast.js.map +1 -1
  32. package/lib/esm/solidity/SlotsParser/Ast.mjs +20 -2
  33. package/lib/esm/solidity/SlotsParser.js.map +1 -1
  34. package/lib/esm/solidity/SlotsParser.mjs +31 -19
  35. package/lib/esm/solidity/SlotsStorage.js.map +1 -1
  36. package/lib/esm/solidity/SlotsStorage.mjs +4 -1
  37. package/lib/esm/solidity/storage/SlotsStorageTransport.js.map +1 -1
  38. package/lib/esm/solidity/storage/SlotsStorageTransport.mjs +6 -9
  39. package/lib/esm/solidity/storage/handlers/SlotDynamicArrayHandler.js.map +1 -1
  40. package/lib/esm/solidity/storage/handlers/SlotDynamicArrayHandler.mjs +1 -1
  41. package/lib/esm/utils/$bigint.js.map +1 -1
  42. package/lib/esm/utils/$bigint.mjs +3 -1
  43. package/lib/types/contracts/ContractStorageReaderBase.d.ts +2 -2
  44. package/lib/types/gen/Generator.d.ts +17 -0
  45. package/lib/types/gen/GeneratorFromAbi.d.ts +7 -0
  46. package/lib/types/gen/GeneratorStorageReader.d.ts +1 -0
  47. package/lib/types/solidity/SlotsParser/models.d.ts +6 -1
  48. package/lib/types/solidity/SlotsStorage.d.ts +4 -4
  49. package/lib/types/solidity/storage/SlotsStorageTransport.d.ts +5 -5
  50. package/lib/types/utils/$bigint.d.ts +1 -1
  51. package/package.json +2 -2
  52. package/src/contracts/ContractStorageReaderBase.ts +2 -2
  53. package/src/contracts/deploy/proxy/$proxyDeploy.ts +4 -4
  54. package/src/gen/Generator.ts +4 -0
  55. package/src/gen/GeneratorFromAbi.ts +40 -10
  56. package/src/gen/GeneratorStorageReader.ts +20 -7
  57. package/src/solidity/SlotsParser/Ast.ts +20 -2
  58. package/src/solidity/SlotsParser/models.ts +5 -1
  59. package/src/solidity/SlotsParser.ts +38 -22
  60. package/src/solidity/SlotsStorage.ts +8 -3
  61. package/src/solidity/storage/SlotsStorageTransport.ts +6 -9
  62. package/src/solidity/storage/handlers/SlotDynamicArrayHandler.ts +1 -1
  63. package/src/utils/$bigint.ts +4 -1
  64. package/tsconfig.json +2 -1
  65. package/lib/cjs/gen/Ast.js +0 -14
  66. package/lib/cjs/gen/Ast.js.map +0 -1
  67. package/lib/esm/gen/Ast.js.map +0 -1
  68. package/lib/esm/gen/Ast.mjs +0 -10
  69. package/lib/types/gen/Ast.d.ts +0 -3
  70. package/src/gen/Ast.ts +0 -12
@@ -1 +1 @@
1
- {"version":3,"file":"SlotsStorageTransport.js","sourceRoot":"","sources":["../../../../src/solidity/storage/SlotsStorageTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SlotsStorageTransport.js","sourceRoot":"","sources":["../../../../src/solidity/storage/SlotsStorageTransport.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,7 @@ export class SlotsCursorTransport {
24
24
  extractMappingKeys(ctx) {
25
25
  return this.transport.extractMappingKeys(ctx);
26
26
  }
27
- mapToGlobalSlot(slot = 0) {
27
+ mapToGlobalSlot(slot = 0n) {
28
28
  return BigInt(this.cursor.slot) + BigInt(slot);
29
29
  }
30
30
  }
@@ -61,7 +61,7 @@ export class SlotsStorageTransport {
61
61
  extractMappingKeys(ctx) {
62
62
  throw new Error(`SlotMappingReader does not support the fetchAll method, as the size could be infinite`);
63
63
  }
64
- mapToGlobalSlot(slot = 0) {
64
+ mapToGlobalSlot(slot = 0n) {
65
65
  return BigInt(slot);
66
66
  }
67
67
  async getStorageAtInner(slot) {
@@ -69,7 +69,7 @@ export class SlotsStorageTransport {
69
69
  }
70
70
  }
71
71
  export class SlotsStorageTransportForArray {
72
- constructor(transport, slotNr, elementI = 0, slotsPerElement = 1, slot) {
72
+ constructor(transport, slotNr, elementI = 0, slotsPerElement = 1n, slot) {
73
73
  this.transport = transport;
74
74
  this.slotNr = slotNr;
75
75
  this.elementI = elementI;
@@ -77,19 +77,16 @@ export class SlotsStorageTransportForArray {
77
77
  this.slot = slot;
78
78
  }
79
79
  async getStorageAt(slot, position = 0, size = 256) {
80
- if (typeof slot !== 'number') {
81
- throw new Error(`Array slot reader supports only numeric positions. Slot ${slot}`);
82
- }
83
80
  let location = this.mapToGlobalSlot(slot);
84
81
  let memory = await this.getUnderlyingTransport().getStorageAt(location, position, size);
85
82
  return memory;
86
83
  }
87
84
  async setStorageAt(slot, position, size, buffer) {
88
- let location = this.mapToGlobalSlot(Number(slot));
85
+ let location = this.mapToGlobalSlot(BigInt(slot));
89
86
  let memory = await this.transport.setStorageAt(location, position, size, buffer);
90
87
  return memory;
91
88
  }
92
- mapToGlobalSlot(slotPositionNr = 0) {
89
+ mapToGlobalSlot(slotPositionNr = 0n) {
93
90
  let packedRoot = this.transport?.mapToGlobalSlot(this.slotNr) ?? 0n;
94
91
  let packedNextHash = $abiUtils.encodePacked({
95
92
  value: $hex.padBytes($hex.toHexBuffer(packedRoot), 32),
@@ -111,7 +108,7 @@ export class SlotsStorageTransportForArray {
111
108
  }
112
109
  }
113
110
  export class SlotsStorageTransportForMapping {
114
- constructor(transport, slotNr, key, slotsPerElement = 1) {
111
+ constructor(transport, slotNr, key, slotsPerElement = 1n) {
115
112
  this.transport = transport;
116
113
  this.slotNr = slotNr;
117
114
  this.key = key;
@@ -1 +1 @@
1
- {"version":3,"file":"SlotDynamicArrayHandler.js","sourceRoot":"","sources":["../../../../../src/solidity/storage/handlers/SlotDynamicArrayHandler.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,+DAA4D;AAC5D,sDAAmD;AACnD,qDAAkD;AAElD,oEAAyE;AACzE,0DAAwD;AAExD,MAAa,uBAAwB,SAAQ,oCAAiB;IAE1D,KAAK,CAAC,GAAG,CAAC,IAAqB;QAC3B,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC1B;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE;YACtB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;SACxB;QACD,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAqB,EAAE,KAAU;QACvC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC9C;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpC,OAAO,MAAM,cAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAGO,KAAK,CAAC,eAAe,CAAC,GAAkB;QAE5C,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;SAClG;QAED,IAAI,QAAQ,GAAG,mBAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,SAAS,GAAG,MAAM,yBAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEzD,gFAAgF;QAChF,IAAI,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC;QAE/D,IAAI,SAAS,GAAG,IAAI,qDAA6B,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvH,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACnB,CAAC;CAEJ;AAjDD,0DAiDC"}
1
+ {"version":3,"file":"SlotDynamicArrayHandler.js","sourceRoot":"","sources":["../../../../../src/solidity/storage/handlers/SlotDynamicArrayHandler.ts"],"names":[],"mappings":";;;;;;AAAA,gDAAwB;AACxB,+DAA4D;AAC5D,sDAAmD;AACnD,qDAAkD;AAElD,oEAAyE;AACzE,0DAAwD;AAExD,MAAa,uBAAwB,SAAQ,oCAAiB;IAE1D,KAAK,CAAC,GAAG,CAAC,IAAqB;QAC3B,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC1B;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,GAAG,CAAC,GAAG,KAAK,QAAQ,EAAE;YACtB,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;SACxB;QACD,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAC7C,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,IAAqB,EAAE,KAAU;QACvC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;SAC9C;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC;QAC7C,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,QAAQ;QACV,IAAI,SAAS,GAAG,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;QAEpC,OAAO,MAAM,cAAI,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,KAAK,EAAC,CAAC,EAAC,EAAE;YACzD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;QACjD,CAAC,CAAC,CAAC,YAAY,EAAE,CAAA;IACrB,CAAC;IAGO,KAAK,CAAC,eAAe,CAAC,GAAkB;QAE5C,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE;YACtB,MAAM,IAAI,KAAK,CAAC,qDAAqD,GAAG,CAAC,GAAG,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC;SAClG;QAED,IAAI,QAAQ,GAAG,mBAAQ,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,SAAS,GAAG,MAAM,yBAAW,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAEzD,gFAAgF;QAChF,IAAI,eAAe,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC;QAEhE,IAAI,SAAS,GAAG,IAAI,qDAA6B,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,EAAE,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACvH,IAAI,OAAO,GAAG,IAAI,2BAAY,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC;IACnB,CAAC;CAEJ;AAjDD,0DAiDC"}
@@ -37,7 +37,7 @@ export class SlotDynamicArrayHandler extends ASlotDynamicArray {
37
37
  let baseType = $abiType.array.getBaseType(this.slot.type);
38
38
  let baseSlots = await SlotsParser.slotsFromAbi(baseType);
39
39
  // take the last slot index as that one will give us the TOTAL SLOTs per element
40
- let slotsPerElement = baseSlots[baseSlots.length - 1].slot + 1;
40
+ let slotsPerElement = baseSlots[baseSlots.length - 1].slot + 1n;
41
41
  let transport = new SlotsStorageTransportForArray(this.transport, this.slot.slot, key.key, slotsPerElement, this.slot);
42
42
  let storage = new SlotsStorage(transport, baseSlots);
43
43
  return storage;
@@ -1 +1 @@
1
- {"version":3,"file":"$bigint.js","sourceRoot":"","sources":["../../../src/utils/$bigint.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"$bigint.js","sourceRoot":"","sources":["../../../src/utils/$bigint.ts"],"names":[],"mappings":"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"}
@@ -66,9 +66,11 @@ export var $bigint;
66
66
  }
67
67
  $bigint_1.from = from;
68
68
  /**
69
- * @param amount e.g "2.4 ether", "10 gwei", "1.7^18", "123456", "1.7e18"
69
+ * @param amount e.g "2.4 ether", "10 gwei", "1.7^18", "123456", "1.7e18", "1_000_000"
70
70
  */
71
71
  function parse(amount) {
72
+ // clean 1_000
73
+ amount = amount.replaceAll('_', '');
72
74
  if (/^\d+$/.test(amount) || $is.Hex(amount)) {
73
75
  return BigInt(amount);
74
76
  }
@@ -1,4 +1,4 @@
1
- import type { ISlotVarDefinition } from 'dequanto/solidity/SlotsParser/models';
1
+ import type { ISlotVarDefinitionInput } from 'dequanto/solidity/SlotsParser/models';
2
2
  import { IBlockchainExplorer } from 'dequanto/explorer/IBlockchainExplorer';
3
3
  import { Web3Client } from 'dequanto/clients/Web3Client';
4
4
  import { TAddress } from 'dequanto/models/TAddress';
@@ -11,5 +11,5 @@ export declare class ContractStorageReaderBase {
11
11
  constructor(address: TAddress, client: Web3Client, explorer: IBlockchainExplorer);
12
12
  $get(...args: Parameters<SlotsStorage['get']>): Promise<any>;
13
13
  $set(...args: Parameters<SlotsStorage['set']>): Promise<void>;
14
- protected $createHandler(slots: ISlotVarDefinition[]): void;
14
+ protected $createHandler(slots: ISlotVarDefinitionInput[]): void;
15
15
  }
@@ -27,6 +27,8 @@ export interface IGenerateOptions {
27
27
  * c) Method function to read the implementation address from
28
28
  */
29
29
  implementation?: TEth.Hex | TEth.Address | string;
30
+ /** When false: no files will be saved. Use "files" in result */
31
+ save?: boolean;
30
32
  /** ABI will be save alongside with TS classes */
31
33
  saveAbi?: boolean;
32
34
  /** Sources will not be saved if FALSE */
@@ -44,6 +46,11 @@ export declare class Generator {
44
46
  address: `0x${string}`;
45
47
  implementation: `0x${string}`;
46
48
  contractName: string;
49
+ files: {
50
+ kind: string;
51
+ path: string;
52
+ content: string;
53
+ }[];
47
54
  }>;
48
55
  static generateFromJson(artifact: string): Promise<{
49
56
  main: string;
@@ -52,6 +59,11 @@ export declare class Generator {
52
59
  address: `0x${string}`;
53
60
  implementation: `0x${string}`;
54
61
  contractName: string;
62
+ files: {
63
+ kind: string;
64
+ path: string;
65
+ content: string;
66
+ }[];
55
67
  }>;
56
68
  /**
57
69
  * @deprecated Was possible to generate the Contract Class based on the meta information header in TS file
@@ -64,6 +76,11 @@ export declare class Generator {
64
76
  address: `0x${string}`;
65
77
  implementation: `0x${string}`;
66
78
  contractName: string;
79
+ files: {
80
+ kind: string;
81
+ path: string;
82
+ content: string;
83
+ }[];
67
84
  }>;
68
85
  private getAbi;
69
86
  private getSources;
@@ -13,6 +13,8 @@ export declare class GeneratorFromAbi {
13
13
  output: string;
14
14
  outputFileExt?: string;
15
15
  implementation: TAddress;
16
+ /** No FS writes, use files in response */
17
+ save?: boolean;
16
18
  saveAbi?: boolean;
17
19
  saveSources?: boolean;
18
20
  sources?: {
@@ -31,6 +33,11 @@ export declare class GeneratorFromAbi {
31
33
  address: `0x${string}`;
32
34
  implementation: `0x${string}`;
33
35
  contractName: string;
36
+ files: {
37
+ kind: string;
38
+ path: string;
39
+ content: string;
40
+ }[];
34
41
  }>;
35
42
  private getRelativePath;
36
43
  }
@@ -21,6 +21,7 @@ export declare class GeneratorStorageReader {
21
21
  sourcePath?: string;
22
22
  error?: Error;
23
23
  }>;
24
+ private serializeSlotDefinitions;
24
25
  private serializeSlots;
25
26
  private serializeSlot;
26
27
  private getParameters;
@@ -1,3 +1,4 @@
1
+ import { TEth } from 'dequanto/models/TEth';
1
2
  import type { SourceFile } from './SourceFile';
2
3
  export type TSourceFileImport = {
3
4
  error?: string;
@@ -5,7 +6,7 @@ export type TSourceFileImport = {
5
6
  file: SourceFile;
6
7
  };
7
8
  export interface ISlotVarDefinition {
8
- slot: number;
9
+ slot: bigint;
9
10
  position: number;
10
11
  name: string;
11
12
  type: string;
@@ -13,6 +14,10 @@ export interface ISlotVarDefinition {
13
14
  memory?: 'storage' | 'constant' | 'immutable';
14
15
  value?: string | number | bigint;
15
16
  }
17
+ /** Slot definitions accepted from callers, including older generated readers. */
18
+ export type ISlotVarDefinitionInput = Omit<ISlotVarDefinition, 'slot'> & {
19
+ slot: number | bigint | TEth.Hex | string;
20
+ };
16
21
  export interface ISlotsParserOption {
17
22
  files?: {
18
23
  path: string;
@@ -2,16 +2,16 @@ import { Web3Client } from 'dequanto/clients/Web3Client';
2
2
  import { ISlotsStorageTransport } from './storage/SlotsStorageTransport';
3
3
  import { TAddress } from 'dequanto/models/TAddress';
4
4
  import { IAccessorItem } from './storage/Accessor';
5
- import { ISlotVarDefinition } from './SlotsParser/models';
5
+ import { ISlotVarDefinition, ISlotVarDefinitionInput } from './SlotsParser/models';
6
6
  import { TEth } from 'dequanto/models/TEth';
7
7
  export declare class SlotsStorage {
8
8
  transport: ISlotsStorageTransport;
9
- slots: ISlotVarDefinition[];
10
- static createWithClient(client: Web3Client, address: TAddress, slots: ISlotVarDefinition[], params?: {
9
+ static createWithClient(client: Web3Client, address: TAddress, slots: ISlotVarDefinitionInput[], params?: {
11
10
  blockNumber?: number;
12
11
  storageOffset?: TEth.Hex | bigint;
13
12
  }): SlotsStorage;
14
- constructor(transport: ISlotsStorageTransport, slots: ISlotVarDefinition[]);
13
+ slots: ISlotVarDefinition[];
14
+ constructor(transport: ISlotsStorageTransport, slots: ISlotVarDefinitionInput[]);
15
15
  get<T = any>(path?: string | (string | number | bigint)[] | IAccessorItem[]): Promise<T>;
16
16
  set(path: string | IAccessorItem[], value: any): Promise<void>;
17
17
  fetchAll(): Promise<any>;
@@ -28,7 +28,7 @@ export declare class SlotsCursorTransport implements ISlotsStorageTransport {
28
28
  extractMappingKeys(ctx: any): Promise<{
29
29
  keys: (string | number | bigint)[][];
30
30
  }>;
31
- mapToGlobalSlot(slot?: number): bigint;
31
+ mapToGlobalSlot(slot?: string | number | bigint): bigint;
32
32
  }
33
33
  export declare class SlotsStorageTransport implements ISlotsStorageTransport {
34
34
  client: Web3Client;
@@ -44,7 +44,7 @@ export declare class SlotsStorageTransport implements ISlotsStorageTransport {
44
44
  extractMappingKeys(ctx: any): Promise<{
45
45
  keys: (string | number | bigint)[][];
46
46
  }>;
47
- mapToGlobalSlot(slot?: number): bigint;
47
+ mapToGlobalSlot(slot?: string | number | bigint): bigint;
48
48
  protected getStorageAtInner(slot: number | bigint | TEth.Hex): Promise<`0x${string}`>;
49
49
  }
50
50
  export declare class SlotsStorageTransportForArray implements ISlotsStorageTransport {
@@ -53,10 +53,10 @@ export declare class SlotsStorageTransportForArray implements ISlotsStorageTrans
53
53
  private elementI;
54
54
  private slotsPerElement;
55
55
  private slot?;
56
- constructor(transport: ISlotsStorageTransport, slotNr: number | bigint, elementI?: number, slotsPerElement?: number, slot?: ISlotVarDefinition);
56
+ constructor(transport: ISlotsStorageTransport, slotNr: number | bigint, elementI?: number, slotsPerElement?: number | bigint, slot?: ISlotVarDefinition);
57
57
  getStorageAt(slot: string | number | bigint, position?: number, size?: number): Promise<string>;
58
58
  setStorageAt(slot: string | number | bigint, position: number, size: number, buffer: string | number | bigint | boolean): Promise<void>;
59
- mapToGlobalSlot(slotPositionNr?: number | bigint): bigint;
59
+ mapToGlobalSlot(slotPositionNr?: string | number | bigint): bigint;
60
60
  extractMappingKeys(ctx: any): Promise<{
61
61
  keys: (string | number | bigint)[][];
62
62
  }>;
@@ -67,7 +67,7 @@ export declare class SlotsStorageTransportForMapping implements ISlotsStorageTra
67
67
  private slotNr;
68
68
  private key;
69
69
  private slotsPerElement;
70
- constructor(transport: ISlotsStorageTransport, slotNr: number, key: any, slotsPerElement?: number);
70
+ constructor(transport: ISlotsStorageTransport, slotNr: number | bigint, key: any, slotsPerElement?: number | bigint);
71
71
  getStorageAt(slot: string | number | bigint, position: number, size: number): Promise<string>;
72
72
  setStorageAt(slot: string | number | bigint, position: number, size: number, buffer: string | number | bigint | boolean): Promise<void>;
73
73
  mapToGlobalSlot(slotPositionNr?: number | string | bigint): bigint;
@@ -9,7 +9,7 @@ export declare namespace $bigint {
9
9
  function toBigInt(amount: string | number | bigint | Uint8Array): bigint;
10
10
  function from(amount: number | bigint | string): bigint;
11
11
  /**
12
- * @param amount e.g "2.4 ether", "10 gwei", "1.7^18", "123456", "1.7e18"
12
+ * @param amount e.g "2.4 ether", "10 gwei", "1.7^18", "123456", "1.7e18", "1_000_000"
13
13
  */
14
14
  function parse(amount: string): bigint;
15
15
  function ensureWei(amount: number | bigint, decimals: number): bigint;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dequanto",
3
- "version": "0.2.52",
3
+ "version": "0.2.55",
4
4
  "author": {
5
5
  "name": "Alex Kit",
6
6
  "email": "alex.kit@atmajs.com"
@@ -68,7 +68,7 @@
68
68
  "@noble/hashes": "^1.3.2",
69
69
  "@scure/bip32": "^1.3.2",
70
70
  "@scure/bip39": "^1.2.1",
71
- "@solidity-parser/parser": "^0.16.0",
71
+ "@solidity-parser/parser": "^0.20.2",
72
72
  "a-di": "^1.0.29",
73
73
  "alot": "^0.3.12",
74
74
  "appcfg": "^0.5.12",
@@ -1,4 +1,4 @@
1
- import type { ISlotVarDefinition } from 'dequanto/solidity/SlotsParser/models';
1
+ import type { ISlotVarDefinitionInput } from 'dequanto/solidity/SlotsParser/models';
2
2
  import { IBlockchainExplorer } from 'dequanto/explorer/IBlockchainExplorer';
3
3
  import { Web3Client } from 'dequanto/clients/Web3Client';
4
4
  import { TAddress } from 'dequanto/models/TAddress';
@@ -23,7 +23,7 @@ export class ContractStorageReaderBase {
23
23
  return this.$storage.set(...args);
24
24
  }
25
25
 
26
- protected $createHandler(slots: ISlotVarDefinition[]) {
26
+ protected $createHandler(slots: ISlotVarDefinitionInput[]) {
27
27
  this.$storage = SlotsStorage.createWithClient(this.client, this.address, slots);
28
28
  }
29
29
  }
@@ -277,14 +277,14 @@ export namespace $proxyDeploy {
277
277
  // Dynamic variables occupy a single slot.
278
278
  return {
279
279
  variable: $var,
280
- offset: $var.slot * 256,
281
- length: 256
280
+ offset: BigInt($var.slot) * 256n,
281
+ length: 256n
282
282
  }
283
283
  };
284
284
  return {
285
285
  variable: $var,
286
- offset: $var.slot * 256 + $var.position,
287
- length: $var.size
286
+ offset: BigInt($var.slot) * 256n + BigInt($var.position),
287
+ length: BigInt($var.size)
288
288
  };
289
289
  }
290
290
  function serializePath (path: string, $var: ISlotVarDefinition) {
@@ -56,6 +56,9 @@ export interface IGenerateOptions {
56
56
  */
57
57
  implementation?: TEth.Hex | TEth.Address | string
58
58
 
59
+ /** When false: no files will be saved. Use "files" in result */
60
+ save?: boolean
61
+
59
62
  /** ABI will be save alongside with TS classes */
60
63
  saveAbi?: boolean
61
64
 
@@ -240,6 +243,7 @@ export class Generator {
240
243
  implementation: implementation,
241
244
  sources: sources?.files,
242
245
  sourceMain: sourceMain,
246
+ save: this.options.save,
243
247
  saveAbi: this.options.saveAbi,
244
248
  saveSources: this.options.saveSources,
245
249
  client: this.client,
@@ -33,6 +33,8 @@ export class GeneratorFromAbi {
33
33
  output: string
34
34
  outputFileExt?: string
35
35
  implementation: TAddress
36
+ /** No FS writes, use files in response */
37
+ save?: boolean
36
38
  saveAbi?: boolean
37
39
  saveSources?: boolean
38
40
  sources?: {
@@ -320,24 +322,45 @@ export class GeneratorFromAbi {
320
322
  .replace(`/* $METHOD_TYPES$ */`, () => Str.indent(methodTypings.map(x => x.code).join('\n'), ' '))
321
323
  ;
322
324
 
325
+ if (opts.save !== false) {
326
+ await File.writeAsync(outputPath, code, { skipHooks: true });
327
+ }
328
+ const files = [
329
+ {
330
+ kind: 'binding',
331
+ path: outputPath,
332
+ content: code,
333
+ }
334
+ ];
323
335
 
324
- await File.writeAsync(outputPath, code, { skipHooks: true });
325
336
  if (outputSourceType === 'js') {
326
337
  let outputPathDts = outputPath.replace(/\.\w+$/, '.d.ts');
327
- await File.writeAsync(outputPathDts, codeDts, { skipHooks: true });
338
+ if (opts.save !== false) {
339
+ await File.writeAsync(outputPathDts, codeDts, { skipHooks: true });
340
+ }
341
+ files.push({
342
+ kind: 'declaration',
343
+ path: outputPathDts,
344
+ content: codeDts,
345
+ });
328
346
  }
329
347
 
330
348
 
331
- if (opts.saveAbi) {
332
- let path = class_Uri.combine(opts.output, outputDirectory, `${outputFilename}Abi.json`);
333
- await File.writeAsync(path, abiJson);
349
+ let outputPathAbi = class_Uri.combine(opts.output, outputDirectory, `${outputFilename}Abi.json`);
350
+ if (opts.saveAbi && opts.save !== false) {
351
+ await File.writeAsync(outputPathAbi, abiJson);
334
352
  }
353
+ files.push({
354
+ kind: 'abi',
355
+ path: outputPathAbi,
356
+ content: JSON.stringify(abiJson),
357
+ });
335
358
 
336
359
  $logger.log(`bold<green<${className}>> ABI wrapper class created: bold<${outputPath}>`);
337
360
 
338
361
  let sources = opts.sources;
339
362
  let sourceFiles = [];
340
- if (sources && opts.saveSources !== false) {
363
+ if (sources) {
341
364
  sourceFiles = await alot.fromObject(sources).mapAsync(async entry => {
342
365
  let sourceFilename = /\/?([^/]+$)/.exec(entry.key)[1];
343
366
  let sourcePath = entry.key;
@@ -351,9 +374,15 @@ export class GeneratorFromAbi {
351
374
  // sourcePath = `node_modules/${ sourcePath }`;
352
375
  // }
353
376
  let path = class_Uri.combine(opts.output, outputDirectory, outputFilename, sourcePath);
354
- await File.writeAsync(path, entry.value.content, { skipHooks: true });
355
-
356
- $logger.log(`Source code saved: ${path}`);
377
+ if (opts.saveSources !== false && opts.save !== false) {
378
+ await File.writeAsync(path, entry.value.content, { skipHooks: true });
379
+ $logger.log(`Source code saved: ${path}`);
380
+ }
381
+ files.push({
382
+ kind: 'source',
383
+ path: path,
384
+ content: entry.value.content,
385
+ });
357
386
  return path;
358
387
  }).toArrayAsync();
359
388
  }
@@ -363,7 +392,8 @@ export class GeneratorFromAbi {
363
392
  platform: opts.network,
364
393
  address: opts.address,
365
394
  implementation: opts.implementation,
366
- contractName: opts.contractName
395
+ contractName: opts.contractName,
396
+ files
367
397
  };
368
398
  }
369
399
 
@@ -11,6 +11,7 @@ import { $path } from 'dequanto/utils/$path'
11
11
  import { $gen } from './utils/$gen'
12
12
  import { ISlotVarDefinition } from 'dequanto/solidity/SlotsParser/models'
13
13
 
14
+
14
15
  export class GeneratorStorageReader {
15
16
 
16
17
  async generate(opts: {
@@ -72,12 +73,12 @@ export class GeneratorStorageReader {
72
73
  let code = template
73
74
  .replace(`$NAME$`, className)
74
75
  .replace(`/* METHODS */`, () => codeMethods)
75
- .replace(`$SLOTS$`, () => JSON.stringify(slots, null, ' '))
76
+ .replace(`$SLOTS$`, () => this.serializeSlotDefinitions(slots))
76
77
 
77
78
  let codeTypings = templateTypings
78
79
  .replace(`$NAME$`, className)
79
80
  .replace(`/* METHODS */`, () => codeMethodsTypings)
80
- .replace(`$SLOTS$`, () => JSON.stringify(slots, null, ' '))
81
+ .replace(`$SLOTS$`, () => this.serializeSlotDefinitions(slots))
81
82
 
82
83
  return {
83
84
  className: className,
@@ -87,7 +88,19 @@ export class GeneratorStorageReader {
87
88
  };
88
89
  }
89
90
 
90
- private serializeSlots (slots: ISlotVarDefinition[]) {
91
+ private serializeSlotDefinitions(slots: ISlotVarDefinition[]): string {
92
+ return JSON.stringify(slots, function (_key, value) {
93
+ if (typeof value !== 'bigint') {
94
+ return value;
95
+ }
96
+ if (value < Number.MAX_SAFE_INTEGER) {
97
+ return Number(value);
98
+ }
99
+ return value.toString();
100
+ }, ' ');
101
+ }
102
+
103
+ private serializeSlots(slots: ISlotVarDefinition[]) {
91
104
  return slots
92
105
  .map(slot => this.serializeSlot(slot))
93
106
  .map(entry => {
@@ -99,14 +112,14 @@ export class GeneratorStorageReader {
99
112
  });
100
113
  }
101
114
 
102
- private serializeSlot (slot: ISlotVarDefinition) {
115
+ private serializeSlot(slot: ISlotVarDefinition) {
103
116
  let name = slot.name;
104
117
  let type = slot.type;
105
118
  let { parametersTypes, parametersCall, returnType } = this.getParameters(type);
106
119
  return {
107
120
  ts: `
108
121
  async ${name}(${parametersTypes?.ts ?? ''}): Promise<${returnType}> {
109
- return this.$storage.get(['${name}', ${ parametersCall ?? '' }]);
122
+ return this.$storage.get(['${name}', ${parametersCall ?? ''}]);
110
123
  }
111
124
  `,
112
125
  types: `
@@ -114,13 +127,13 @@ export class GeneratorStorageReader {
114
127
  `,
115
128
  js: `
116
129
  async ${name}(${parametersTypes?.js ?? ''}) {
117
- return this.$storage.get(['${name}', ${ parametersCall ?? '' }]);
130
+ return this.$storage.get(['${name}', ${parametersCall ?? ''}]);
118
131
  }
119
132
  `
120
133
  };
121
134
  }
122
135
 
123
- private getParameters (type: string): { parametersTypes?: { ts, js}, parametersCall?, returnType } {
136
+ private getParameters(type: string): { parametersTypes?: { ts, js }, parametersCall?, returnType } {
124
137
 
125
138
  if (type.startsWith('mapping')) {
126
139
  let valueType = $abiType.mapping.getValueType(type);
@@ -43,6 +43,7 @@ import { $abiUtils } from 'dequanto/utils/$abiUtils';
43
43
  import { SourceFile, TSourceFileContract } from './SourceFile';
44
44
  import { $array } from 'dequanto/utils/$array';
45
45
  import { $types } from '../utils/$types';
46
+ import { $bigint } from 'dequanto/utils/$bigint';
46
47
 
47
48
  export namespace Ast {
48
49
  export function parse(code: string, opts?: { path: string; }): { ast: SourceUnit, version: string } {
@@ -520,8 +521,23 @@ export namespace Ast {
520
521
  }
521
522
 
522
523
  export function evaluate<TResult extends bigint | string = bigint | string>(node: Expression): TResult {
523
- if (isNumberLiteral(node)) {
524
- return BigInt(node.number) as TResult;
524
+ if (isNumberLiteral(node) && node.subdenomination == null) {
525
+ return $bigint.parse(node.number) as TResult;
526
+ }
527
+ if (node.type === 'TupleExpression' && node.components.length === 1 && node.components[0] != null) {
528
+ return evaluate(node.components[0] as Expression);
529
+ }
530
+ if (Ast.isUnaryOperation(node)) {
531
+ let value = evaluate(node.subExpression);
532
+ if (node.operator === '-') {
533
+ return -value as TResult;
534
+ }
535
+ if (node.operator === '+') {
536
+ return value as TResult;
537
+ }
538
+ if (node.operator === '~') {
539
+ return ~value as TResult;
540
+ }
525
541
  }
526
542
  if (isBinaryOperation(node)) {
527
543
  let a = evaluate<bigint>(node.left);
@@ -541,6 +557,8 @@ export namespace Ast {
541
557
  return a % b as TResult;
542
558
  case '<<':
543
559
  return a << b as TResult;
560
+ case '|':
561
+ return (a | b) as TResult;
544
562
  case '>>':
545
563
  return a >> b as TResult;
546
564
  }