@hyperweb/telescope 2.0.4 → 2.2.0

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 (461) hide show
  1. package/README.md +5 -5
  2. package/{main/bundle.js → bundle.js} +17 -7
  3. package/{types/commands → commands}/download.d.ts +2 -2
  4. package/{main/commands → commands}/download.js +17 -7
  5. package/{main/commands → commands}/generate.js +17 -7
  6. package/{main/commands → commands}/transpile.js +17 -7
  7. package/esm/build.d.ts +41 -0
  8. package/esm/builder.d.ts +50 -0
  9. package/esm/bundle.d.ts +30 -0
  10. package/esm/bundler.d.ts +31 -0
  11. package/esm/commands/download.d.ts +5 -0
  12. package/esm/commands/generate.d.ts +2 -0
  13. package/esm/commands/transpile.d.ts +4 -0
  14. package/{module → esm}/generators/create-sdk-module-stargate-clients.js +1 -1
  15. package/{module → esm}/generators/create-stargate-clients.js +1 -1
  16. package/{types → esm}/utils/index.d.ts +1 -1
  17. package/generators/create-aggregated-lcd-client.d.ts +2 -0
  18. package/generators/create-amino-converters.d.ts +3 -0
  19. package/generators/create-bundle.d.ts +3 -0
  20. package/generators/create-helpers.d.ts +2 -0
  21. package/generators/create-index.d.ts +2 -0
  22. package/{main/generators → generators}/create-index.js +17 -7
  23. package/generators/create-lcd-client-all.d.ts +3 -0
  24. package/{main/generators → generators}/create-lcd-client-all.js +17 -7
  25. package/generators/create-lcd-client-scoped.d.ts +3 -0
  26. package/{main/generators → generators}/create-lcd-client-scoped.js +17 -7
  27. package/generators/create-lcd-clients.d.ts +3 -0
  28. package/generators/create-mcp-server.d.ts +3 -0
  29. package/generators/create-mobx-bundle.d.ts +2 -0
  30. package/{main/generators → generators}/create-mobx-bundle.js +17 -7
  31. package/generators/create-msg-funcs.d.ts +3 -0
  32. package/generators/create-pinia-store-bundle.d.ts +2 -0
  33. package/{main/generators → generators}/create-pinia-store-bundle.js +17 -7
  34. package/generators/create-pinia-store.d.ts +3 -0
  35. package/generators/create-query-funcs.d.ts +3 -0
  36. package/generators/create-react-query-bundle.d.ts +2 -0
  37. package/{main/generators → generators}/create-react-query-bundle.js +17 -7
  38. package/generators/create-registries.d.ts +3 -0
  39. package/generators/create-root-readme.d.ts +2 -0
  40. package/generators/create-rpc-msg-client-all.d.ts +3 -0
  41. package/{main/generators → generators}/create-rpc-msg-client-all.js +17 -7
  42. package/generators/create-rpc-msg-client-scoped.d.ts +3 -0
  43. package/{main/generators → generators}/create-rpc-msg-client-scoped.js +17 -7
  44. package/generators/create-rpc-msg-clients.d.ts +3 -0
  45. package/generators/create-rpc-ops-bundle.d.ts +2 -0
  46. package/{main/generators → generators}/create-rpc-ops-bundle.js +17 -7
  47. package/generators/create-rpc-query-client-all.d.ts +3 -0
  48. package/{main/generators → generators}/create-rpc-query-client-all.js +17 -7
  49. package/generators/create-rpc-query-client-scoped.d.ts +3 -0
  50. package/{main/generators → generators}/create-rpc-query-client-scoped.js +17 -7
  51. package/generators/create-rpc-query-clients.d.ts +3 -0
  52. package/generators/create-sdk-module-stargate-clients.d.ts +3 -0
  53. package/{main/generators → generators}/create-sdk-module-stargate-clients.js +1 -1
  54. package/generators/create-stargate-clients.d.ts +3 -0
  55. package/{main/generators → generators}/create-stargate-clients.js +1 -1
  56. package/generators/create-types.d.ts +3 -0
  57. package/{main/generators → generators}/create-types.js +17 -7
  58. package/generators/customize-utils.d.ts +2 -0
  59. package/helpers/__test__/internalTimestamp.d.ts +21 -0
  60. package/{main/helpers → helpers}/__test__/internalTimestamp.js +4 -5
  61. package/helpers/__test__/internalTimestampBigint.d.ts +20 -0
  62. package/{main/helpers → helpers}/__test__/internalTimestampBigint.js +4 -5
  63. package/helpers/binary-coder.d.ts +2 -0
  64. package/helpers/decimals.d.ts +1 -0
  65. package/helpers/external-comet.d.ts +1 -0
  66. package/helpers/external-icjs.d.ts +1 -0
  67. package/helpers/external.d.ts +1 -0
  68. package/helpers/grpc-gateway.d.ts +1 -0
  69. package/helpers/grpc-web.d.ts +1 -0
  70. package/helpers/helper-func-types-interface.d.ts +2 -0
  71. package/helpers/helper-func-types.d.ts +2 -0
  72. package/helpers/internal-for-bigint.d.ts +2 -0
  73. package/helpers/internal.d.ts +2 -0
  74. package/helpers/json-safe.d.ts +1 -0
  75. package/helpers/mobx.d.ts +1 -0
  76. package/helpers/pinia-endpoint.d.ts +1 -0
  77. package/helpers/react-query-hooks-icjs.d.ts +2 -0
  78. package/helpers/react-query-hooks.d.ts +2 -0
  79. package/helpers/react-query.d.ts +2 -0
  80. package/{types/helpers/vue-query.d.ts → helpers/registry-helper.d.ts} +1 -1
  81. package/helpers/types-helper.d.ts +2 -0
  82. package/helpers/utf8-helper.d.ts +1 -0
  83. package/helpers/varint.d.ts +1 -0
  84. package/helpers/vue-query-hooks.d.ts +2 -0
  85. package/imports.d.ts +17 -0
  86. package/{main/imports.js → imports.js} +17 -7
  87. package/index.d.ts +6 -0
  88. package/package.json +31 -50
  89. package/parse.d.ts +15 -0
  90. package/prompt.d.ts +3 -0
  91. package/protod/bufbuild.d.ts +6 -0
  92. package/{main/protod → protod}/bufbuild.js +5 -6
  93. package/protod/config.d.ts +7 -0
  94. package/protod/git-repo.d.ts +11 -0
  95. package/protod/recursive.d.ts +4 -0
  96. package/{main/protod → protod}/recursive.js +3 -4
  97. package/protod/types.d.ts +49 -0
  98. package/protod/utils.d.ts +11 -0
  99. package/{main/protod → protod}/utils.js +8 -9
  100. package/types.d.ts +43 -0
  101. package/utils/common-create-bundle.d.ts +18 -0
  102. package/utils/files.d.ts +5 -0
  103. package/{main/utils → utils}/files.js +19 -9
  104. package/utils/index.d.ts +16 -0
  105. package/utils/unused.d.ts +5 -0
  106. package/{main/utils → utils}/unused.js +17 -7
  107. package/main/cli.js +0 -52
  108. package/main/cmds.js +0 -16
  109. package/main/contracts/generate.js +0 -31
  110. package/main/contracts/install.js +0 -107
  111. package/main/contracts/message-composer.js +0 -31
  112. package/main/contracts/react-query.js +0 -31
  113. package/main/contracts/recoil.js +0 -31
  114. package/main/file.js +0 -20
  115. package/main/generators/create-combined-stargate-clients.js +0 -99
  116. package/main/generators/create-cosmwasm-bundle.js +0 -15
  117. package/main/helpers/generated-type.js +0 -24
  118. package/main/helpers/internalForBigInt.js +0 -248
  119. package/main/helpers/types.js +0 -24
  120. package/main/helpers/vue-query.js +0 -91
  121. package/main/protod/proto-download.js +0 -57
  122. package/main/telescope.js +0 -10
  123. package/main/utils/contracts.js +0 -39
  124. package/module/cli.js +0 -25
  125. package/module/cmds.js +0 -10
  126. package/module/contracts/generate.js +0 -29
  127. package/module/contracts/install.js +0 -105
  128. package/module/contracts/message-composer.js +0 -29
  129. package/module/contracts/react-query.js +0 -29
  130. package/module/contracts/recoil.js +0 -29
  131. package/module/file.js +0 -18
  132. package/module/generators/create-combined-stargate-clients.js +0 -95
  133. package/module/generators/create-cosmwasm-bundle.js +0 -11
  134. package/module/helpers/generated-type.js +0 -21
  135. package/module/helpers/internalForBigInt.js +0 -245
  136. package/module/helpers/types.js +0 -21
  137. package/module/helpers/vue-query.js +0 -87
  138. package/module/protod/proto-download.js +0 -55
  139. package/module/telescope.js +0 -8
  140. package/module/utils/contracts.js +0 -33
  141. package/src/build.ts +0 -255
  142. package/src/builder.ts +0 -292
  143. package/src/bundle.ts +0 -160
  144. package/src/bundler.ts +0 -153
  145. package/src/cli.js +0 -31
  146. package/src/cmds.js +0 -11
  147. package/src/commands/download.ts +0 -120
  148. package/src/commands/generate.ts +0 -156
  149. package/src/commands/install.ts +0 -154
  150. package/src/commands/transpile.ts +0 -205
  151. package/src/file.js +0 -20
  152. package/src/generators/create-aggregated-lcd-client.ts +0 -133
  153. package/src/generators/create-all-stargate-clients.ts +0 -121
  154. package/src/generators/create-amino-converters.ts +0 -62
  155. package/src/generators/create-bundle.ts +0 -143
  156. package/src/generators/create-custom-stargate-clients.ts +0 -128
  157. package/src/generators/create-helpers.ts +0 -209
  158. package/src/generators/create-index.ts +0 -72
  159. package/src/generators/create-lcd-client-all.ts +0 -139
  160. package/src/generators/create-lcd-client-scoped.ts +0 -109
  161. package/src/generators/create-lcd-clients.ts +0 -108
  162. package/src/generators/create-mcp-server.ts +0 -1774
  163. package/src/generators/create-mobx-bundle.ts +0 -31
  164. package/src/generators/create-msg-funcs.ts +0 -219
  165. package/src/generators/create-pinia-store-bundle.ts +0 -35
  166. package/src/generators/create-pinia-store.ts +0 -121
  167. package/src/generators/create-query-funcs.ts +0 -224
  168. package/src/generators/create-react-query-bundle.ts +0 -111
  169. package/src/generators/create-registries.ts +0 -70
  170. package/src/generators/create-root-readme.ts +0 -403
  171. package/src/generators/create-rpc-msg-client-all.ts +0 -167
  172. package/src/generators/create-rpc-msg-client-scoped.ts +0 -147
  173. package/src/generators/create-rpc-msg-clients.ts +0 -165
  174. package/src/generators/create-rpc-ops-bundle.ts +0 -155
  175. package/src/generators/create-rpc-query-client-all.ts +0 -173
  176. package/src/generators/create-rpc-query-client-scoped.ts +0 -142
  177. package/src/generators/create-rpc-query-clients.ts +0 -304
  178. package/src/generators/create-sdk-module-stargate-clients.ts +0 -120
  179. package/src/generators/create-stargate-clients.ts +0 -123
  180. package/src/generators/create-types.ts +0 -236
  181. package/src/generators/customize-utils.ts +0 -52
  182. package/src/helpers/__test__/internalTimestamp.test.ts +0 -79
  183. package/src/helpers/__test__/internalTimestamp.ts +0 -58
  184. package/src/helpers/__test__/internalTimestampBigint.test.ts +0 -78
  185. package/src/helpers/__test__/internalTimestampBigint.ts +0 -58
  186. package/src/helpers/binary-coder.ts +0 -533
  187. package/src/helpers/decimals.ts +0 -108
  188. package/src/helpers/external-comet.ts +0 -49
  189. package/src/helpers/external-icjs.ts +0 -43
  190. package/src/helpers/external.ts +0 -28
  191. package/src/helpers/grpc-gateway.ts +0 -345
  192. package/src/helpers/grpc-web.ts +0 -11
  193. package/src/helpers/helper-func-types-interface.ts +0 -104
  194. package/src/helpers/helper-func-types.ts +0 -91
  195. package/src/helpers/internal-for-bigint.ts +0 -259
  196. package/src/helpers/internal.ts +0 -241
  197. package/src/helpers/json-safe.ts +0 -11
  198. package/src/helpers/mobx.ts +0 -77
  199. package/src/helpers/pinia-endpoint.ts +0 -17
  200. package/src/helpers/react-query-hooks-icjs.ts +0 -223
  201. package/src/helpers/react-query-hooks.ts +0 -266
  202. package/src/helpers/react-query.ts +0 -101
  203. package/src/helpers/registry-helper.ts +0 -227
  204. package/src/helpers/types-helper.ts +0 -169
  205. package/src/helpers/utf8-helper.ts +0 -143
  206. package/src/helpers/varint.ts +0 -483
  207. package/src/helpers/vue-query-hooks.ts +0 -224
  208. package/src/imports.ts +0 -499
  209. package/src/index.ts +0 -12
  210. package/src/parse.ts +0 -243
  211. package/src/prompt.js +0 -65
  212. package/src/protod/bufbuild.spec.ts +0 -80
  213. package/src/protod/bufbuild.ts +0 -95
  214. package/src/protod/config.ts +0 -30
  215. package/src/protod/git-repo.ts +0 -74
  216. package/src/protod/recursive.spec.ts +0 -164
  217. package/src/protod/recursive.ts +0 -190
  218. package/src/protod/test-data/.protod.config.json +0 -42
  219. package/src/protod/test-data/buf.lock +0 -23
  220. package/src/protod/test-data/buf.yaml +0 -25
  221. package/src/protod/test-data/buf2.yaml +0 -20
  222. package/src/protod/test-data/cosmos/buf.lock +0 -23
  223. package/src/protod/test-data/cosmos/crypto/secp256k1/keys.proto +0 -38
  224. package/src/protod/test-data/model.proto +0 -101
  225. package/src/protod/types.ts +0 -55
  226. package/src/protod/utils.spec.ts +0 -68
  227. package/src/protod/utils.ts +0 -90
  228. package/src/telescope.js +0 -9
  229. package/src/types.ts +0 -46
  230. package/src/utils/common-create-bundle.ts +0 -62
  231. package/src/utils/files.ts +0 -145
  232. package/src/utils/index.ts +0 -149
  233. package/src/utils/unused.ts +0 -52
  234. package/types/cli.d.ts +0 -1
  235. package/types/cmds.d.ts +0 -10
  236. package/types/codegen/cosmos/orm/module/v1alpha1/module.d.ts +0 -43
  237. package/types/contracts/generate.d.ts +0 -2
  238. package/types/contracts/message-composer.d.ts +0 -2
  239. package/types/contracts/react-query.d.ts +0 -2
  240. package/types/contracts/recoil.d.ts +0 -2
  241. package/types/file.d.ts +0 -2
  242. package/types/generators/create-cosmwasm-bundle.d.ts +0 -2
  243. package/types/generators/create-unified-stargate-clients.d.ts +0 -3
  244. package/types/helpers/generated-type.d.ts +0 -1
  245. package/types/helpers/internalForBigInt.d.ts +0 -1
  246. package/types/helpers/types.d.ts +0 -1
  247. package/types/protod/proto-download.d.ts +0 -2
  248. package/types/telescope.d.ts +0 -2
  249. package/types/utils/contracts.d.ts +0 -6
  250. /package/{types/build.d.ts → build.d.ts} +0 -0
  251. /package/{main/build.js → build.js} +0 -0
  252. /package/{types/builder.d.ts → builder.d.ts} +0 -0
  253. /package/{main/builder.js → builder.js} +0 -0
  254. /package/{types/bundle.d.ts → bundle.d.ts} +0 -0
  255. /package/{types/bundler.d.ts → bundler.d.ts} +0 -0
  256. /package/{main/bundler.js → bundler.js} +0 -0
  257. /package/{types/commands → commands}/generate.d.ts +0 -0
  258. /package/{types/commands → commands}/install.d.ts +0 -0
  259. /package/{main/commands → commands}/install.js +0 -0
  260. /package/{types/commands → commands}/transpile.d.ts +0 -0
  261. /package/{module → esm}/build.js +0 -0
  262. /package/{module → esm}/builder.js +0 -0
  263. /package/{module → esm}/bundle.js +0 -0
  264. /package/{module → esm}/bundler.js +0 -0
  265. /package/{module → esm}/commands/download.js +0 -0
  266. /package/{module → esm}/commands/generate.js +0 -0
  267. /package/{types/contracts → esm/commands}/install.d.ts +0 -0
  268. /package/{module → esm}/commands/install.js +0 -0
  269. /package/{module → esm}/commands/transpile.js +0 -0
  270. /package/{types → esm}/generators/create-aggregated-lcd-client.d.ts +0 -0
  271. /package/{module → esm}/generators/create-aggregated-lcd-client.js +0 -0
  272. /package/{types → esm}/generators/create-all-stargate-clients.d.ts +0 -0
  273. /package/{module → esm}/generators/create-all-stargate-clients.js +0 -0
  274. /package/{types → esm}/generators/create-amino-converters.d.ts +0 -0
  275. /package/{module → esm}/generators/create-amino-converters.js +0 -0
  276. /package/{types → esm}/generators/create-bundle.d.ts +0 -0
  277. /package/{module → esm}/generators/create-bundle.js +0 -0
  278. /package/{types → esm}/generators/create-custom-stargate-clients.d.ts +0 -0
  279. /package/{module → esm}/generators/create-custom-stargate-clients.js +0 -0
  280. /package/{types → esm}/generators/create-helpers.d.ts +0 -0
  281. /package/{module → esm}/generators/create-helpers.js +0 -0
  282. /package/{types → esm}/generators/create-index.d.ts +0 -0
  283. /package/{module → esm}/generators/create-index.js +0 -0
  284. /package/{types → esm}/generators/create-lcd-client-all.d.ts +0 -0
  285. /package/{module → esm}/generators/create-lcd-client-all.js +0 -0
  286. /package/{types → esm}/generators/create-lcd-client-scoped.d.ts +0 -0
  287. /package/{module → esm}/generators/create-lcd-client-scoped.js +0 -0
  288. /package/{types → esm}/generators/create-lcd-clients.d.ts +0 -0
  289. /package/{module → esm}/generators/create-lcd-clients.js +0 -0
  290. /package/{types → esm}/generators/create-mcp-server.d.ts +0 -0
  291. /package/{module → esm}/generators/create-mcp-server.js +0 -0
  292. /package/{types → esm}/generators/create-mobx-bundle.d.ts +0 -0
  293. /package/{module → esm}/generators/create-mobx-bundle.js +0 -0
  294. /package/{types → esm}/generators/create-msg-funcs.d.ts +0 -0
  295. /package/{module → esm}/generators/create-msg-funcs.js +0 -0
  296. /package/{types → esm}/generators/create-pinia-store-bundle.d.ts +0 -0
  297. /package/{module → esm}/generators/create-pinia-store-bundle.js +0 -0
  298. /package/{types → esm}/generators/create-pinia-store.d.ts +0 -0
  299. /package/{module → esm}/generators/create-pinia-store.js +0 -0
  300. /package/{types → esm}/generators/create-query-funcs.d.ts +0 -0
  301. /package/{module → esm}/generators/create-query-funcs.js +0 -0
  302. /package/{types → esm}/generators/create-react-query-bundle.d.ts +0 -0
  303. /package/{module → esm}/generators/create-react-query-bundle.js +0 -0
  304. /package/{types → esm}/generators/create-registries.d.ts +0 -0
  305. /package/{module → esm}/generators/create-registries.js +0 -0
  306. /package/{types → esm}/generators/create-root-readme.d.ts +0 -0
  307. /package/{module → esm}/generators/create-root-readme.js +0 -0
  308. /package/{types → esm}/generators/create-rpc-msg-client-all.d.ts +0 -0
  309. /package/{module → esm}/generators/create-rpc-msg-client-all.js +0 -0
  310. /package/{types → esm}/generators/create-rpc-msg-client-scoped.d.ts +0 -0
  311. /package/{module → esm}/generators/create-rpc-msg-client-scoped.js +0 -0
  312. /package/{types → esm}/generators/create-rpc-msg-clients.d.ts +0 -0
  313. /package/{module → esm}/generators/create-rpc-msg-clients.js +0 -0
  314. /package/{types → esm}/generators/create-rpc-ops-bundle.d.ts +0 -0
  315. /package/{module → esm}/generators/create-rpc-ops-bundle.js +0 -0
  316. /package/{types → esm}/generators/create-rpc-query-client-all.d.ts +0 -0
  317. /package/{module → esm}/generators/create-rpc-query-client-all.js +0 -0
  318. /package/{types → esm}/generators/create-rpc-query-client-scoped.d.ts +0 -0
  319. /package/{module → esm}/generators/create-rpc-query-client-scoped.js +0 -0
  320. /package/{types → esm}/generators/create-rpc-query-clients.d.ts +0 -0
  321. /package/{module → esm}/generators/create-rpc-query-clients.js +0 -0
  322. /package/{types → esm}/generators/create-sdk-module-stargate-clients.d.ts +0 -0
  323. /package/{types → esm}/generators/create-stargate-clients.d.ts +0 -0
  324. /package/{types → esm}/generators/create-types.d.ts +0 -0
  325. /package/{module → esm}/generators/create-types.js +0 -0
  326. /package/{types → esm}/generators/customize-utils.d.ts +0 -0
  327. /package/{module → esm}/generators/customize-utils.js +0 -0
  328. /package/{types → esm}/helpers/__test__/internalTimestamp.d.ts +0 -0
  329. /package/{module → esm}/helpers/__test__/internalTimestamp.js +0 -0
  330. /package/{types → esm}/helpers/__test__/internalTimestampBigint.d.ts +0 -0
  331. /package/{module → esm}/helpers/__test__/internalTimestampBigint.js +0 -0
  332. /package/{types → esm}/helpers/binary-coder.d.ts +0 -0
  333. /package/{module → esm}/helpers/binary-coder.js +0 -0
  334. /package/{types → esm}/helpers/decimals.d.ts +0 -0
  335. /package/{module → esm}/helpers/decimals.js +0 -0
  336. /package/{types → esm}/helpers/external-comet.d.ts +0 -0
  337. /package/{module → esm}/helpers/external-comet.js +0 -0
  338. /package/{types → esm}/helpers/external-icjs.d.ts +0 -0
  339. /package/{module → esm}/helpers/external-icjs.js +0 -0
  340. /package/{types → esm}/helpers/external.d.ts +0 -0
  341. /package/{module → esm}/helpers/external.js +0 -0
  342. /package/{types → esm}/helpers/grpc-gateway.d.ts +0 -0
  343. /package/{module → esm}/helpers/grpc-gateway.js +0 -0
  344. /package/{types → esm}/helpers/grpc-web.d.ts +0 -0
  345. /package/{module → esm}/helpers/grpc-web.js +0 -0
  346. /package/{types → esm}/helpers/helper-func-types-interface.d.ts +0 -0
  347. /package/{module → esm}/helpers/helper-func-types-interface.js +0 -0
  348. /package/{types → esm}/helpers/helper-func-types.d.ts +0 -0
  349. /package/{module → esm}/helpers/helper-func-types.js +0 -0
  350. /package/{types → esm}/helpers/index.d.ts +0 -0
  351. /package/{module → esm}/helpers/index.js +0 -0
  352. /package/{types → esm}/helpers/internal-for-bigint.d.ts +0 -0
  353. /package/{module → esm}/helpers/internal-for-bigint.js +0 -0
  354. /package/{types → esm}/helpers/internal.d.ts +0 -0
  355. /package/{module → esm}/helpers/internal.js +0 -0
  356. /package/{types → esm}/helpers/json-safe.d.ts +0 -0
  357. /package/{module → esm}/helpers/json-safe.js +0 -0
  358. /package/{types → esm}/helpers/mobx.d.ts +0 -0
  359. /package/{module → esm}/helpers/mobx.js +0 -0
  360. /package/{types → esm}/helpers/pinia-endpoint.d.ts +0 -0
  361. /package/{module → esm}/helpers/pinia-endpoint.js +0 -0
  362. /package/{types → esm}/helpers/react-query-hooks-icjs.d.ts +0 -0
  363. /package/{module → esm}/helpers/react-query-hooks-icjs.js +0 -0
  364. /package/{types → esm}/helpers/react-query-hooks.d.ts +0 -0
  365. /package/{module → esm}/helpers/react-query-hooks.js +0 -0
  366. /package/{types → esm}/helpers/react-query.d.ts +0 -0
  367. /package/{module → esm}/helpers/react-query.js +0 -0
  368. /package/{types → esm}/helpers/registry-helper.d.ts +0 -0
  369. /package/{module → esm}/helpers/registry-helper.js +0 -0
  370. /package/{types → esm}/helpers/types-helper.d.ts +0 -0
  371. /package/{module → esm}/helpers/types-helper.js +0 -0
  372. /package/{types → esm}/helpers/utf8-helper.d.ts +0 -0
  373. /package/{module → esm}/helpers/utf8-helper.js +0 -0
  374. /package/{types → esm}/helpers/varint.d.ts +0 -0
  375. /package/{module → esm}/helpers/varint.js +0 -0
  376. /package/{types → esm}/helpers/vue-query-hooks.d.ts +0 -0
  377. /package/{module → esm}/helpers/vue-query-hooks.js +0 -0
  378. /package/{types → esm}/imports.d.ts +0 -0
  379. /package/{module → esm}/imports.js +0 -0
  380. /package/{types → esm}/index.d.ts +0 -0
  381. /package/{module → esm}/index.js +0 -0
  382. /package/{types → esm}/parse.d.ts +0 -0
  383. /package/{module → esm}/parse.js +0 -0
  384. /package/{types → esm}/prompt.d.ts +0 -0
  385. /package/{module → esm}/prompt.js +0 -0
  386. /package/{types → esm}/protod/bufbuild.d.ts +0 -0
  387. /package/{module → esm}/protod/bufbuild.js +0 -0
  388. /package/{types → esm}/protod/config.d.ts +0 -0
  389. /package/{module → esm}/protod/config.js +0 -0
  390. /package/{types → esm}/protod/git-repo.d.ts +0 -0
  391. /package/{module → esm}/protod/git-repo.js +0 -0
  392. /package/{types → esm}/protod/index.d.ts +0 -0
  393. /package/{module → esm}/protod/index.js +0 -0
  394. /package/{types → esm}/protod/recursive.d.ts +0 -0
  395. /package/{module → esm}/protod/recursive.js +0 -0
  396. /package/{types → esm}/protod/types.d.ts +0 -0
  397. /package/{module → esm}/protod/types.js +0 -0
  398. /package/{types → esm}/protod/utils.d.ts +0 -0
  399. /package/{module → esm}/protod/utils.js +0 -0
  400. /package/{types → esm}/types.d.ts +0 -0
  401. /package/{module → esm}/types.js +0 -0
  402. /package/{types → esm}/utils/common-create-bundle.d.ts +0 -0
  403. /package/{module → esm}/utils/common-create-bundle.js +0 -0
  404. /package/{types → esm}/utils/files.d.ts +0 -0
  405. /package/{module → esm}/utils/files.js +0 -0
  406. /package/{module → esm}/utils/index.js +0 -0
  407. /package/{types → esm}/utils/unused.d.ts +0 -0
  408. /package/{module → esm}/utils/unused.js +0 -0
  409. /package/{main/generators → generators}/create-aggregated-lcd-client.js +0 -0
  410. /package/{types/generators/create-combined-stargate-clients.d.ts → generators/create-all-stargate-clients.d.ts} +0 -0
  411. /package/{main/generators → generators}/create-all-stargate-clients.js +0 -0
  412. /package/{main/generators → generators}/create-amino-converters.js +0 -0
  413. /package/{main/generators → generators}/create-bundle.js +0 -0
  414. /package/{types/generators/create-scoped-stargate-clients.d.ts → generators/create-custom-stargate-clients.d.ts} +0 -0
  415. /package/{main/generators → generators}/create-custom-stargate-clients.js +0 -0
  416. /package/{main/generators → generators}/create-helpers.js +0 -0
  417. /package/{main/generators → generators}/create-lcd-clients.js +0 -0
  418. /package/{main/generators → generators}/create-mcp-server.js +0 -0
  419. /package/{main/generators → generators}/create-msg-funcs.js +0 -0
  420. /package/{main/generators → generators}/create-pinia-store.js +0 -0
  421. /package/{main/generators → generators}/create-query-funcs.js +0 -0
  422. /package/{main/generators → generators}/create-registries.js +0 -0
  423. /package/{main/generators → generators}/create-root-readme.js +0 -0
  424. /package/{main/generators → generators}/create-rpc-msg-clients.js +0 -0
  425. /package/{main/generators → generators}/create-rpc-query-clients.js +0 -0
  426. /package/{main/generators → generators}/customize-utils.js +0 -0
  427. /package/{main/helpers → helpers}/binary-coder.js +0 -0
  428. /package/{main/helpers → helpers}/decimals.js +0 -0
  429. /package/{main/helpers → helpers}/external-comet.js +0 -0
  430. /package/{main/helpers → helpers}/external-icjs.js +0 -0
  431. /package/{main/helpers → helpers}/external.js +0 -0
  432. /package/{main/helpers → helpers}/grpc-gateway.js +0 -0
  433. /package/{main/helpers → helpers}/grpc-web.js +0 -0
  434. /package/{main/helpers → helpers}/helper-func-types-interface.js +0 -0
  435. /package/{main/helpers → helpers}/helper-func-types.js +0 -0
  436. /package/{src/helpers/index.ts → helpers/index.d.ts} +0 -0
  437. /package/{main/helpers → helpers}/index.js +0 -0
  438. /package/{main/helpers → helpers}/internal-for-bigint.js +0 -0
  439. /package/{main/helpers → helpers}/internal.js +0 -0
  440. /package/{main/helpers → helpers}/json-safe.js +0 -0
  441. /package/{main/helpers → helpers}/mobx.js +0 -0
  442. /package/{main/helpers → helpers}/pinia-endpoint.js +0 -0
  443. /package/{main/helpers → helpers}/react-query-hooks-icjs.js +0 -0
  444. /package/{main/helpers → helpers}/react-query-hooks.js +0 -0
  445. /package/{main/helpers → helpers}/react-query.js +0 -0
  446. /package/{main/helpers → helpers}/registry-helper.js +0 -0
  447. /package/{main/helpers → helpers}/types-helper.js +0 -0
  448. /package/{main/helpers → helpers}/utf8-helper.js +0 -0
  449. /package/{main/helpers → helpers}/varint.js +0 -0
  450. /package/{main/helpers → helpers}/vue-query-hooks.js +0 -0
  451. /package/{main/index.js → index.js} +0 -0
  452. /package/{main/parse.js → parse.js} +0 -0
  453. /package/{main/prompt.js → prompt.js} +0 -0
  454. /package/{main/protod → protod}/config.js +0 -0
  455. /package/{main/protod → protod}/git-repo.js +0 -0
  456. /package/{src/protod/index.ts → protod/index.d.ts} +0 -0
  457. /package/{main/protod → protod}/index.js +0 -0
  458. /package/{main/protod → protod}/types.js +0 -0
  459. /package/{main/types.js → types.js} +0 -0
  460. /package/{main/utils → utils}/common-create-bundle.js +0 -0
  461. /package/{main/utils → utils}/index.js +0 -0
package/src/builder.ts DELETED
@@ -1,292 +0,0 @@
1
- import { ProtoStore } from '@cosmology/proto-parser';
2
- import { TelescopeParseContext } from './build';
3
- import { TelescopeOptions, defaultTelescopeOptions } from '@cosmology/types';
4
- import { toPosixPath } from '@cosmology/utils';
5
- import { bundlePackages } from './bundle';
6
- import { BundlerFile, TelescopeInput } from './types';
7
- import { Bundler } from './bundler';
8
- import deepmerge from 'deepmerge';
9
- import { resolve } from 'path';
10
-
11
- import { plugin as createTypes } from './generators/create-types';
12
- import { plugin as createAminoConverters } from './generators/create-amino-converters';
13
- import { plugin as createRegistries } from './generators/create-registries';
14
- import { plugin as createLCDClients } from './generators/create-lcd-clients';
15
- import { plugin as createAggregatedLCDClient } from './generators/create-aggregated-lcd-client';
16
- import { plugin as createLCDClientsScoped } from './generators/create-lcd-client-scoped';
17
- import { plugin as createLCDClientsAll } from './generators/create-lcd-client-all';
18
- import { plugin as createRPCQueryClientsScoped } from './generators/create-rpc-query-client-scoped';
19
- import { plugin as createRPCQueryClientsAll } from './generators/create-rpc-query-client-all';
20
- import { plugin as createRPCMsgClientsScoped } from './generators/create-rpc-msg-client-scoped';
21
- import { plugin as createRPCMsgClientsAll } from './generators/create-rpc-msg-client-all';
22
- import { plugin as createRPCQueryClients } from './generators/create-rpc-query-clients';
23
- import { plugin as createRPCMsgClients } from './generators/create-rpc-msg-clients';
24
- import { plugin as createQueryFuncs } from './generators/create-query-funcs';
25
- import { plugin as createMsgFuncs } from './generators/create-msg-funcs';
26
- import { plugin as createReactQueryBundle } from './generators/create-react-query-bundle';
27
- import { plugin as createMobxBundle } from './generators/create-mobx-bundle';
28
- import { plugin as createStargateClients } from './generators/create-stargate-clients';
29
- import { plugin as createCustomStargateClients } from './generators/create-custom-stargate-clients';
30
- import { plugin as createAllStargateClients } from './generators/create-all-stargate-clients';
31
- import { plugin as createSdkModuleStargateClients } from './generators/create-sdk-module-stargate-clients';
32
- import { plugin as createBundle } from './generators/create-bundle';
33
- import { plugin as createIndex } from './generators/create-index';
34
- import { plugin as createHelpers } from './generators/create-helpers';
35
-
36
- import { plugin as createPiniaStore } from './generators/create-pinia-store';
37
- import { plugin as createPiniaStoreBundle } from './generators/create-pinia-store-bundle';
38
- import { plugin as createRpcOpsBundle } from './generators/create-rpc-ops-bundle';
39
- import { plugin as customizeUtils } from './generators/customize-utils';
40
- import { plugin as createRootReadme } from './generators/create-root-readme';
41
- import { plugin as createMcpServer } from './generators/create-mcp-server';
42
-
43
- const sanitizeOptions = (options: TelescopeOptions): TelescopeOptions => {
44
- // If an element at the same key is present for both x and y, the value from y will appear in the result.
45
- options = deepmerge(defaultTelescopeOptions, options ?? {});
46
-
47
- // strip off leading slashes
48
- options.tsDisable.files = options.tsDisable.files.map((file) =>
49
- file.startsWith('/') ? file : file.replace(/^\//, '')
50
- );
51
- options.eslintDisable.files = options.eslintDisable.files.map((file) =>
52
- file.startsWith('/') ? file : file.replace(/^\//, '')
53
- );
54
- // uniq bc of deepmerge
55
- options.rpcClients.enabledServices = [
56
- ...new Set([...options.rpcClients.enabledServices]),
57
- ];
58
- return options;
59
- };
60
-
61
- export class TelescopeBuilder {
62
- store: ProtoStore;
63
- protoDirs: string[];
64
- outPath: string;
65
- options: TelescopeOptions;
66
- contexts: TelescopeParseContext[] = [];
67
- files: string[] = [];
68
-
69
- readonly converters: BundlerFile[] = [];
70
- readonly lcdClients: BundlerFile[] = [];
71
- readonly rpcQueryClients: BundlerFile[] = [];
72
- readonly rpcMsgClients: BundlerFile[] = [];
73
- readonly registries: BundlerFile[] = [];
74
- readonly stateManagers: Record<string, BundlerFile[]> = {};
75
-
76
- // Function mapping storage: package -> service -> method -> functionName
77
- readonly functionMappings: Record<string, Record<string, Record<string, {
78
- functionName: string;
79
- hookName: string;
80
- comment?: string;
81
- requestType: string;
82
- responseType: string;
83
- sourceFilename?: string;
84
- hookSourceFilename?: string;
85
- typeSourceFilename?: string;
86
- }>>> = {};
87
-
88
- constructor({
89
- protoDirs,
90
- outPath,
91
- store,
92
- options,
93
- }: TelescopeInput & { store?: ProtoStore }) {
94
- const fixedDirs = protoDirs.map((directory) => {
95
- return toPosixPath(directory);
96
- });
97
-
98
- this.protoDirs = fixedDirs;
99
- this.outPath = resolve(toPosixPath(outPath));
100
- this.options = sanitizeOptions(options);
101
- this.store = store ?? new ProtoStore(fixedDirs, this.options);
102
- this.store.traverseAll();
103
-
104
- }
105
-
106
- context(ref) {
107
- const ctx = new TelescopeParseContext(ref, this.store, this.options);
108
- this.contexts.push(ctx);
109
- return ctx;
110
- }
111
-
112
- addFunctionMapping(
113
- packageName: string,
114
- serviceName: string,
115
- methodName: string,
116
- functionName: string,
117
- hookName: string,
118
- comment?: string,
119
- requestType?: string,
120
- responseType?: string,
121
- sourceFilename?: string,
122
- hookSourceFilename?: string,
123
- typeSourceFilename?: string
124
- ) {
125
- if (!this.functionMappings[packageName]) {
126
- this.functionMappings[packageName] = {};
127
- }
128
- if (!this.functionMappings[packageName][serviceName]) {
129
- this.functionMappings[packageName][serviceName] = {};
130
- }
131
-
132
- this.functionMappings[packageName][serviceName][methodName] = {
133
- functionName,
134
- hookName,
135
- comment,
136
- requestType,
137
- responseType,
138
- sourceFilename,
139
- hookSourceFilename,
140
- typeSourceFilename
141
- };
142
- }
143
-
144
- getFunctionMappings() {
145
- return this.functionMappings;
146
- }
147
-
148
- addStateManagers(type: string, files: BundlerFile[]) {
149
- const state = this.stateManagers[type];
150
-
151
- if (!state) {
152
- this.stateManagers[type] = [];
153
- }
154
-
155
- [].push.apply(this.stateManagers[type], files);
156
- }
157
-
158
- addRPCQueryClients(files: BundlerFile[]) {
159
- [].push.apply(this.rpcQueryClients, files);
160
- }
161
-
162
- addRPCMsgClients(files: BundlerFile[]) {
163
- [].push.apply(this.rpcMsgClients, files);
164
- }
165
-
166
- addLCDClients(files: BundlerFile[]) {
167
- [].push.apply(this.lcdClients, files);
168
- }
169
-
170
- addRegistries(files: BundlerFile[]) {
171
- [].push.apply(this.registries, files);
172
- }
173
-
174
- addConverters(files: BundlerFile[]) {
175
- [].push.apply(this.converters, files);
176
- }
177
-
178
-
179
-
180
-
181
- async build() {
182
- // check warnings
183
- if (
184
- !this.options.aminoEncoding?.enabled &&
185
- (this.options.prototypes?.methods?.fromAmino ||
186
- this.options.prototypes?.methods?.toAmino)
187
- ) {
188
- console.warn(
189
- "There could be compilation errors in generated code, because 'aminoEncoding.enabled: false' means amino types wouldn't be created, but 'toAmino' or 'fromAmino' need amino types."
190
- );
191
- }
192
-
193
- if (!this.options.prototypes.methods.fromPartial) {
194
- console.warn(
195
- "The 'fromPartial' option will be deprecated in a future version. Encoder objects need fromPartial to be a creator function to create instance of the type. So it should always be left on, otherwise there could be compilation errors in generated code."
196
- );
197
- }
198
-
199
- customizeUtils(this);
200
-
201
- const allConverters = [];
202
- const allRegistries = [];
203
- // [x] get bundle of all packages
204
- const bundles = bundlePackages(this.store).map((bundle) => {
205
- // store bundleFile in filesToInclude
206
- const bundler = new Bundler(this, bundle);
207
-
208
-
209
- // [x] write out all TS files for package
210
- createTypes(this, bundler);
211
-
212
- // [x] write out one amino helper for all contexts w/mutations
213
- createAminoConverters(this, bundler);
214
-
215
- // [x] write out one registry helper for all contexts w/mutations
216
- createRegistries(this, bundler);
217
-
218
- // [x] write out one registry helper for all contexts w/mutations
219
- createLCDClients(this, bundler);
220
-
221
- createQueryFuncs(this, bundler);
222
- createRPCQueryClients(this, bundler);
223
- createMsgFuncs(this, bundler);
224
- createRPCMsgClients(this, bundler);
225
- createPiniaStore(this, bundler);
226
-
227
- if (this.options.rpcClients.clientStyle.useUpdatedClientStyle) {
228
- // generate sdk-module client file
229
- if (this.options.rpcClients.clientStyle.type.includes('sdk-module-client') && this.options.rpcClients.clientStyle.sdkModuleClientOption.includes(bundler.bundle.base)) {
230
- createSdkModuleStargateClients(this, bundler)
231
- }
232
-
233
- // store registry and converter for all/custom client generation
234
- if (bundler.registries) {
235
- allRegistries.push(...bundler.registries)
236
- }
237
- if (bundler.converters) {
238
- allConverters.push(...bundler.converters)
239
- }
240
- } else {
241
- // [x] write out one client for each base package, referencing the last two steps
242
- createStargateClients(this, bundler);
243
- }
244
- return bundler;
245
- });
246
-
247
- if (this.options.rpcClients.clientStyle.useUpdatedClientStyle) {
248
- // generate cutsom client file
249
- if (this.options.rpcClients.clientStyle.type.includes('custom-client') && this.options.rpcClients.clientStyle.customClientOption && this.options.rpcClients.clientStyle.customClientOption.length !== 0) {
250
- createCustomStargateClients(this, allRegistries, allConverters)
251
- }
252
- // generate all module client file
253
- if (this.options.rpcClients.clientStyle.type.includes('all-client')) {
254
- createAllStargateClients(this, allRegistries, allConverters)
255
- }
256
- }
257
-
258
- // post run plugins
259
- bundles.forEach((bundler) => {
260
- createLCDClientsAll(this, bundler);
261
- createLCDClientsScoped(this, bundler);
262
- createRPCQueryClientsAll(this, bundler);
263
- createRPCQueryClientsScoped(this, bundler);
264
- createRPCMsgClientsAll(this, bundler);
265
- createRPCMsgClientsScoped(this, bundler);
266
- createBundle(this, bundler);
267
- });
268
-
269
- createRpcOpsBundle(this);
270
- createReactQueryBundle(this);
271
- createMobxBundle(this);
272
- createAggregatedLCDClient(this);
273
-
274
- createHelpers(this);
275
- createPiniaStoreBundle(this);
276
-
277
- // finally, write one index file with all files, exported
278
- createIndex(this);
279
- createRootReadme(this);
280
-
281
- // Generate MCP server at the very end after all files are written
282
- if (this.options.mcpServer?.enabled && bundles.length > 0) {
283
- // Use the first bundle that has contexts (typically the main aggregated bundle)
284
- const primaryBundle = bundles.find(bundler => bundler.contexts.length > 0);
285
- if (primaryBundle) {
286
- createMcpServer(this, primaryBundle);
287
- }
288
- }
289
-
290
- console.log(`✨ files transpiled in '${this.outPath}'`);
291
- }
292
- }
package/src/bundle.ts DELETED
@@ -1,160 +0,0 @@
1
- import { ProtoStore, isRefExcluded, createEmptyProtoRef } from '@cosmology/proto-parser';
2
- import { importNamespace } from '@cosmology/ast';
3
- import * as dotty from 'dotty';
4
- import { TelescopeBuilder } from './index';
5
- import { join, relative, dirname } from 'path';
6
- import { TelescopeParseContext } from './build';
7
- import { TelescopeOptions } from '@cosmology/types';
8
- import { toPosixPath } from '@cosmology/utils';
9
-
10
- // TODO move to store
11
- export const getPackages = (store: ProtoStore) => {
12
- return store.getProtos().reduce((m, proto) => {
13
- if (proto.proto.package) {
14
- m[proto.proto.package] = m[proto.proto.package] || []
15
- m[proto.proto.package].push(proto);
16
- }
17
- return m;
18
- }, {});
19
- }
20
-
21
- export const getPackagesBundled = (store: ProtoStore) => {
22
- const objectified = {};
23
- const pkgs = getPackages(store);
24
- Object.keys(pkgs).forEach(key => {
25
- if (isRefExcluded(createEmptyProtoRef(key), store.options.prototypes?.excluded)) return;
26
- const files = pkgs[key];
27
- dotty.put(objectified, key, {
28
- pkg: key,
29
- files: files.filter(file => {
30
- return !isRefExcluded(createEmptyProtoRef(key, file.filename), store.options.prototypes?.excluded);
31
- })
32
- });
33
- });
34
- return objectified;
35
-
36
- }
37
-
38
- export const bundlePackages = (store: ProtoStore) => {
39
- const allPackages = getPackagesBundled(store);
40
- return Object.keys(allPackages).map(base => {
41
- const pkgs = allPackages[base];
42
- const bundleVariables = {};
43
- const bundleFile = toPosixPath(join(base, 'bundle.ts'));
44
- const importPaths = [];
45
- parsePackage(store.options, pkgs, bundleFile, importPaths, bundleVariables);
46
- return {
47
- bundleVariables,
48
- bundleFile,
49
- importPaths,
50
- base
51
- };
52
- });
53
- };
54
-
55
- // TODO review bundle registry methods
56
- export const bundleRegistries = (telescope: TelescopeBuilder) => {
57
- const withMutations = telescope.contexts.filter(
58
- ctx => ctx.mutations.length
59
- );
60
- const obj = withMutations.reduce((m, ctx) => {
61
- m[ctx.ref.proto.package] = m[ctx.ref.proto.package] ?? [];
62
- m[ctx.ref.proto.package].push(ctx);
63
- return m;
64
- }, {});
65
-
66
- return Object.entries(obj)
67
- .map(([pkg, serviceProtos]) => {
68
- return {
69
- package: pkg,
70
- contexts: serviceProtos
71
- };
72
- });
73
- }
74
-
75
- export const bundleBaseRegistries = (telescope: TelescopeBuilder) => {
76
- const withMutations = telescope.contexts.filter(
77
- ctx => ctx.mutations.length
78
- );
79
- const obj = withMutations.reduce((m, ctx) => {
80
- const base = ctx.ref.proto.package.split('.')[0];
81
- m[base] = m[base] ?? {};
82
- m[base][ctx.ref.proto.package] = m[base][ctx.ref.proto.package] ?? [];
83
- m[base][ctx.ref.proto.package].push(ctx);
84
- return m;
85
- }, {});
86
-
87
- return Object.entries(obj)
88
- .map(([pkg, withServices]) => {
89
-
90
- const serviceProtos = Object.entries(withServices)
91
- .map(([pkg, withServices]) => {
92
- return {
93
- package: pkg,
94
- contexts: withServices
95
- }
96
- });
97
-
98
-
99
- return {
100
- base: pkg,
101
- pkgs: serviceProtos
102
- };
103
- });
104
- };
105
-
106
- export const parseContextsForRegistry = (contexts: TelescopeParseContext[]) => {
107
- return contexts.map((ctx: TelescopeParseContext) => {
108
- const responses = ctx.mutations.map(m => m.response)
109
- const imports = ctx.mutations.reduce((m, msg) => {
110
- m[msg.messageImport] = m[msg.messageImport] ?? [];
111
- m[msg.messageImport].push(msg.message);
112
- return m;
113
- }, {})
114
-
115
- return {
116
- filename: ctx.ref.filename,
117
- imports,
118
- objects: ctx.types
119
- .filter(type => !type.isNested)
120
- .filter(type => !responses.includes(type.name))
121
- .map(type => type.name)
122
- }
123
- });
124
- };
125
-
126
- export const parsePackage = (
127
- options: TelescopeOptions,
128
- obj,
129
- bundleFile,
130
- importPaths,
131
- bundleVariables
132
- ) => {
133
- if (!obj) return;
134
- if (obj.pkg && obj.files) {
135
- obj.files.forEach(file => {
136
- createFileBundle(options, obj.pkg, file.filename, bundleFile, importPaths, bundleVariables);
137
- });
138
- return;
139
- }
140
- Object.keys(obj).forEach(mini => {
141
- parsePackage(options, obj[mini], bundleFile, importPaths, bundleVariables);
142
- })
143
- }
144
-
145
- let counter = 0;
146
- export const createFileBundle = (
147
- options: TelescopeOptions,
148
- pkg,
149
- filename,
150
- bundleFile,
151
- importPaths,
152
- bundleVariables
153
- ) => {
154
- let rel = relative(dirname(bundleFile), filename);
155
- if (!rel.startsWith('.')) rel = `./${rel}`;
156
- const variable = `_${counter++}`;
157
- importPaths.push(importNamespace(variable, toPosixPath(rel)));
158
- dotty.put(bundleVariables, pkg + '.__export', true);
159
- dotty.put(bundleVariables, pkg + '.' + variable, true);
160
- }
package/src/bundler.ts DELETED
@@ -1,153 +0,0 @@
1
- import * as t from "@babel/types";
2
- import { resolve, join, dirname, relative, extname } from "path";
3
- import { TelescopeParseContext } from "./build";
4
- import { createFileBundle } from "./bundle";
5
- import { TelescopeBuilder } from "./builder";
6
- import { ProtoRef } from "@cosmology/types";
7
- import { Bundle, BundlerFile } from "./types";
8
- import { writeAstToFile } from "./utils/files";
9
- import { toPosixPath } from "@cosmology/utils";
10
-
11
- export class Bundler {
12
- builder: TelescopeBuilder;
13
-
14
- contexts: TelescopeParseContext[] = [];
15
- bundle: Bundle;
16
- files: string[];
17
-
18
- readonly converters: BundlerFile[] = [];
19
- readonly lcdClients: BundlerFile[] = [];
20
- readonly rpcQueryClients: BundlerFile[] = [];
21
- readonly rpcMsgClients: BundlerFile[] = [];
22
- readonly registries: BundlerFile[] = [];
23
- readonly stateManagers: Record<string, BundlerFile[]> = {};
24
-
25
- constructor(builder: TelescopeBuilder, bundle: Bundle) {
26
- this.builder = builder;
27
- this.bundle = bundle;
28
- this.files = [bundle.bundleFile];
29
- }
30
-
31
- addStateManagers(type: string, files: BundlerFile[]) {
32
- const state = this.stateManagers[type];
33
-
34
- if (!state) {
35
- this.stateManagers[type] = [];
36
- }
37
-
38
- [].push.apply(this.stateManagers[type], files);
39
-
40
- this.builder.addStateManagers(type, files);
41
- }
42
-
43
- addLCDClients(files: BundlerFile[]) {
44
- [].push.apply(this.lcdClients, files);
45
- this.builder.addLCDClients(files);
46
- }
47
-
48
- addRPCQueryClients(files: BundlerFile[]) {
49
- [].push.apply(this.rpcQueryClients, files);
50
- this.builder.addRPCQueryClients(files);
51
- }
52
-
53
- addRPCMsgClients(files: BundlerFile[]) {
54
- [].push.apply(this.rpcMsgClients, files);
55
- this.builder.addRPCMsgClients(files);
56
- }
57
-
58
- addRegistries(files: BundlerFile[]) {
59
- [].push.apply(this.registries, files);
60
- this.builder.addRegistries(files);
61
- }
62
-
63
- addConverters(files: BundlerFile[]) {
64
- [].push.apply(this.converters, files);
65
- this.builder.addConverters(files);
66
- }
67
-
68
- getFreshContext(context: TelescopeParseContext) {
69
- return new TelescopeParseContext(
70
- context.ref,
71
- context.store,
72
- this.builder.options
73
- );
74
- }
75
-
76
- getLocalFilename(ref: ProtoRef, suffix?: string) {
77
- return suffix
78
- ? ref.filename.replace(/\.proto$/, `.${suffix}.ts`)
79
- : ref.filename.replace(/\.proto$/, `.ts`);
80
- }
81
-
82
- getFilename(localname: string) {
83
- return resolve(join(this.builder.outPath, localname));
84
- }
85
-
86
- writeAst(program: t.Statement[], filename: string) {
87
- writeAstToFile(
88
- this.builder.outPath,
89
- this.builder.options,
90
- program,
91
- filename
92
- );
93
- }
94
-
95
- // addToBundle adds the path into the namespaced bundle object
96
- addToBundle(context: TelescopeParseContext, localname: string) {
97
- createFileBundle(
98
- this.builder.options,
99
- context.ref.proto.package,
100
- localname,
101
- this.bundle.bundleFile,
102
- this.bundle.importPaths,
103
- this.bundle.bundleVariables
104
- );
105
- }
106
-
107
- addToBundleToPackage(packagename: string, localname: string) {
108
- createFileBundle(
109
- this.builder.options,
110
- packagename,
111
- localname,
112
- this.bundle.bundleFile,
113
- this.bundle.importPaths,
114
- this.bundle.bundleVariables
115
- );
116
- }
117
-
118
- addExportObjToBundle(
119
- pkg: string,
120
- localname: string,
121
- exportedIdentifiers: string[],
122
- isHelperFunc?: boolean
123
- ) {
124
- if (!this.bundle.exportObjs) {
125
- this.bundle.exportObjs = [];
126
- }
127
-
128
- let rel = relative(dirname(this.bundle.bundleFile), localname);
129
- if (!rel.startsWith(".")) rel = `./${rel}`;
130
- rel = toPosixPath(rel);
131
- rel = rel.replace(extname(rel), "");
132
-
133
- const existing = this.bundle.exportObjs.find(
134
- (e) => e.localname === localname
135
- );
136
-
137
- if (existing) {
138
- // use Set to avoid duplicates
139
- existing.exportedIdentifiers = [
140
- ...new Set([...existing.exportedIdentifiers, ...exportedIdentifiers]),
141
- ];
142
- return;
143
- }
144
-
145
- this.bundle.exportObjs.push({
146
- localname,
147
- relativePath: rel,
148
- exportedIdentifiers: [...new Set(exportedIdentifiers)],
149
- isHelperFunc,
150
- pkg,
151
- });
152
- }
153
- }
package/src/cli.js DELETED
@@ -1,31 +0,0 @@
1
- import { prompt } from './prompt';
2
- import { Commands as commands } from './cmds';
3
- import * as pkg from '../package.json';
4
-
5
- export const cli = async (argv) => {
6
- if (argv.v || argv.version) {
7
- console.log(pkg.version);
8
- return;
9
- }
10
-
11
-
12
-
13
- console.log(`Telescope ${pkg.version}`);
14
- const { cmd } = await prompt(
15
- [
16
- {
17
- _: true,
18
- type: 'fuzzy',
19
- name: 'cmd',
20
- message: 'what do you want to do?',
21
- choices: Object.keys(commands)
22
- }
23
- ],
24
- argv
25
- );
26
- if (typeof commands[cmd] === 'function') {
27
- await commands[cmd](argv);
28
- } else {
29
- console.log('command not found.');
30
- }
31
- };
package/src/cmds.js DELETED
@@ -1,11 +0,0 @@
1
- import _commands_generate from './commands/generate';
2
- import _commands_install from './commands/install';
3
- import _commands_download from './commands/download';
4
- import _commands_transpile from './commands/transpile';
5
- const Commands = {};
6
- Commands['generate'] = _commands_generate;
7
- Commands['install'] = _commands_install;
8
- Commands['download'] = _commands_download;
9
- Commands['transpile'] = _commands_transpile;
10
-
11
- export { Commands };