@beclab/olaresid 0.1.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 (112) hide show
  1. package/LICENSE.md +49 -0
  2. package/README.md +93 -0
  3. package/dist/abi/ABITypeABI.d.ts +88 -0
  4. package/dist/abi/ABITypeABI.d.ts.map +1 -0
  5. package/dist/abi/ABITypeABI.js +382 -0
  6. package/dist/abi/ABITypeABI.js.map +1 -0
  7. package/dist/abi/RegistryABI.d.ts +77 -0
  8. package/dist/abi/RegistryABI.d.ts.map +1 -0
  9. package/dist/abi/RegistryABI.js +462 -0
  10. package/dist/abi/RegistryABI.js.map +1 -0
  11. package/dist/abi/RootResolverABI.d.ts +78 -0
  12. package/dist/abi/RootResolverABI.d.ts.map +1 -0
  13. package/dist/abi/RootResolverABI.js +372 -0
  14. package/dist/abi/RootResolverABI.js.map +1 -0
  15. package/dist/abi/TerminusDIDABI.d.ts +80 -0
  16. package/dist/abi/TerminusDIDABI.d.ts.map +1 -0
  17. package/dist/abi/TerminusDIDABI.js +1877 -0
  18. package/dist/abi/TerminusDIDABI.js.map +1 -0
  19. package/dist/cli.d.ts +3 -0
  20. package/dist/cli.d.ts.map +1 -0
  21. package/dist/cli.js +199 -0
  22. package/dist/cli.js.map +1 -0
  23. package/dist/debug.d.ts +46 -0
  24. package/dist/debug.d.ts.map +1 -0
  25. package/dist/debug.js +129 -0
  26. package/dist/debug.js.map +1 -0
  27. package/dist/domain/index.d.ts +59 -0
  28. package/dist/domain/index.d.ts.map +1 -0
  29. package/dist/domain/index.js +431 -0
  30. package/dist/domain/index.js.map +1 -0
  31. package/dist/index.d.ts +193 -0
  32. package/dist/index.d.ts.map +1 -0
  33. package/dist/index.js +166 -0
  34. package/dist/index.js.map +1 -0
  35. package/dist/tag/address.d.ts +11 -0
  36. package/dist/tag/address.d.ts.map +1 -0
  37. package/dist/tag/address.js +44 -0
  38. package/dist/tag/address.js.map +1 -0
  39. package/dist/tag/array.d.ts +14 -0
  40. package/dist/tag/array.d.ts.map +1 -0
  41. package/dist/tag/array.js +72 -0
  42. package/dist/tag/array.js.map +1 -0
  43. package/dist/tag/bool.d.ts +11 -0
  44. package/dist/tag/bool.d.ts.map +1 -0
  45. package/dist/tag/bool.js +43 -0
  46. package/dist/tag/bool.js.map +1 -0
  47. package/dist/tag/bytes.d.ts +11 -0
  48. package/dist/tag/bytes.d.ts.map +1 -0
  49. package/dist/tag/bytes.js +37 -0
  50. package/dist/tag/bytes.js.map +1 -0
  51. package/dist/tag/flarray.d.ts +15 -0
  52. package/dist/tag/flarray.d.ts.map +1 -0
  53. package/dist/tag/flarray.js +81 -0
  54. package/dist/tag/flarray.js.map +1 -0
  55. package/dist/tag/flbytes.d.ts +11 -0
  56. package/dist/tag/flbytes.d.ts.map +1 -0
  57. package/dist/tag/flbytes.js +47 -0
  58. package/dist/tag/flbytes.js.map +1 -0
  59. package/dist/tag/index.d.ts +32 -0
  60. package/dist/tag/index.d.ts.map +1 -0
  61. package/dist/tag/index.js +121 -0
  62. package/dist/tag/index.js.map +1 -0
  63. package/dist/tag/int.d.ts +12 -0
  64. package/dist/tag/int.d.ts.map +1 -0
  65. package/dist/tag/int.js +49 -0
  66. package/dist/tag/int.js.map +1 -0
  67. package/dist/tag/string.d.ts +11 -0
  68. package/dist/tag/string.d.ts.map +1 -0
  69. package/dist/tag/string.js +37 -0
  70. package/dist/tag/string.js.map +1 -0
  71. package/dist/tag/tag.d.ts +67 -0
  72. package/dist/tag/tag.d.ts.map +1 -0
  73. package/dist/tag/tag.js +157 -0
  74. package/dist/tag/tag.js.map +1 -0
  75. package/dist/tag/tuple.d.ts +17 -0
  76. package/dist/tag/tuple.d.ts.map +1 -0
  77. package/dist/tag/tuple.js +162 -0
  78. package/dist/tag/tuple.js.map +1 -0
  79. package/dist/tag/uint.d.ts +12 -0
  80. package/dist/tag/uint.d.ts.map +1 -0
  81. package/dist/tag/uint.js +49 -0
  82. package/dist/tag/uint.js.map +1 -0
  83. package/dist/test/did.d.ts +2 -0
  84. package/dist/test/did.d.ts.map +1 -0
  85. package/dist/test/did.js +177 -0
  86. package/dist/test/did.js.map +1 -0
  87. package/examples/index.ts +15 -0
  88. package/examples/legacy.ts +33 -0
  89. package/package.json +50 -0
  90. package/project.json +6 -0
  91. package/src/abi/ABITypeABI.ts +379 -0
  92. package/src/abi/RegistryABI.ts +459 -0
  93. package/src/abi/RootResolverABI.ts +369 -0
  94. package/src/abi/TerminusDIDABI.ts +1874 -0
  95. package/src/cli.ts +230 -0
  96. package/src/debug.ts +170 -0
  97. package/src/domain/index.ts +659 -0
  98. package/src/index.ts +302 -0
  99. package/src/tag/address.ts +48 -0
  100. package/src/tag/array.ts +80 -0
  101. package/src/tag/bool.ts +43 -0
  102. package/src/tag/bytes.ts +38 -0
  103. package/src/tag/flarray.ts +99 -0
  104. package/src/tag/flbytes.ts +48 -0
  105. package/src/tag/index.ts +170 -0
  106. package/src/tag/int.ts +51 -0
  107. package/src/tag/string.ts +38 -0
  108. package/src/tag/tag.ts +229 -0
  109. package/src/tag/tuple.ts +193 -0
  110. package/src/tag/uint.ts +51 -0
  111. package/src/test/did.ts +346 -0
  112. package/tsconfig.json +9 -0
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Tuple = void 0;
7
+ const tag_1 = require("./tag");
8
+ const ethers_1 = require("ethers");
9
+ const ABITypeABI_1 = __importDefault(require("../abi/ABITypeABI"));
10
+ class Tuple extends tag_1.Box {
11
+ constructor(typeBytes, index, builder) {
12
+ super(typeBytes, index, builder);
13
+ this.getAbiType = (providerHolder) => new Promise(async (resolve, reject) => {
14
+ const c = new ethers_1.ethers.Contract(providerHolder.contractAbiType, ABITypeABI_1.default.abi, providerHolder.getProvider());
15
+ let arr = '0x';
16
+ for (const tag of this.boxData.tags) {
17
+ let r = await tag.getAbiType(providerHolder);
18
+ arr += r.substring(2);
19
+ }
20
+ // console.log('arr', arr);
21
+ const resp = await c.tupleT(arr);
22
+ // console.log('getAbiType', 'Tuple', resp);
23
+ resolve(resp);
24
+ });
25
+ }
26
+ formatType(typeBytes, index) {
27
+ let lt = (0, tag_1.read2Byte)(typeBytes, index + 2);
28
+ let length = parseInt(lt, 16);
29
+ let parsedLen = index + 6;
30
+ let tagArr = [];
31
+ for (let k = 0; k < length; k++) {
32
+ let { cursor, tag } = this.formatChild(typeBytes, parsedLen);
33
+ parsedLen = cursor;
34
+ if (tag == undefined) {
35
+ throw new Error('formatType error in tuple');
36
+ }
37
+ tagArr.push(tag);
38
+ }
39
+ this.boxData = {
40
+ tags: tagArr
41
+ };
42
+ // this.boxData.tags = tagArr as TagBase[]
43
+ // console.log('this.boxData', this.boxData);
44
+ return parsedLen;
45
+ }
46
+ getAbiTypeString() {
47
+ let str = '';
48
+ for (const tag of this.boxData.tags) {
49
+ // // console.log (tag)
50
+ if (tag.fieldName == undefined) {
51
+ str = str + ',' + tag.getAbiTypeString();
52
+ }
53
+ else {
54
+ str = str + ',' + `${tag.getAbiTypeString()} ${tag.fieldName}`;
55
+ }
56
+ }
57
+ return `tuple(${str.substring(1)})`;
58
+ }
59
+ setFieldNames(names, index) {
60
+ // console.log('setFieldNames');
61
+ // console.log(names);
62
+ // console.log(this.boxData.tags);
63
+ let fieldNames = names[index];
64
+ index++;
65
+ let indexInBox = 0;
66
+ for (const tag of this.boxData.tags) {
67
+ tag.fieldName = fieldNames[indexInBox];
68
+ indexInBox++;
69
+ // console.log('set FieldNames');
70
+ // console.log(tag);
71
+ // console.log('indexInBox', indexInBox);
72
+ if (tag instanceof tag_1.Box) {
73
+ // // console.log('in Box')
74
+ // // console.log(names [index])
75
+ // // console.log(tag)
76
+ // // console.log(names)
77
+ // fix build
78
+ // if (indexInBox >= names.length) {
79
+ // indexInBox = index
80
+ // }
81
+ tag.setFieldNames(names, indexInBox);
82
+ index++;
83
+ }
84
+ // if (tag instanceof Box) {
85
+ // // console.log(tag)
86
+ // // console.log(this)
87
+ // throw new Error('tuple not support 2 level and more')
88
+ // }
89
+ }
90
+ return index;
91
+ }
92
+ doHydration(d) {
93
+ // console.log('doHydration');
94
+ // console.log(d);
95
+ // console.log(this);
96
+ let i = 0;
97
+ let data = {};
98
+ for (const tag of this.boxData.tags) {
99
+ // console.log(tag);
100
+ // console.log(d);
101
+ // console.log(i);
102
+ data[`${tag.fieldName}`] = tag.doHydration(d[i]);
103
+ i++;
104
+ }
105
+ return data;
106
+ }
107
+ setField(name, type) {
108
+ type.fieldName = name;
109
+ if (this.boxData.tags == undefined) {
110
+ this.boxData.tags = [];
111
+ }
112
+ this.boxData.tags.push(type);
113
+ }
114
+ getFieldName() {
115
+ let arr = [];
116
+ let names = [];
117
+ for (const tag of this.boxData.tags) {
118
+ let tagFieldNames = tag.getFieldNames();
119
+ if (tagFieldNames.length > 0) {
120
+ arr.push(...tagFieldNames);
121
+ // arr = Object.assign(arr, tagFieldNames)
122
+ }
123
+ names.push(tag.fieldName);
124
+ }
125
+ let arr2 = [];
126
+ arr2.push(names);
127
+ // arr2 = Object.assign(arr2, arr)
128
+ arr2.push(...arr);
129
+ // console.log('arr', arr2);
130
+ return arr2;
131
+ }
132
+ getParamTypes() {
133
+ let paramTypes = 'tuple(';
134
+ let i = 0;
135
+ for (const t of this.boxData.tags) {
136
+ paramTypes += t.getParamTypes();
137
+ i++;
138
+ if (i >= this.boxData.tags.length) {
139
+ }
140
+ else {
141
+ paramTypes += ',';
142
+ }
143
+ }
144
+ paramTypes += ')';
145
+ return paramTypes;
146
+ }
147
+ getParameters(data) {
148
+ const values = [];
149
+ let i = 0;
150
+ // console.log('data', data);
151
+ // console.log('this.boxData.tags', this.boxData.tags);
152
+ for (const t of this.boxData.tags) {
153
+ // console.log(t, t.fieldName, data[t.fieldName]);
154
+ values.push(t.getParameters(data[t.fieldName]));
155
+ i++;
156
+ }
157
+ return values;
158
+ }
159
+ }
160
+ exports.Tuple = Tuple;
161
+ exports.default = Tuple;
162
+ //# sourceMappingURL=tuple.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tuple.js","sourceRoot":"","sources":["../../src/tag/tuple.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAqE;AACrE,mCAAgC;AAChC,mEAA2C;AAC3C,MAAa,KAAM,SAAQ,SAAG;IAC7B,YACC,SAA6B,EAC7B,KAAyB,EACzB,OAAgB;QAEhB,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;QA4GlC,eAAU,GAAG,CAAC,cAA8B,EAAE,EAAE,CAC/C,IAAI,OAAO,CAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,CAAC,GAAG,IAAI,eAAM,CAAC,QAAQ,CAC5B,cAAc,CAAC,eAAe,EAC9B,oBAAU,CAAC,GAAG,EACd,cAAc,CAAC,WAAW,EAAE,CAC5B,CAAC;YAEF,IAAI,GAAG,GAAW,IAAI,CAAC;YACvB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrC,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;gBAC7C,GAAG,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YACvB,CAAC;YAED,2BAA2B;YAC3B,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjC,4CAA4C;YAC5C,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IA7HJ,CAAC;IAED,UAAU,CAAC,SAAc,EAAE,KAAa;QACvC,IAAI,EAAE,GAAG,IAAA,eAAS,EAAC,SAAS,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACzC,IAAI,MAAM,GAAG,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAE9B,IAAI,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;QAC1B,IAAI,MAAM,GAAU,EAAE,CAAC;QACvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAC7D,SAAS,GAAG,MAAM,CAAC;YACnB,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;gBACtB,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;YAC9C,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,CAAC,OAAO,GAAG;YACd,IAAI,EAAE,MAAmB;SACzB,CAAC;QACF,0CAA0C;QAE1C,6CAA6C;QAC7C,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,gBAAgB;QACf,IAAI,GAAG,GAAG,EAAE,CAAC;QACb,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrC,uBAAuB;YACvB,IAAI,GAAG,CAAC,SAAS,IAAI,SAAS,EAAE,CAAC;gBAChC,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,gBAAgB,EAAE,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACP,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC,gBAAgB,EAAE,IAAI,GAAG,CAAC,SAAS,EAAE,CAAC;YAChE,CAAC;QACF,CAAC;QAED,OAAO,SAAS,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,KAA4B,EAAE,KAAa;QACxD,gCAAgC;QAChC,sBAAsB;QACtB,kCAAkC;QAElC,IAAI,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC9B,KAAK,EAAE,CAAC;QAER,IAAI,UAAU,GAAG,CAAC,CAAC;QACnB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrC,GAAG,CAAC,SAAS,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC;YACvC,UAAU,EAAE,CAAC;YAEb,iCAAiC;YACjC,oBAAoB;YACpB,yCAAyC;YAEzC,IAAI,GAAG,YAAY,SAAG,EAAE,CAAC;gBACxB,2BAA2B;gBAC3B,gCAAgC;gBAChC,sBAAsB;gBACtB,wBAAwB;gBAExB,YAAY;gBACZ,oCAAoC;gBACpC,yBAAyB;gBACzB,IAAI;gBAEJ,GAAG,CAAC,aAAa,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;gBACrC,KAAK,EAAE,CAAC;YACT,CAAC;YACD,4BAA4B;YAC5B,0BAA0B;YAC1B,2BAA2B;YAC3B,4DAA4D;YAC5D,IAAI;QACL,CAAC;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IAED,WAAW,CAAC,CAAM;QACjB,8BAA8B;QAC9B,kBAAkB;QAClB,qBAAqB;QAErB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,IAAI,IAAI,GAA2B,EAAE,CAAC;QACtC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrC,oBAAoB;YACpB,kBAAkB;YAClB,kBAAkB;YAElB,IAAI,CAAC,GAAG,GAAG,CAAC,SAAmB,EAAE,CAAC,GAAG,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3D,CAAC,EAAE,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED,QAAQ,CAAC,IAAY,EAAE,IAAa;QACnC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QAEtB,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS,EAAE,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,EAAE,CAAC;QACxB,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9B,CAAC;IAsBD,YAAY;QACX,IAAI,GAAG,GAAe,EAAE,CAAC;QACzB,IAAI,KAAK,GAAa,EAAE,CAAC;QACzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACrC,IAAI,aAAa,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;YACxC,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,GAAG,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,CAAC;gBAC3B,0CAA0C;YAC3C,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,SAAmB,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,IAAI,GAAe,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACjB,kCAAkC;QAClC,IAAI,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAElB,4BAA4B;QAE5B,OAAO,IAAI,CAAC;IACb,CAAC;IAED,aAAa;QACZ,IAAI,UAAU,GAAG,QAAQ,CAAC;QAE1B,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnC,UAAU,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;YAEhC,CAAC,EAAE,CAAC;YACJ,IAAI,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,UAAU,IAAI,GAAG,CAAC;YACnB,CAAC;QACF,CAAC;QACD,UAAU,IAAI,GAAG,CAAC;QAElB,OAAO,UAAU,CAAC;IACnB,CAAC;IAED,aAAa,CAAC,IAAS;QACtB,MAAM,MAAM,GAAG,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,CAAC;QACV,6BAA6B;QAC7B,uDAAuD;QACvD,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnC,kDAAkD;YAElD,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;YAChD,CAAC,EAAE,CAAC;QACL,CAAC;QACD,OAAO,MAAM,CAAC;IACf,CAAC;CACD;AA3LD,sBA2LC;AAED,kBAAe,KAAK,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { TagBase, ProviderHolder } from './tag';
2
+ export declare class Uint extends TagBase {
3
+ formatType(typeBytes: any, index: number): number;
4
+ getAbiTypeString(): string;
5
+ setSize: (size: number) => void;
6
+ getAbiType: (providerHolder: ProviderHolder) => Promise<void>;
7
+ getParamTypes(): string;
8
+ getParameters(data: any): any;
9
+ doHydration(d: any): string;
10
+ }
11
+ export default Uint;
12
+ //# sourceMappingURL=uint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uint.d.ts","sourceRoot":"","sources":["../../src/tag/uint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAGrD,qBAAa,IAAK,SAAQ,OAAO;IAChC,UAAU,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAYjD,gBAAgB,IAAI,MAAM;IAI1B,OAAO,GAAI,MAAM,MAAM,UAErB;IAEF,UAAU,GAAI,gBAAgB,cAAc,mBAWxC;IAEJ,aAAa,IAAI,MAAM;IAIvB,aAAa,CAAC,IAAI,EAAE,GAAG;IAIvB,WAAW,CAAC,CAAC,EAAE,GAAG;CAGlB;AAED,eAAe,IAAI,CAAC"}
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Uint = void 0;
7
+ const tag_1 = require("./tag");
8
+ const ethers_1 = require("ethers");
9
+ const ABITypeABI_1 = __importDefault(require("../abi/ABITypeABI"));
10
+ class Uint extends tag_1.TagBase {
11
+ constructor() {
12
+ super(...arguments);
13
+ this.setSize = (size) => {
14
+ this.boxData.size = size;
15
+ };
16
+ this.getAbiType = (providerHolder) => new Promise(async (resolve, reject) => {
17
+ const c = new ethers_1.ethers.Contract(providerHolder.contractAbiType, ABITypeABI_1.default.abi, providerHolder.getProvider());
18
+ const resp = await c.uintT(this.boxData.size);
19
+ // console.log('getAbiType', 'uint', resp);
20
+ resolve(resp);
21
+ });
22
+ }
23
+ formatType(typeBytes, index) {
24
+ let bit = parseInt(typeBytes, 16);
25
+ bit = bit * 2 * 2 * 2;
26
+ if (bit < 8 || bit % 8 !== 0 || bit > 256) {
27
+ throw new Error(`input is not a valid int type`);
28
+ }
29
+ this.boxData = {
30
+ length: bit
31
+ };
32
+ return index + 4;
33
+ }
34
+ getAbiTypeString() {
35
+ return `uint${this.boxData.length}`;
36
+ }
37
+ getParamTypes() {
38
+ return `uint${this.boxData.length}`;
39
+ }
40
+ getParameters(data) {
41
+ return data;
42
+ }
43
+ doHydration(d) {
44
+ return d.toString();
45
+ }
46
+ }
47
+ exports.Uint = Uint;
48
+ exports.default = Uint;
49
+ //# sourceMappingURL=uint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uint.js","sourceRoot":"","sources":["../../src/tag/uint.ts"],"names":[],"mappings":";;;;;;AAAA,+BAAqD;AACrD,mCAAgC;AAChC,mEAA2C;AAC3C,MAAa,IAAK,SAAQ,aAAO;IAAjC;;QAiBC,YAAO,GAAG,CAAC,IAAY,EAAE,EAAE;YAC1B,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;QAC1B,CAAC,CAAC;QAEF,eAAU,GAAG,CAAC,cAA8B,EAAE,EAAE,CAC/C,IAAI,OAAO,CAAO,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,CAAC,GAAG,IAAI,eAAM,CAAC,QAAQ,CAC5B,cAAc,CAAC,eAAe,EAC9B,oBAAU,CAAC,GAAG,EACd,cAAc,CAAC,WAAW,EAAE,CAC5B,CAAC;YAEF,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC9C,2CAA2C;YAC3C,OAAO,CAAC,IAAI,CAAC,CAAC;QACf,CAAC,CAAC,CAAC;IAaL,CAAC;IA5CA,UAAU,CAAC,SAAc,EAAE,KAAa;QACvC,IAAI,GAAG,GAAG,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAClC,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,GAAG,GAAG,GAAG,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;QAClD,CAAC;QACD,IAAI,CAAC,OAAO,GAAG;YACd,MAAM,EAAE,GAAG;SACX,CAAC;QACF,OAAO,KAAK,GAAG,CAAC,CAAC;IAClB,CAAC;IAED,gBAAgB;QACf,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IACrC,CAAC;IAmBD,aAAa;QACZ,OAAO,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;IACrC,CAAC;IAED,aAAa,CAAC,IAAS;QACtB,OAAO,IAAI,CAAC;IACb,CAAC;IAED,WAAW,CAAC,CAAM;QACjB,OAAQ,CAAY,CAAC,QAAQ,EAAE,CAAC;IACjC,CAAC;CACD;AA7CD,oBA6CC;AAED,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=did.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did.d.ts","sourceRoot":"","sources":["../../src/test/did.ts"],"names":[],"mappings":""}
@@ -0,0 +1,177 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ethers_1 = require("ethers");
7
+ const index_1 = __importDefault(require("../index"));
8
+ const RPC = 'https://sepolia.optimism.io';
9
+ const CONTRACT_DID = '0x4c8c98e652d6a01494971a8faF5d3b68338f9ED4';
10
+ const CONTRACT_ROOT_RESOLVER = '0xaA5bE49799b6A71Eda74d22D01F7A808aFf41b3f';
11
+ const CONTRACT_ABI_TYPE = '0xdc9e8faDe38eE9E2Eb43761f1553CD2360ecAEac';
12
+ const testDIDFetchAll = async () => {
13
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
14
+ const domains = await did.fetchAll();
15
+ console.log('domains', domains);
16
+ console.log('domains', await did.formatDatas(domains));
17
+ };
18
+ const testFetchDomainNoCache = async () => {
19
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
20
+ const domain = await did.fetchDomain('jksdgb.snowinning.com');
21
+ console.log('domain', domain);
22
+ };
23
+ const testFetchDomain = async () => {
24
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
25
+ const domains = await did.fetchAll();
26
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
27
+ console.log('domain', domain);
28
+ };
29
+ const testUpdateDomain = async () => {
30
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
31
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
32
+ const domain2 = await did.updateDomain('wanglulu503.t2.xlu112234.asia');
33
+ const domain3 = await did.updateDomain('t2.xlu112234.asia');
34
+ const domain4 = await did.updateDomain('xlu112234.asia');
35
+ const domain5 = await did.updateDomain('asia');
36
+ console.dir(did.treesCache, { depth: null });
37
+ };
38
+ const testFetchAllTagType = async () => {
39
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
40
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
41
+ if (domain == undefined) {
42
+ throw new Error('not found');
43
+ }
44
+ const tags = await index_1.default.Domain.fetchAllTagType(domain, did.getContractDID());
45
+ console.log('tags', tags);
46
+ };
47
+ const testFetchAllTag = async () => {
48
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
49
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
50
+ if (domain == undefined) {
51
+ throw new Error('not found');
52
+ }
53
+ await index_1.default.Domain.fetchAllTagType(domain, did.getContractDID());
54
+ const tags = await index_1.default.Domain.fetchAllTagValue(domain, did.getContractDID());
55
+ console.dir(tags, { depth: null });
56
+ };
57
+ const testDefineTag = async () => {
58
+ // tag name: simpleTag
59
+ const tagName = 'simpleTag';
60
+ // tuple
61
+ const testTuple = new index_1.default.Tag.TagValueTypeTuple(undefined, undefined, true);
62
+ // uint
63
+ const testUint = new index_1.default.Tag.TagValueTypeUint(undefined, undefined, true);
64
+ testUint.setSize(8);
65
+ // address
66
+ const testAddress = new index_1.default.Tag.TagValueTypeAddress(undefined, undefined, true);
67
+ // array<address>
68
+ const testArrayAddress = new index_1.default.Tag.TagValueTypeArray(undefined, undefined, true);
69
+ testArrayAddress.setBuliderType(testAddress);
70
+ // bool
71
+ const testBool = new index_1.default.Tag.TagValueTypeBool(undefined, undefined, true);
72
+ // bytes
73
+ const testBytes = new index_1.default.Tag.TagValueTypeBytes(undefined, undefined, true);
74
+ // int
75
+ const testInt = new index_1.default.Tag.TagValueTypeInt(undefined, undefined, true);
76
+ testInt.setSize(256);
77
+ // flarray<int>
78
+ const testFlarrayInt = new index_1.default.Tag.TagValueTypeFlarray(undefined, undefined, true);
79
+ testFlarrayInt.setBuliderType(testInt);
80
+ testFlarrayInt.setSize(3);
81
+ // flbytes
82
+ const testFlbytes = new index_1.default.Tag.TagValueTypeFlbytes(undefined, undefined, true);
83
+ testFlbytes.setSize(5);
84
+ // string
85
+ const testString = new index_1.default.Tag.TagValueTypeString(undefined, undefined, true);
86
+ testTuple.setField('testUint', testUint);
87
+ testTuple.setField('testArrayAddress', testArrayAddress);
88
+ testTuple.setField('testBool', testBool);
89
+ testTuple.setField('testBytes', testBytes);
90
+ testTuple.setField('testFlarrayInt', testFlarrayInt);
91
+ testTuple.setField('testFlbytes', testFlbytes);
92
+ testTuple.setField('testString', testString);
93
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
94
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
95
+ await index_1.default.Domain.defineTag(domain, tagName, testTuple, did.getContractDIDByPrivateKey('b3d2790b58f6dea822ca40c5772005bb05055339e912852ab8d0ab161fd8e2ee'), did);
96
+ };
97
+ const testDefineTagBox = async () => {
98
+ const tagName = 'simpleTagBox4'; // tag name: simpleTag
99
+ const testTuple = new index_1.default.Tag.TagValueTypeTuple(undefined, undefined, true); // tuple
100
+ const testTuple2 = new index_1.default.Tag.TagValueTypeTuple(undefined, undefined, true);
101
+ const testUint = new index_1.default.Tag.TagValueTypeUint(undefined, undefined, true); // uint
102
+ testUint.setSize(8);
103
+ const testAddress = new index_1.default.Tag.TagValueTypeAddress(undefined, undefined, true); // address
104
+ const testArrayAddress = new index_1.default.Tag.TagValueTypeArray(undefined, undefined, true); // array<address>
105
+ testArrayAddress.setBuliderType(testAddress);
106
+ const testBool = new index_1.default.Tag.TagValueTypeBool(undefined, undefined, true); // bool
107
+ const testBytes = new index_1.default.Tag.TagValueTypeBytes(undefined, undefined, true); // bytes
108
+ const testInt = new index_1.default.Tag.TagValueTypeInt(undefined, undefined, true); // int
109
+ testInt.setSize(256);
110
+ const testFlarrayInt = new index_1.default.Tag.TagValueTypeFlarray(undefined, undefined, true); // flarray<int>
111
+ testFlarrayInt.setBuliderType(testInt);
112
+ testFlarrayInt.setSize(3);
113
+ const testFlbytes = new index_1.default.Tag.TagValueTypeFlbytes(undefined, undefined, true); // flbytes
114
+ testFlbytes.setSize(5);
115
+ const testString = new index_1.default.Tag.TagValueTypeString(undefined, undefined, true); // string
116
+ testTuple.setField('testUint', testUint);
117
+ testTuple.setField('testArrayAddress', testArrayAddress);
118
+ testTuple.setField('testBool', testBool);
119
+ testTuple.setField('testBytes', testBytes);
120
+ testTuple.setField('testFlarrayInt', testFlarrayInt);
121
+ testTuple.setField('testFlbytes', testFlbytes);
122
+ testTuple.setField('testString', testString);
123
+ testTuple2.setField('testbox', testTuple);
124
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
125
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
126
+ await index_1.default.Domain.defineTag(domain, tagName, testTuple2, did.getContractDIDByPrivateKey('b3d2790b58f6dea822ca40c5772005bb05055339e912852ab8d0ab161fd8e2ee'), did);
127
+ };
128
+ const testAddTag = async () => {
129
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
130
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
131
+ if (domain == undefined) {
132
+ throw new Error('not found');
133
+ }
134
+ console.log(domain);
135
+ const [tag] = domain.tags.filter((tag) => tag.name == 'simpleTagBox4');
136
+ const tagType = await index_1.default.Domain.fetchTagStructure(tag, did.getContractDID());
137
+ console.dir(tagType, { depth: null });
138
+ const ba1 = ethers_1.ethers.hexlify(Uint8Array.from([1, 2, 3]));
139
+ const ba2 = ethers_1.ethers.hexlify(Uint8Array.from([10, 18, 19]));
140
+ const newData = {
141
+ testbox: {
142
+ testUint: 1,
143
+ testArrayAddress: [
144
+ '0xF18B2Ea28c722CA87f951F5bF5327b66a7dd72A3',
145
+ '0xecBA1d33b889f66ad426535f970d1E033ba5c79C'
146
+ ],
147
+ testBool: true,
148
+ testBytes: '0x0102030405',
149
+ testFlarrayInt: [2, 3, 4],
150
+ testFlbytes: '0x0a0b0c0d0e',
151
+ testString: 'ok'
152
+ }
153
+ };
154
+ console.log('newData', newData);
155
+ const call = await index_1.default.Tag.doEncode(tagType, newData);
156
+ console.log('call', call);
157
+ //set
158
+ const resp = await index_1.default.Domain.setValue(tag, call, did.getContractDIDByPrivateKey('b3d2790b58f6dea822ca40c5772005bb05055339e912852ab8d0ab161fd8e2ee'));
159
+ };
160
+ const testSetTagger = async () => {
161
+ const did = index_1.default.createConsole(RPC, CONTRACT_DID, CONTRACT_ROOT_RESOLVER, CONTRACT_ABI_TYPE);
162
+ const domain = await did.fetchDomain('saitttt2.snowinning.com');
163
+ if (domain == undefined) {
164
+ throw new Error('not found');
165
+ }
166
+ const [tag] = domain.tags.filter((tag) => tag.name == 'simpleTagBox4');
167
+ index_1.default.Domain.setTagger(tag, '0xF18B2Ea28c722CA87f951F5bF5327b66a7dd72A3', did.getContractDIDByPrivateKey('b3d2790b58f6dea822ca40c5772005bb05055339e912852ab8d0ab161fd8e2ee'));
168
+ };
169
+ const testUpdateTag = async () => { };
170
+ const testRemoveTag = async () => { };
171
+ const testSaveAndLoad = async () => { };
172
+ // testAddTag()
173
+ // testSetTagger()
174
+ // testDefineTagBox()
175
+ // testFetchAllTagType()
176
+ // testFetchAllTag()
177
+ //# sourceMappingURL=did.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"did.js","sourceRoot":"","sources":["../../src/test/did.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import OlaresID, { debug } from '../src/index';
2
+
3
+ async function main() {
4
+ const olaresId = OlaresID.createTestnet();
5
+
6
+ const domain = await olaresId.fetchDomain('tw7613781.olares.com');
7
+ console.log(domain);
8
+
9
+ // 获取所有域名数据 (主网上数据量较大,测试网数据量较小,测试的话建议在测试网环境下体验此函数)
10
+ // await olaresId.fetchAll();
11
+ // console.log('All Domains:', olaresId.allDomainCache);
12
+ // console.log('Domain Tree Cache:', olaresId.treesCache);
13
+ }
14
+
15
+ main().catch(console.error);
@@ -0,0 +1,33 @@
1
+ import DID from '../src/index';
2
+
3
+ // op sepolia 测试网环境
4
+ const RPC = 'https://sepolia.optimism.io';
5
+ const CONTRACT_DID = '0xe2D7c3a9013960E04d4E9F5F9B63fff37eEd97A8'; // DID 合约地址
6
+ const CONTRACT_ROOT_RESOLVER = '0xeF727cb066Fee98F88Db84555830063b4A24ddfc'; // RootResolver 合约地址
7
+ const CONTRACT_ABI_TYPE = '0x7386fCBae6Ad4CCE1499d9153D99bc950B589718'; // ABIType 合约地址
8
+
9
+ // // op 主网环境
10
+ // const RPC = 'https://optimism-rpc.publicnode.com';
11
+ // const CONTRACT_DID = '0x5DA4Fa8E567d86e52Ef8Da860de1be8f54cae97D'; // DID 合约地址
12
+ // const CONTRACT_ROOT_RESOLVER = '0xE2EABA0979277A90511F8873ae1e8cA26B54E740'; // RootResolver 合约地址
13
+ // const CONTRACT_ABI_TYPE = '0x9ae3F16bD99294Af1784beB1a0A5C84bf2636365'; // ABIType 合约地址
14
+
15
+ async function main() {
16
+ const did = DID.createConsole(
17
+ RPC,
18
+ CONTRACT_DID,
19
+ CONTRACT_ROOT_RESOLVER,
20
+ CONTRACT_ABI_TYPE
21
+ );
22
+
23
+ // 获取特定域名数据
24
+ const domain = await did.fetchDomain('tw7613781.olares.com');
25
+ console.log('Domain Data:', domain);
26
+
27
+ // 获取所有域名数据 (主网上数据量较大,测试网数据量较小,测试的话建议在测试网环境下体验此函数)
28
+ await did.fetchAll();
29
+ console.log('All Domains:', did.allDomainCache);
30
+ console.log('Domain Tree Cache:', did.treesCache);
31
+ }
32
+
33
+ main().catch(console.error);
package/package.json ADDED
@@ -0,0 +1,50 @@
1
+ {
2
+ "name": "@beclab/olaresid",
3
+ "version": "0.1.1",
4
+ "description": "DID Contract SDK with CLI tool",
5
+ "main": "dist/index.js",
6
+ "bin": {
7
+ "did-cli": "./dist/cli.js"
8
+ },
9
+ "scripts": {
10
+ "build": "tsc",
11
+ "test": "npm run build && node dist/test/did.js",
12
+ "prepublishOnly": "npm run build",
13
+ "example": "ts-node ./examples/index.ts",
14
+ "example:debug": "ts-node ./examples/index.ts --debug",
15
+ "example:verbose": "ts-node ./examples/index.ts --verbose --debug-level=debug",
16
+ "example:warn": "ts-node ./examples/index.ts --debug --debug-level=warn",
17
+ "cli:dev": "ts-node ./src/cli.ts",
18
+ "cli:build": "npm run build && node ./dist/cli.js"
19
+ },
20
+ "keywords": [
21
+ "did",
22
+ "blockchain",
23
+ "ethereum",
24
+ "cli",
25
+ "domain",
26
+ "identity"
27
+ ],
28
+ "author": "",
29
+ "license": "Terminus License",
30
+ "dependencies": {
31
+ "ethers": "^6.9.1"
32
+ },
33
+ "module": "commonjs",
34
+ "devDependencies": {
35
+ "ts-node": "^10.9.2",
36
+ "typescript": "^5.9.3",
37
+ "@types/node": "^20.0.0"
38
+ },
39
+ "exports": {
40
+ ".": {
41
+ "types": "./dist/index.d.ts",
42
+ "import": "./dist/index.js",
43
+ "require": "./dist/index.js"
44
+ },
45
+ "./*": [
46
+ "./*",
47
+ "./*.d.ts"
48
+ ]
49
+ }
50
+ }
package/project.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "name": "@beclab/olaresid",
3
+ "sourceRoot": "packages/olaresid/src",
4
+ "projectType": "library",
5
+ "tags": ["scope:npm", "type:library", "platform:web"]
6
+ }