wasm-ast-types 0.26.4 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (218) hide show
  1. package/LICENSE-Apache +201 -0
  2. package/LICENSE-MIT +21 -0
  3. package/README.md +1 -1
  4. package/{types/client → client}/client.d.ts +2 -2
  5. package/client/client.js +275 -0
  6. package/client/index.js +17 -0
  7. package/{types/context → context}/context.d.ts +9 -22
  8. package/context/context.js +114 -0
  9. package/{types/context → context}/imports.d.ts +9 -8
  10. package/context/imports.js +166 -0
  11. package/context/index.js +18 -0
  12. package/esm/client/client.js +238 -0
  13. package/esm/client/index.js +1 -0
  14. package/esm/context/context.js +104 -0
  15. package/esm/context/imports.js +136 -0
  16. package/{module → esm}/context/index.js +1 -1
  17. package/{src/index.ts → esm/index.js} +0 -1
  18. package/esm/message-builder/message-builder.js +64 -0
  19. package/esm/message-composer/message-composer.js +105 -0
  20. package/esm/provider/provider.js +97 -0
  21. package/esm/react-query/react-query.js +458 -0
  22. package/esm/recoil/recoil.js +110 -0
  23. package/esm/utils/babel.js +231 -0
  24. package/esm/utils/constants.js +20 -0
  25. package/esm/utils/ref.js +4 -0
  26. package/esm/utils/types.js +343 -0
  27. package/{types/index.d.ts → index.d.ts} +0 -1
  28. package/index.js +24 -0
  29. package/message-builder/index.js +17 -0
  30. package/{types/message-builder → message-builder}/message-builder.d.ts +1 -1
  31. package/message-builder/message-builder.js +91 -0
  32. package/message-composer/index.d.ts +1 -0
  33. package/message-composer/index.js +17 -0
  34. package/{types/message-composer → message-composer}/message-composer.d.ts +1 -1
  35. package/message-composer/message-composer.js +133 -0
  36. package/package.json +19 -68
  37. package/provider/index.d.ts +1 -0
  38. package/provider/index.js +17 -0
  39. package/provider/provider.js +127 -0
  40. package/react-query/index.d.ts +1 -0
  41. package/react-query/index.js +17 -0
  42. package/{types/react-query → react-query}/react-query.d.ts +2 -3
  43. package/react-query/react-query.js +490 -0
  44. package/recoil/index.d.ts +1 -0
  45. package/recoil/index.js +17 -0
  46. package/{types/recoil → recoil}/recoil.d.ts +1 -1
  47. package/recoil/recoil.js +140 -0
  48. package/{types/utils → utils}/babel.d.ts +9 -8
  49. package/utils/babel.js +285 -0
  50. package/utils/constants.js +46 -0
  51. package/utils/index.js +26 -0
  52. package/{types/utils → utils}/ref.d.ts +1 -1
  53. package/utils/ref.js +8 -0
  54. package/{types/utils → utils}/types.d.ts +8 -8
  55. package/utils/types.js +379 -0
  56. package/main/client/client.js +0 -196
  57. package/main/client/index.js +0 -16
  58. package/main/client/test/ts-client.account-nfts.spec.js +0 -28
  59. package/main/client/test/ts-client.arrays-ref.spec.js +0 -19
  60. package/main/client/test/ts-client.arrays.spec.js +0 -26
  61. package/main/client/test/ts-client.cw-named-groups.test.js +0 -19
  62. package/main/client/test/ts-client.cw-proposal-single.test.js +0 -23
  63. package/main/client/test/ts-client.empty-enums.spec.js +0 -13
  64. package/main/client/test/ts-client.issue-101.spec.js +0 -23
  65. package/main/client/test/ts-client.issue-103.test.js +0 -44
  66. package/main/client/test/ts-client.issue-71.test.js +0 -81
  67. package/main/client/test/ts-client.issue-98.test.js +0 -28
  68. package/main/client/test/ts-client.issues.test.js +0 -81
  69. package/main/client/test/ts-client.overrides.spec.js +0 -33
  70. package/main/client/test/ts-client.sg721.spec.js +0 -19
  71. package/main/client/test/ts-client.spec.js +0 -87
  72. package/main/client/test/ts-client.vectis.spec.js +0 -46
  73. package/main/client/test/ts-client.wager.spec.js +0 -39
  74. package/main/context/context.js +0 -162
  75. package/main/context/imports.js +0 -159
  76. package/main/context/index.js +0 -27
  77. package/main/index.js +0 -104
  78. package/main/message-builder/index.js +0 -16
  79. package/main/message-builder/message-builder.js +0 -62
  80. package/main/message-builder/message-builder.spec.js +0 -20
  81. package/main/message-composer/index.js +0 -16
  82. package/main/message-composer/message-composer.js +0 -86
  83. package/main/message-composer/message-composer.spec.js +0 -23
  84. package/main/provider/index.js +0 -16
  85. package/main/provider/provider.js +0 -71
  86. package/main/provider/provider.spec.js +0 -60
  87. package/main/react-query/index.js +0 -16
  88. package/main/react-query/react-query.js +0 -413
  89. package/main/react-query/react-query.spec.js +0 -91
  90. package/main/recoil/index.js +0 -16
  91. package/main/recoil/recoil.js +0 -61
  92. package/main/recoil/recoil.spec.js +0 -20
  93. package/main/types.js +0 -4
  94. package/main/utils/babel.js +0 -282
  95. package/main/utils/babel.spec.js +0 -109
  96. package/main/utils/constants.js +0 -26
  97. package/main/utils/index.js +0 -65
  98. package/main/utils/ref.js +0 -12
  99. package/main/utils/types.js +0 -343
  100. package/module/client/client.js +0 -166
  101. package/module/client/index.js +0 -1
  102. package/module/client/test/ts-client.account-nfts.spec.js +0 -25
  103. package/module/client/test/ts-client.arrays-ref.spec.js +0 -16
  104. package/module/client/test/ts-client.arrays.spec.js +0 -23
  105. package/module/client/test/ts-client.cw-named-groups.test.js +0 -16
  106. package/module/client/test/ts-client.cw-proposal-single.test.js +0 -20
  107. package/module/client/test/ts-client.empty-enums.spec.js +0 -10
  108. package/module/client/test/ts-client.issue-101.spec.js +0 -22
  109. package/module/client/test/ts-client.issue-103.test.js +0 -41
  110. package/module/client/test/ts-client.issue-71.test.js +0 -21
  111. package/module/client/test/ts-client.issue-98.test.js +0 -25
  112. package/module/client/test/ts-client.issues.test.js +0 -21
  113. package/module/client/test/ts-client.overrides.spec.js +0 -30
  114. package/module/client/test/ts-client.sg721.spec.js +0 -16
  115. package/module/client/test/ts-client.spec.js +0 -84
  116. package/module/client/test/ts-client.vectis.spec.js +0 -43
  117. package/module/client/test/ts-client.wager.spec.js +0 -36
  118. package/module/context/context.js +0 -116
  119. package/module/context/imports.js +0 -127
  120. package/module/index.js +0 -9
  121. package/module/message-builder/index.js +0 -1
  122. package/module/message-builder/message-builder.js +0 -52
  123. package/module/message-builder/message-builder.spec.js +0 -17
  124. package/module/message-composer/index.js +0 -1
  125. package/module/message-composer/message-composer.js +0 -70
  126. package/module/message-composer/message-composer.spec.js +0 -20
  127. package/module/provider/index.js +0 -1
  128. package/module/provider/provider.js +0 -45
  129. package/module/provider/provider.spec.js +0 -58
  130. package/module/react-query/index.js +0 -1
  131. package/module/react-query/react-query.js +0 -403
  132. package/module/react-query/react-query.spec.js +0 -85
  133. package/module/recoil/index.js +0 -1
  134. package/module/recoil/recoil.js +0 -46
  135. package/module/recoil/recoil.spec.js +0 -14
  136. package/module/types.js +0 -3
  137. package/module/utils/babel.js +0 -203
  138. package/module/utils/babel.spec.js +0 -70
  139. package/module/utils/constants.js +0 -12
  140. package/module/utils/index.js +0 -6
  141. package/module/utils/ref.js +0 -4
  142. package/module/utils/types.js +0 -301
  143. package/src/client/client.ts +0 -584
  144. package/src/client/index.ts +0 -1
  145. package/src/client/test/__snapshots__/ts-client.account-nfts.spec.ts.snap +0 -497
  146. package/src/client/test/__snapshots__/ts-client.arrays-ref.spec.ts.snap +0 -452
  147. package/src/client/test/__snapshots__/ts-client.arrays.spec.ts.snap +0 -101
  148. package/src/client/test/__snapshots__/ts-client.cw-named-groups.test.ts.snap +0 -141
  149. package/src/client/test/__snapshots__/ts-client.cw-proposal-single.test.ts.snap +0 -341
  150. package/src/client/test/__snapshots__/ts-client.empty-enums.spec.ts.snap +0 -20
  151. package/src/client/test/__snapshots__/ts-client.issue-101.spec.ts.snap +0 -47
  152. package/src/client/test/__snapshots__/ts-client.issue-103.test.ts.snap +0 -79
  153. package/src/client/test/__snapshots__/ts-client.issue-71.test.ts.snap +0 -432
  154. package/src/client/test/__snapshots__/ts-client.issue-98.test.ts.snap +0 -117
  155. package/src/client/test/__snapshots__/ts-client.issues.test.ts.snap +0 -984
  156. package/src/client/test/__snapshots__/ts-client.overrides.spec.ts.snap +0 -709
  157. package/src/client/test/__snapshots__/ts-client.sg721.spec.ts.snap +0 -350
  158. package/src/client/test/__snapshots__/ts-client.spec.ts.snap +0 -723
  159. package/src/client/test/__snapshots__/ts-client.vectis.spec.ts.snap +0 -337
  160. package/src/client/test/__snapshots__/ts-client.wager.spec.ts.snap +0 -132
  161. package/src/client/test/ts-client.account-nfts.spec.ts +0 -55
  162. package/src/client/test/ts-client.arrays-ref.spec.ts +0 -48
  163. package/src/client/test/ts-client.arrays.spec.ts +0 -58
  164. package/src/client/test/ts-client.cw-named-groups.test.ts +0 -48
  165. package/src/client/test/ts-client.cw-proposal-single.test.ts +0 -50
  166. package/src/client/test/ts-client.empty-enums.spec.ts +0 -28
  167. package/src/client/test/ts-client.issue-101.spec.ts +0 -37
  168. package/src/client/test/ts-client.issue-103.test.ts +0 -106
  169. package/src/client/test/ts-client.issue-71.test.ts +0 -51
  170. package/src/client/test/ts-client.issue-98.test.ts +0 -55
  171. package/src/client/test/ts-client.issues.test.ts +0 -52
  172. package/src/client/test/ts-client.overrides.spec.ts +0 -74
  173. package/src/client/test/ts-client.sg721.spec.ts +0 -46
  174. package/src/client/test/ts-client.spec.ts +0 -166
  175. package/src/client/test/ts-client.vectis.spec.ts +0 -97
  176. package/src/client/test/ts-client.wager.spec.ts +0 -63
  177. package/src/context/context.ts +0 -229
  178. package/src/context/imports.ts +0 -195
  179. package/src/context/index.ts +0 -2
  180. package/src/message-builder/__snapshots__/message-builder.spec.ts.snap +0 -270
  181. package/src/message-builder/message-builder.spec.ts +0 -24
  182. package/src/message-builder/message-builder.ts +0 -119
  183. package/src/message-composer/__snapshots__/message-composer.spec.ts.snap +0 -331
  184. package/src/message-composer/index.ts +0 -1
  185. package/src/message-composer/message-composer.spec.ts +0 -46
  186. package/src/message-composer/message-composer.ts +0 -262
  187. package/src/provider/__snapshots__/provider.spec.ts.snap +0 -49
  188. package/src/provider/index.ts +0 -1
  189. package/src/provider/provider.spec.ts +0 -81
  190. package/src/provider/provider.ts +0 -237
  191. package/src/react-query/__snapshots__/react-query.spec.ts.snap +0 -1359
  192. package/src/react-query/index.ts +0 -1
  193. package/src/react-query/react-query.spec.ts +0 -116
  194. package/src/react-query/react-query.ts +0 -1072
  195. package/src/recoil/__snapshots__/recoil.spec.ts.snap +0 -203
  196. package/src/recoil/index.ts +0 -1
  197. package/src/recoil/recoil.spec.ts +0 -38
  198. package/src/recoil/recoil.ts +0 -307
  199. package/src/types.ts +0 -44
  200. package/src/utils/__snapshots__/babel.spec.ts.snap +0 -75
  201. package/src/utils/babel.spec.ts +0 -511
  202. package/src/utils/babel.ts +0 -352
  203. package/src/utils/constants.ts +0 -37
  204. package/src/utils/ref.ts +0 -6
  205. package/src/utils/types.ts +0 -478
  206. package/types/types.d.ts +0 -41
  207. /package/{types/client → client}/index.d.ts +0 -0
  208. /package/{types/context → context}/index.d.ts +0 -0
  209. /package/{src/message-builder/index.ts → esm/message-builder/index.js} +0 -0
  210. /package/{types/message-composer/index.d.ts → esm/message-composer/index.js} +0 -0
  211. /package/{types/provider/index.d.ts → esm/provider/index.js} +0 -0
  212. /package/{types/react-query/index.d.ts → esm/react-query/index.js} +0 -0
  213. /package/{types/recoil/index.d.ts → esm/recoil/index.js} +0 -0
  214. /package/{src/utils/index.ts → esm/utils/index.js} +0 -0
  215. /package/{types/message-builder → message-builder}/index.d.ts +0 -0
  216. /package/{types/provider → provider}/provider.d.ts +0 -0
  217. /package/{types/utils → utils}/constants.d.ts +0 -0
  218. /package/{types/utils → utils}/index.d.ts +0 -0
@@ -1,331 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`createMessageComposerInterface 1`] = `
4
- "export interface SG721Message {
5
- contractAddress: string;
6
- sender: string;
7
- transferNft: ({
8
- recipient,
9
- tokenId
10
- }: {
11
- recipient: string;
12
- tokenId: string;
13
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
14
- sendNft: ({
15
- contract,
16
- msg,
17
- tokenId
18
- }: {
19
- contract: string;
20
- msg: Binary;
21
- tokenId: string;
22
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
23
- approve: ({
24
- expires,
25
- spender,
26
- tokenId
27
- }: {
28
- expires?: Expiration;
29
- spender: string;
30
- tokenId: string;
31
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
32
- revoke: ({
33
- spender,
34
- tokenId
35
- }: {
36
- spender: string;
37
- tokenId: string;
38
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
39
- approveAll: ({
40
- expires,
41
- operator
42
- }: {
43
- expires?: Expiration;
44
- operator: string;
45
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
46
- revokeAll: ({
47
- operator
48
- }: {
49
- operator: string;
50
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
51
- mint: ({
52
- extension,
53
- owner,
54
- tokenId,
55
- tokenUri
56
- }: {
57
- extension: Empty;
58
- owner: string;
59
- tokenId: string;
60
- tokenUri?: string;
61
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
62
- burn: ({
63
- tokenId
64
- }: {
65
- tokenId: string;
66
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
67
- }"
68
- `;
69
-
70
- exports[`execute classes 1`] = `
71
- "export class SG721MessageComposer implements SG721Message {
72
- sender: string;
73
- contractAddress: string;
74
-
75
- constructor(sender: string, contractAddress: string) {
76
- this.sender = sender;
77
- this.contractAddress = contractAddress;
78
- this.transferNft = this.transferNft.bind(this);
79
- this.sendNft = this.sendNft.bind(this);
80
- this.approve = this.approve.bind(this);
81
- this.revoke = this.revoke.bind(this);
82
- this.approveAll = this.approveAll.bind(this);
83
- this.revokeAll = this.revokeAll.bind(this);
84
- this.mint = this.mint.bind(this);
85
- this.burn = this.burn.bind(this);
86
- }
87
-
88
- transferNft = ({
89
- recipient,
90
- tokenId
91
- }: {
92
- recipient: string;
93
- tokenId: string;
94
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
95
- return {
96
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
97
- value: MsgExecuteContract.fromPartial({
98
- sender: this.sender,
99
- contract: this.contractAddress,
100
- msg: toUtf8(JSON.stringify({
101
- transfer_nft: {
102
- recipient,
103
- token_id: tokenId
104
- }
105
- })),
106
- funds: _funds
107
- })
108
- };
109
- };
110
- sendNft = ({
111
- contract,
112
- msg,
113
- tokenId
114
- }: {
115
- contract: string;
116
- msg: Binary;
117
- tokenId: string;
118
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
119
- return {
120
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
121
- value: MsgExecuteContract.fromPartial({
122
- sender: this.sender,
123
- contract: this.contractAddress,
124
- msg: toUtf8(JSON.stringify({
125
- send_nft: {
126
- contract,
127
- msg,
128
- token_id: tokenId
129
- }
130
- })),
131
- funds: _funds
132
- })
133
- };
134
- };
135
- approve = ({
136
- expires,
137
- spender,
138
- tokenId
139
- }: {
140
- expires?: Expiration;
141
- spender: string;
142
- tokenId: string;
143
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
144
- return {
145
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
146
- value: MsgExecuteContract.fromPartial({
147
- sender: this.sender,
148
- contract: this.contractAddress,
149
- msg: toUtf8(JSON.stringify({
150
- approve: {
151
- expires,
152
- spender,
153
- token_id: tokenId
154
- }
155
- })),
156
- funds: _funds
157
- })
158
- };
159
- };
160
- revoke = ({
161
- spender,
162
- tokenId
163
- }: {
164
- spender: string;
165
- tokenId: string;
166
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
167
- return {
168
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
169
- value: MsgExecuteContract.fromPartial({
170
- sender: this.sender,
171
- contract: this.contractAddress,
172
- msg: toUtf8(JSON.stringify({
173
- revoke: {
174
- spender,
175
- token_id: tokenId
176
- }
177
- })),
178
- funds: _funds
179
- })
180
- };
181
- };
182
- approveAll = ({
183
- expires,
184
- operator
185
- }: {
186
- expires?: Expiration;
187
- operator: string;
188
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
189
- return {
190
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
191
- value: MsgExecuteContract.fromPartial({
192
- sender: this.sender,
193
- contract: this.contractAddress,
194
- msg: toUtf8(JSON.stringify({
195
- approve_all: {
196
- expires,
197
- operator
198
- }
199
- })),
200
- funds: _funds
201
- })
202
- };
203
- };
204
- revokeAll = ({
205
- operator
206
- }: {
207
- operator: string;
208
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
209
- return {
210
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
211
- value: MsgExecuteContract.fromPartial({
212
- sender: this.sender,
213
- contract: this.contractAddress,
214
- msg: toUtf8(JSON.stringify({
215
- revoke_all: {
216
- operator
217
- }
218
- })),
219
- funds: _funds
220
- })
221
- };
222
- };
223
- mint = ({
224
- extension,
225
- owner,
226
- tokenId,
227
- tokenUri
228
- }: {
229
- extension: Empty;
230
- owner: string;
231
- tokenId: string;
232
- tokenUri?: string;
233
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
234
- return {
235
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
236
- value: MsgExecuteContract.fromPartial({
237
- sender: this.sender,
238
- contract: this.contractAddress,
239
- msg: toUtf8(JSON.stringify({
240
- mint: {
241
- extension,
242
- owner,
243
- token_id: tokenId,
244
- token_uri: tokenUri
245
- }
246
- })),
247
- funds: _funds
248
- })
249
- };
250
- };
251
- burn = ({
252
- tokenId
253
- }: {
254
- tokenId: string;
255
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
256
- return {
257
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
258
- value: MsgExecuteContract.fromPartial({
259
- sender: this.sender,
260
- contract: this.contractAddress,
261
- msg: toUtf8(JSON.stringify({
262
- burn: {
263
- token_id: tokenId
264
- }
265
- })),
266
- funds: _funds
267
- })
268
- };
269
- };
270
- }"
271
- `;
272
-
273
- exports[`ownershipClass 1`] = `
274
- "export class OwnershipMessageComposer implements OwnershipMessage {
275
- sender: string;
276
- contractAddress: string;
277
-
278
- constructor(sender: string, contractAddress: string) {
279
- this.sender = sender;
280
- this.contractAddress = contractAddress;
281
- this.setFactory = this.setFactory.bind(this);
282
- this.updateOwnership = this.updateOwnership.bind(this);
283
- }
284
-
285
- setFactory = ({
286
- newFactory
287
- }: {
288
- newFactory: string;
289
- }, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
290
- return {
291
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
292
- value: MsgExecuteContract.fromPartial({
293
- sender: this.sender,
294
- contract: this.contractAddress,
295
- msg: toUtf8(JSON.stringify({
296
- set_factory: {
297
- new_factory: newFactory
298
- }
299
- })),
300
- funds: _funds
301
- })
302
- };
303
- };
304
- updateOwnership = (action: Action, _funds?: Coin[]): MsgExecuteContractEncodeObject => {
305
- return {
306
- typeUrl: \\"/cosmwasm.wasm.v1.MsgExecuteContract\\",
307
- value: MsgExecuteContract.fromPartial({
308
- sender: this.sender,
309
- contract: this.contractAddress,
310
- msg: toUtf8(JSON.stringify({
311
- update_ownership: action
312
- })),
313
- funds: _funds
314
- })
315
- };
316
- };
317
- }"
318
- `;
319
-
320
- exports[`ownershipInterface 1`] = `
321
- "export interface OwnershipMessage {
322
- contractAddress: string;
323
- sender: string;
324
- setFactory: ({
325
- newFactory
326
- }: {
327
- newFactory: string;
328
- }, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
329
- updateOwnership: (action: Action, _funds?: Coin[]) => MsgExecuteContractEncodeObject;
330
- }"
331
- `;
@@ -1 +0,0 @@
1
- export * from './message-composer';
@@ -1,46 +0,0 @@
1
- import execute_msg from "../../../../__fixtures__/basic/execute_msg_for__empty.json";
2
- import ownership from "../../../../__fixtures__/basic/ownership.json";
3
-
4
- import {
5
- createMessageComposerClass,
6
- createMessageComposerInterface,
7
- } from "./message-composer";
8
- import { expectCode, makeContext } from "../../test-utils";
9
- import * as t from "@babel/types";
10
- import { createReactQueryMutationHooks } from "../react-query";
11
-
12
- it("execute classes", () => {
13
- const ctx = makeContext(execute_msg);
14
- expectCode(
15
- createMessageComposerClass(
16
- ctx,
17
- "SG721MessageComposer",
18
- "SG721Message",
19
- execute_msg
20
- )
21
- );
22
- });
23
-
24
- it("createMessageComposerInterface", () => {
25
- const ctx = makeContext(execute_msg);
26
- expectCode(createMessageComposerInterface(ctx, "SG721Message", execute_msg));
27
- });
28
-
29
- it("ownershipClass", () => {
30
- const ctx = makeContext(ownership);
31
- expectCode(
32
- createMessageComposerClass(
33
- ctx,
34
- "OwnershipMessageComposer",
35
- "OwnershipMessage",
36
- ownership
37
- )
38
- );
39
- });
40
-
41
- it("ownershipInterface", () => {
42
- const ownershipCtx = makeContext(ownership);
43
- expectCode(
44
- createMessageComposerInterface(ownershipCtx, "OwnershipMessage", ownership)
45
- );
46
- });
@@ -1,262 +0,0 @@
1
- import * as t from '@babel/types';
2
- import { Expression } from '@babel/types';
3
- import { camel } from 'case';
4
- import {
5
- arrowFunctionExpression,
6
- bindMethod,
7
- classDeclaration,
8
- classProperty,
9
- getMessageProperties,
10
- OPTIONAL_FUNDS_PARAM,
11
- typedIdentifier
12
- } from '../utils';
13
- import { ExecuteMsg, JSONSchema } from '../types';
14
- import { createTypedObjectParams } from '../utils/types';
15
- import { RenderContext } from '../context';
16
- import { getWasmMethodArgs } from '../client/client';
17
-
18
- const createWasmExecMethodMessageComposer = (
19
- context: RenderContext,
20
- jsonschema: any
21
- ) => {
22
- context.addUtil('Coin');
23
- context.addUtil('MsgExecuteContractEncodeObject');
24
- context.addUtil('MsgExecuteContract');
25
- context.addUtil('toUtf8');
26
-
27
- const underscoreName = Object.keys(jsonschema.properties)[0];
28
- const methodName = camel(underscoreName);
29
- const param = createTypedObjectParams(
30
- context,
31
- jsonschema.properties[underscoreName]
32
- );
33
- const args = getWasmMethodArgs(
34
- context,
35
- jsonschema.properties[underscoreName]
36
- );
37
-
38
- // what the underscore named property in the message is assigned to
39
- let actionValue: Expression;
40
- if (param?.type === 'Identifier') {
41
- actionValue = t.identifier(param.name);
42
- } else {
43
- actionValue = t.objectExpression(args);
44
- }
45
-
46
- const constantParams = [OPTIONAL_FUNDS_PARAM];
47
-
48
- return t.classProperty(
49
- t.identifier(methodName),
50
- arrowFunctionExpression(
51
- param
52
- ? [
53
- // props
54
- param,
55
- ...constantParams
56
- ]
57
- : constantParams,
58
- t.blockStatement([
59
- t.returnStatement(
60
- t.objectExpression([
61
- t.objectProperty(
62
- t.identifier('typeUrl'),
63
- t.stringLiteral('/cosmwasm.wasm.v1.MsgExecuteContract')
64
- ),
65
- t.objectProperty(
66
- t.identifier('value'),
67
- t.callExpression(
68
- t.memberExpression(
69
- t.identifier('MsgExecuteContract'),
70
- t.identifier('fromPartial')
71
- ),
72
- [
73
- t.objectExpression([
74
- t.objectProperty(
75
- t.identifier('sender'),
76
- t.memberExpression(
77
- t.thisExpression(),
78
- t.identifier('sender')
79
- )
80
- ),
81
- t.objectProperty(
82
- t.identifier('contract'),
83
- t.memberExpression(
84
- t.thisExpression(),
85
- t.identifier('contractAddress')
86
- )
87
- ),
88
- t.objectProperty(
89
- t.identifier('msg'),
90
- t.callExpression(t.identifier('toUtf8'), [
91
- t.callExpression(
92
- t.memberExpression(
93
- t.identifier('JSON'),
94
- t.identifier('stringify')
95
- ),
96
- [
97
- t.objectExpression([
98
- t.objectProperty(
99
- t.identifier(underscoreName),
100
- actionValue
101
- )
102
- ])
103
- ]
104
- )
105
- ])
106
- ),
107
- t.objectProperty(
108
- t.identifier('funds'),
109
- t.identifier('_funds')
110
- )
111
- ])
112
- ]
113
- )
114
- )
115
- ])
116
- )
117
- ]),
118
- // return type
119
- t.tsTypeAnnotation(
120
- t.tsTypeReference(t.identifier('MsgExecuteContractEncodeObject'))
121
- ),
122
- false
123
- )
124
- );
125
- };
126
-
127
- export const createMessageComposerClass = (
128
- context: RenderContext,
129
- className: string,
130
- implementsClassName: string,
131
- execMsg: ExecuteMsg
132
- ) => {
133
- const propertyNames = getMessageProperties(execMsg)
134
- .map((method) => Object.keys(method.properties)?.[0])
135
- .filter(Boolean);
136
-
137
- const bindings = propertyNames.map(camel).map(bindMethod);
138
-
139
- const methods = getMessageProperties(execMsg).map((schema) => {
140
- return createWasmExecMethodMessageComposer(context, schema);
141
- });
142
-
143
- const blockStmt = [];
144
-
145
- [].push.apply(blockStmt, [
146
- t.expressionStatement(
147
- t.assignmentExpression(
148
- '=',
149
- t.memberExpression(t.thisExpression(), t.identifier('sender')),
150
- t.identifier('sender')
151
- )
152
- ),
153
- t.expressionStatement(
154
- t.assignmentExpression(
155
- '=',
156
- t.memberExpression(t.thisExpression(), t.identifier('contractAddress')),
157
- t.identifier('contractAddress')
158
- )
159
- ),
160
- ...bindings
161
- ]);
162
-
163
- return t.exportNamedDeclaration(
164
- classDeclaration(
165
- className,
166
- [
167
- // sender
168
- classProperty('sender', t.tsTypeAnnotation(t.tsStringKeyword())),
169
-
170
- // contractAddress
171
- classProperty(
172
- 'contractAddress',
173
- t.tsTypeAnnotation(t.tsStringKeyword())
174
- ),
175
-
176
- // constructor
177
- t.classMethod(
178
- 'constructor',
179
- t.identifier('constructor'),
180
- [
181
- typedIdentifier('sender', t.tsTypeAnnotation(t.tsStringKeyword())),
182
- typedIdentifier(
183
- 'contractAddress',
184
- t.tsTypeAnnotation(t.tsStringKeyword())
185
- )
186
- ],
187
- t.blockStatement(blockStmt)
188
- ),
189
- ...methods
190
- ],
191
- [t.tSExpressionWithTypeArguments(t.identifier(implementsClassName))],
192
- null
193
- )
194
- );
195
- };
196
-
197
- export const createMessageComposerInterface = (
198
- context: RenderContext,
199
- className: string,
200
- execMsg: ExecuteMsg
201
- ) => {
202
- const methods = getMessageProperties(execMsg).map((jsonschema) => {
203
- const underscoreName = Object.keys(jsonschema.properties)[0];
204
- const methodName = camel(underscoreName);
205
- return createPropertyFunctionWithObjectParamsForMessageComposer(
206
- context,
207
- methodName,
208
- 'MsgExecuteContractEncodeObject',
209
- jsonschema.properties[underscoreName]
210
- );
211
- });
212
-
213
- const extendsAst = [];
214
-
215
- return t.exportNamedDeclaration(
216
- t.tsInterfaceDeclaration(
217
- t.identifier(className),
218
- null,
219
- extendsAst,
220
- t.tSInterfaceBody([
221
- // contract address
222
- t.tSPropertySignature(
223
- t.identifier('contractAddress'),
224
- t.tsTypeAnnotation(t.tsStringKeyword())
225
- ),
226
-
227
- // contract address
228
- t.tSPropertySignature(
229
- t.identifier('sender'),
230
- t.tsTypeAnnotation(t.tsStringKeyword())
231
- ),
232
-
233
- ...methods
234
- ])
235
- )
236
- );
237
- };
238
-
239
- const createPropertyFunctionWithObjectParamsForMessageComposer = (
240
- context: RenderContext,
241
- methodName: string,
242
- responseType: string,
243
- jsonschema: JSONSchema
244
- ) => {
245
- const obj = createTypedObjectParams(context, jsonschema);
246
- const fixedParams = [OPTIONAL_FUNDS_PARAM];
247
- const func = {
248
- type: 'TSFunctionType',
249
- typeAnnotation: t.tsTypeAnnotation(
250
- t.tsTypeReference(t.identifier(responseType))
251
- ),
252
- parameters: obj ? [obj, ...fixedParams] : fixedParams
253
- };
254
-
255
- return t.tSPropertySignature(
256
- t.identifier(methodName),
257
- t.tsTypeAnnotation(
258
- // @ts-ignore:next-line
259
- func
260
- )
261
- );
262
- };
@@ -1,49 +0,0 @@
1
- // Jest Snapshot v1, https://goo.gl/fbAQLP
2
-
3
- exports[`create IContractsContext 1`] = `
4
- "export interface IContractsContext {
5
- whitelist: ISigningClientProvider<WhitelistClient> & IQueryClientProvider<WhitelistQueryClient>;
6
- marketplace: ISigningClientProvider<MarketplaceClient>;
7
- }"
8
- `;
9
-
10
- exports[`create getProviders 1`] = `
11
- "export const getProviders = (address?: string, cosmWasmClient?: CosmWasmClient, signingCosmWasmClient?: SigningCosmWasmClient) => ({
12
- whitelist: new Whitelist({
13
- address,
14
- cosmWasmClient,
15
- signingCosmWasmClient
16
- }),
17
- marketplace: new Marketplace({
18
- address,
19
- cosmWasmClient,
20
- signingCosmWasmClient
21
- })
22
- });"
23
- `;
24
-
25
- exports[`execute class 1`] = `
26
- "export class Whitelist extends ContractBase<WhitelistClient, WhitelistQueryClient, WhitelistMessageComposer> {
27
- constructor({
28
- address,
29
- cosmWasmClient,
30
- signingCosmWasmClient
31
- }: IContractConstructor) {
32
- super(address, cosmWasmClient, signingCosmWasmClient, WhitelistClient, WhitelistQueryClient, WhitelistMessageComposer);
33
- }
34
-
35
- }"
36
- `;
37
-
38
- exports[`execute class without message composer 1`] = `
39
- "export class Whitelist extends ContractBase<WhitelistClient, WhitelistQueryClient, IEmptyClient> {
40
- constructor({
41
- address,
42
- cosmWasmClient,
43
- signingCosmWasmClient
44
- }: IContractConstructor) {
45
- super(address, cosmWasmClient, signingCosmWasmClient, WhitelistClient, WhitelistQueryClient, undefined);
46
- }
47
-
48
- }"
49
- `;
@@ -1 +0,0 @@
1
- export * from './provider';