@helium/helium-admin-cli 0.2.21 → 0.2.22-next.33

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 (284) hide show
  1. package/package.json +25 -25
  2. package/lib/cjs/approve-carrier.js +0 -119
  3. package/lib/cjs/approve-carrier.js.map +0 -1
  4. package/lib/cjs/approve-program.js +0 -121
  5. package/lib/cjs/approve-program.js.map +0 -1
  6. package/lib/cjs/claim-rewards.js +0 -109
  7. package/lib/cjs/claim-rewards.js.map +0 -1
  8. package/lib/cjs/close-buffers.js +0 -131
  9. package/lib/cjs/close-buffers.js.map +0 -1
  10. package/lib/cjs/close-canopy.js +0 -104
  11. package/lib/cjs/close-canopy.js.map +0 -1
  12. package/lib/cjs/correct-router-dc.js +0 -149
  13. package/lib/cjs/correct-router-dc.js.map +0 -1
  14. package/lib/cjs/create-active-device-aggregator.js +0 -112
  15. package/lib/cjs/create-active-device-aggregator.js.map +0 -1
  16. package/lib/cjs/create-carrier.js +0 -202
  17. package/lib/cjs/create-carrier.js.map +0 -1
  18. package/lib/cjs/create-dao.js +0 -457
  19. package/lib/cjs/create-dao.js.map +0 -1
  20. package/lib/cjs/create-data-only-config.js +0 -174
  21. package/lib/cjs/create-data-only-config.js.map +0 -1
  22. package/lib/cjs/create-maker.js +0 -321
  23. package/lib/cjs/create-maker.js.map +0 -1
  24. package/lib/cjs/create-price-oracle.js +0 -127
  25. package/lib/cjs/create-price-oracle.js.map +0 -1
  26. package/lib/cjs/create-subdao.js +0 -527
  27. package/lib/cjs/create-subdao.js.map +0 -1
  28. package/lib/cjs/distribute-hst.js +0 -94
  29. package/lib/cjs/distribute-hst.js.map +0 -1
  30. package/lib/cjs/distribute-iot-operations-fund.js +0 -120
  31. package/lib/cjs/distribute-iot-operations-fund.js.map +0 -1
  32. package/lib/cjs/ecc-gen.js +0 -17
  33. package/lib/cjs/ecc-gen.js.map +0 -1
  34. package/lib/cjs/end-epoch.js +0 -144
  35. package/lib/cjs/end-epoch.js.map +0 -1
  36. package/lib/cjs/issue-iot-operations-fund.js +0 -122
  37. package/lib/cjs/issue-iot-operations-fund.js.map +0 -1
  38. package/lib/cjs/issue-test-hotspot.js +0 -111
  39. package/lib/cjs/issue-test-hotspot.js.map +0 -1
  40. package/lib/cjs/log-coingecko-price.js +0 -32
  41. package/lib/cjs/log-coingecko-price.js.map +0 -1
  42. package/lib/cjs/log-hotspot.js +0 -103
  43. package/lib/cjs/log-hotspot.js.map +0 -1
  44. package/lib/cjs/log-router-balance.js +0 -89
  45. package/lib/cjs/log-router-balance.js.map +0 -1
  46. package/lib/cjs/log-treasury-price.js +0 -105
  47. package/lib/cjs/log-treasury-price.js.map +0 -1
  48. package/lib/cjs/mint-dc.js +0 -111
  49. package/lib/cjs/mint-dc.js.map +0 -1
  50. package/lib/cjs/repair-iot-operations-fund.js +0 -113
  51. package/lib/cjs/repair-iot-operations-fund.js.map +0 -1
  52. package/lib/cjs/reset-clockwork.js +0 -143
  53. package/lib/cjs/reset-clockwork.js.map +0 -1
  54. package/lib/cjs/reset-vsr-max-voter-record.js +0 -144
  55. package/lib/cjs/reset-vsr-max-voter-record.js.map +0 -1
  56. package/lib/cjs/reset-vsr-voting-mint.js +0 -181
  57. package/lib/cjs/reset-vsr-voting-mint.js.map +0 -1
  58. package/lib/cjs/setup-hst.js +0 -260
  59. package/lib/cjs/setup-hst.js.map +0 -1
  60. package/lib/cjs/submit-price.js +0 -159
  61. package/lib/cjs/submit-price.js.map +0 -1
  62. package/lib/cjs/sum-tokens.js +0 -84
  63. package/lib/cjs/sum-tokens.js.map +0 -1
  64. package/lib/cjs/take-snapshot.js +0 -70
  65. package/lib/cjs/take-snapshot.js.map +0 -1
  66. package/lib/cjs/update-account-circuit-breaker.js +0 -129
  67. package/lib/cjs/update-account-circuit-breaker.js.map +0 -1
  68. package/lib/cjs/update-aggregator.js +0 -115
  69. package/lib/cjs/update-aggregator.js.map +0 -1
  70. package/lib/cjs/update-dao.js +0 -156
  71. package/lib/cjs/update-dao.js.map +0 -1
  72. package/lib/cjs/update-data-credits.js +0 -127
  73. package/lib/cjs/update-data-credits.js.map +0 -1
  74. package/lib/cjs/update-delegated-dc-subdao.js +0 -135
  75. package/lib/cjs/update-delegated-dc-subdao.js.map +0 -1
  76. package/lib/cjs/update-iot-operations-fund-metadata.js +0 -123
  77. package/lib/cjs/update-iot-operations-fund-metadata.js.map +0 -1
  78. package/lib/cjs/update-lazy-distributor.js +0 -137
  79. package/lib/cjs/update-lazy-distributor.js.map +0 -1
  80. package/lib/cjs/update-lazy-transactions.js +0 -116
  81. package/lib/cjs/update-lazy-transactions.js.map +0 -1
  82. package/lib/cjs/update-mint-circuit-breaker.js +0 -131
  83. package/lib/cjs/update-mint-circuit-breaker.js.map +0 -1
  84. package/lib/cjs/update-registrar-authorities.js +0 -92
  85. package/lib/cjs/update-registrar-authorities.js.map +0 -1
  86. package/lib/cjs/update-rewardable-entity-config.js +0 -154
  87. package/lib/cjs/update-rewardable-entity-config.js.map +0 -1
  88. package/lib/cjs/update-subdao-vehnt.js +0 -294
  89. package/lib/cjs/update-subdao-vehnt.js.map +0 -1
  90. package/lib/cjs/update-subdao.js +0 -251
  91. package/lib/cjs/update-subdao.js.map +0 -1
  92. package/lib/cjs/upgrade-idl.js +0 -108
  93. package/lib/cjs/upgrade-idl.js.map +0 -1
  94. package/lib/cjs/utils.js +0 -457
  95. package/lib/cjs/utils.js.map +0 -1
  96. package/lib/esm/src/approve-carrier.js +0 -78
  97. package/lib/esm/src/approve-carrier.js.map +0 -1
  98. package/lib/esm/src/approve-program.js +0 -80
  99. package/lib/esm/src/approve-program.js.map +0 -1
  100. package/lib/esm/src/claim-rewards.js +0 -68
  101. package/lib/esm/src/claim-rewards.js.map +0 -1
  102. package/lib/esm/src/close-buffers.js +0 -90
  103. package/lib/esm/src/close-buffers.js.map +0 -1
  104. package/lib/esm/src/close-canopy.js +0 -63
  105. package/lib/esm/src/close-canopy.js.map +0 -1
  106. package/lib/esm/src/correct-router-dc.js +0 -108
  107. package/lib/esm/src/correct-router-dc.js.map +0 -1
  108. package/lib/esm/src/create-active-device-aggregator.js +0 -71
  109. package/lib/esm/src/create-active-device-aggregator.js.map +0 -1
  110. package/lib/esm/src/create-carrier.js +0 -161
  111. package/lib/esm/src/create-carrier.js.map +0 -1
  112. package/lib/esm/src/create-dao.js +0 -414
  113. package/lib/esm/src/create-dao.js.map +0 -1
  114. package/lib/esm/src/create-data-only-config.js +0 -131
  115. package/lib/esm/src/create-data-only-config.js.map +0 -1
  116. package/lib/esm/src/create-maker.js +0 -280
  117. package/lib/esm/src/create-maker.js.map +0 -1
  118. package/lib/esm/src/create-price-oracle.js +0 -86
  119. package/lib/esm/src/create-price-oracle.js.map +0 -1
  120. package/lib/esm/src/create-subdao.js +0 -486
  121. package/lib/esm/src/create-subdao.js.map +0 -1
  122. package/lib/esm/src/distribute-hst.js +0 -53
  123. package/lib/esm/src/distribute-hst.js.map +0 -1
  124. package/lib/esm/src/distribute-iot-operations-fund.js +0 -79
  125. package/lib/esm/src/distribute-iot-operations-fund.js.map +0 -1
  126. package/lib/esm/src/ecc-gen.js +0 -6
  127. package/lib/esm/src/ecc-gen.js.map +0 -1
  128. package/lib/esm/src/end-epoch.js +0 -103
  129. package/lib/esm/src/end-epoch.js.map +0 -1
  130. package/lib/esm/src/issue-iot-operations-fund.js +0 -81
  131. package/lib/esm/src/issue-iot-operations-fund.js.map +0 -1
  132. package/lib/esm/src/issue-test-hotspot.js +0 -70
  133. package/lib/esm/src/issue-test-hotspot.js.map +0 -1
  134. package/lib/esm/src/log-coingecko-price.js +0 -14
  135. package/lib/esm/src/log-coingecko-price.js.map +0 -1
  136. package/lib/esm/src/log-hotspot.js +0 -62
  137. package/lib/esm/src/log-hotspot.js.map +0 -1
  138. package/lib/esm/src/log-router-balance.js +0 -48
  139. package/lib/esm/src/log-router-balance.js.map +0 -1
  140. package/lib/esm/src/log-treasury-price.js +0 -64
  141. package/lib/esm/src/log-treasury-price.js.map +0 -1
  142. package/lib/esm/src/mint-dc.js +0 -70
  143. package/lib/esm/src/mint-dc.js.map +0 -1
  144. package/lib/esm/src/repair-iot-operations-fund.js +0 -72
  145. package/lib/esm/src/repair-iot-operations-fund.js.map +0 -1
  146. package/lib/esm/src/reset-clockwork.js +0 -102
  147. package/lib/esm/src/reset-clockwork.js.map +0 -1
  148. package/lib/esm/src/reset-vsr-max-voter-record.js +0 -103
  149. package/lib/esm/src/reset-vsr-max-voter-record.js.map +0 -1
  150. package/lib/esm/src/reset-vsr-voting-mint.js +0 -140
  151. package/lib/esm/src/reset-vsr-voting-mint.js.map +0 -1
  152. package/lib/esm/src/setup-hst.js +0 -217
  153. package/lib/esm/src/setup-hst.js.map +0 -1
  154. package/lib/esm/src/submit-price.js +0 -113
  155. package/lib/esm/src/submit-price.js.map +0 -1
  156. package/lib/esm/src/sum-tokens.js +0 -43
  157. package/lib/esm/src/sum-tokens.js.map +0 -1
  158. package/lib/esm/src/take-snapshot.js +0 -29
  159. package/lib/esm/src/take-snapshot.js.map +0 -1
  160. package/lib/esm/src/update-account-circuit-breaker.js +0 -88
  161. package/lib/esm/src/update-account-circuit-breaker.js.map +0 -1
  162. package/lib/esm/src/update-aggregator.js +0 -74
  163. package/lib/esm/src/update-aggregator.js.map +0 -1
  164. package/lib/esm/src/update-dao.js +0 -115
  165. package/lib/esm/src/update-dao.js.map +0 -1
  166. package/lib/esm/src/update-data-credits.js +0 -86
  167. package/lib/esm/src/update-data-credits.js.map +0 -1
  168. package/lib/esm/src/update-delegated-dc-subdao.js +0 -94
  169. package/lib/esm/src/update-delegated-dc-subdao.js.map +0 -1
  170. package/lib/esm/src/update-iot-operations-fund-metadata.js +0 -82
  171. package/lib/esm/src/update-iot-operations-fund-metadata.js.map +0 -1
  172. package/lib/esm/src/update-lazy-distributor.js +0 -96
  173. package/lib/esm/src/update-lazy-distributor.js.map +0 -1
  174. package/lib/esm/src/update-lazy-transactions.js +0 -75
  175. package/lib/esm/src/update-lazy-transactions.js.map +0 -1
  176. package/lib/esm/src/update-mint-circuit-breaker.js +0 -90
  177. package/lib/esm/src/update-mint-circuit-breaker.js.map +0 -1
  178. package/lib/esm/src/update-registrar-authorities.js +0 -51
  179. package/lib/esm/src/update-registrar-authorities.js.map +0 -1
  180. package/lib/esm/src/update-rewardable-entity-config.js +0 -113
  181. package/lib/esm/src/update-rewardable-entity-config.js.map +0 -1
  182. package/lib/esm/src/update-subdao-vehnt.js +0 -253
  183. package/lib/esm/src/update-subdao-vehnt.js.map +0 -1
  184. package/lib/esm/src/update-subdao.js +0 -210
  185. package/lib/esm/src/update-subdao.js.map +0 -1
  186. package/lib/esm/src/upgrade-idl.js +0 -67
  187. package/lib/esm/src/upgrade-idl.js.map +0 -1
  188. package/lib/esm/src/utils.js +0 -392
  189. package/lib/esm/src/utils.js.map +0 -1
  190. package/lib/esm/tsconfig.esm.tsbuildinfo +0 -1
  191. package/lib/types/src/approve-carrier.d.ts +0 -2
  192. package/lib/types/src/approve-carrier.d.ts.map +0 -1
  193. package/lib/types/src/approve-program.d.ts +0 -2
  194. package/lib/types/src/approve-program.d.ts.map +0 -1
  195. package/lib/types/src/claim-rewards.d.ts +0 -2
  196. package/lib/types/src/claim-rewards.d.ts.map +0 -1
  197. package/lib/types/src/close-buffers.d.ts +0 -2
  198. package/lib/types/src/close-buffers.d.ts.map +0 -1
  199. package/lib/types/src/close-canopy.d.ts +0 -2
  200. package/lib/types/src/close-canopy.d.ts.map +0 -1
  201. package/lib/types/src/correct-router-dc.d.ts +0 -2
  202. package/lib/types/src/correct-router-dc.d.ts.map +0 -1
  203. package/lib/types/src/create-active-device-aggregator.d.ts +0 -2
  204. package/lib/types/src/create-active-device-aggregator.d.ts.map +0 -1
  205. package/lib/types/src/create-carrier.d.ts +0 -2
  206. package/lib/types/src/create-carrier.d.ts.map +0 -1
  207. package/lib/types/src/create-dao.d.ts +0 -2
  208. package/lib/types/src/create-dao.d.ts.map +0 -1
  209. package/lib/types/src/create-data-only-config.d.ts +0 -2
  210. package/lib/types/src/create-data-only-config.d.ts.map +0 -1
  211. package/lib/types/src/create-maker.d.ts +0 -2
  212. package/lib/types/src/create-maker.d.ts.map +0 -1
  213. package/lib/types/src/create-price-oracle.d.ts +0 -2
  214. package/lib/types/src/create-price-oracle.d.ts.map +0 -1
  215. package/lib/types/src/create-subdao.d.ts +0 -2
  216. package/lib/types/src/create-subdao.d.ts.map +0 -1
  217. package/lib/types/src/distribute-hst.d.ts +0 -2
  218. package/lib/types/src/distribute-hst.d.ts.map +0 -1
  219. package/lib/types/src/distribute-iot-operations-fund.d.ts +0 -2
  220. package/lib/types/src/distribute-iot-operations-fund.d.ts.map +0 -1
  221. package/lib/types/src/ecc-gen.d.ts +0 -2
  222. package/lib/types/src/ecc-gen.d.ts.map +0 -1
  223. package/lib/types/src/end-epoch.d.ts +0 -2
  224. package/lib/types/src/end-epoch.d.ts.map +0 -1
  225. package/lib/types/src/issue-iot-operations-fund.d.ts +0 -2
  226. package/lib/types/src/issue-iot-operations-fund.d.ts.map +0 -1
  227. package/lib/types/src/issue-test-hotspot.d.ts +0 -2
  228. package/lib/types/src/issue-test-hotspot.d.ts.map +0 -1
  229. package/lib/types/src/log-coingecko-price.d.ts +0 -2
  230. package/lib/types/src/log-coingecko-price.d.ts.map +0 -1
  231. package/lib/types/src/log-hotspot.d.ts +0 -2
  232. package/lib/types/src/log-hotspot.d.ts.map +0 -1
  233. package/lib/types/src/log-router-balance.d.ts +0 -2
  234. package/lib/types/src/log-router-balance.d.ts.map +0 -1
  235. package/lib/types/src/log-treasury-price.d.ts +0 -2
  236. package/lib/types/src/log-treasury-price.d.ts.map +0 -1
  237. package/lib/types/src/mint-dc.d.ts +0 -2
  238. package/lib/types/src/mint-dc.d.ts.map +0 -1
  239. package/lib/types/src/repair-iot-operations-fund.d.ts +0 -2
  240. package/lib/types/src/repair-iot-operations-fund.d.ts.map +0 -1
  241. package/lib/types/src/reset-clockwork.d.ts +0 -2
  242. package/lib/types/src/reset-clockwork.d.ts.map +0 -1
  243. package/lib/types/src/reset-vsr-max-voter-record.d.ts +0 -2
  244. package/lib/types/src/reset-vsr-max-voter-record.d.ts.map +0 -1
  245. package/lib/types/src/reset-vsr-voting-mint.d.ts +0 -2
  246. package/lib/types/src/reset-vsr-voting-mint.d.ts.map +0 -1
  247. package/lib/types/src/setup-hst.d.ts +0 -4
  248. package/lib/types/src/setup-hst.d.ts.map +0 -1
  249. package/lib/types/src/submit-price.d.ts +0 -3
  250. package/lib/types/src/submit-price.d.ts.map +0 -1
  251. package/lib/types/src/sum-tokens.d.ts +0 -2
  252. package/lib/types/src/sum-tokens.d.ts.map +0 -1
  253. package/lib/types/src/take-snapshot.d.ts +0 -2
  254. package/lib/types/src/take-snapshot.d.ts.map +0 -1
  255. package/lib/types/src/update-account-circuit-breaker.d.ts +0 -2
  256. package/lib/types/src/update-account-circuit-breaker.d.ts.map +0 -1
  257. package/lib/types/src/update-aggregator.d.ts +0 -2
  258. package/lib/types/src/update-aggregator.d.ts.map +0 -1
  259. package/lib/types/src/update-dao.d.ts +0 -2
  260. package/lib/types/src/update-dao.d.ts.map +0 -1
  261. package/lib/types/src/update-data-credits.d.ts +0 -2
  262. package/lib/types/src/update-data-credits.d.ts.map +0 -1
  263. package/lib/types/src/update-delegated-dc-subdao.d.ts +0 -2
  264. package/lib/types/src/update-delegated-dc-subdao.d.ts.map +0 -1
  265. package/lib/types/src/update-iot-operations-fund-metadata.d.ts +0 -2
  266. package/lib/types/src/update-iot-operations-fund-metadata.d.ts.map +0 -1
  267. package/lib/types/src/update-lazy-distributor.d.ts +0 -2
  268. package/lib/types/src/update-lazy-distributor.d.ts.map +0 -1
  269. package/lib/types/src/update-lazy-transactions.d.ts +0 -2
  270. package/lib/types/src/update-lazy-transactions.d.ts.map +0 -1
  271. package/lib/types/src/update-mint-circuit-breaker.d.ts +0 -2
  272. package/lib/types/src/update-mint-circuit-breaker.d.ts.map +0 -1
  273. package/lib/types/src/update-registrar-authorities.d.ts +0 -2
  274. package/lib/types/src/update-registrar-authorities.d.ts.map +0 -1
  275. package/lib/types/src/update-rewardable-entity-config.d.ts +0 -2
  276. package/lib/types/src/update-rewardable-entity-config.d.ts.map +0 -1
  277. package/lib/types/src/update-subdao-vehnt.d.ts +0 -2
  278. package/lib/types/src/update-subdao-vehnt.d.ts.map +0 -1
  279. package/lib/types/src/update-subdao.d.ts +0 -2
  280. package/lib/types/src/update-subdao.d.ts.map +0 -1
  281. package/lib/types/src/upgrade-idl.d.ts +0 -2
  282. package/lib/types/src/upgrade-idl.d.ts.map +0 -1
  283. package/lib/types/src/utils.d.ts +0 -59
  284. package/lib/types/src/utils.d.ts.map +0 -1
@@ -1,80 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import { init as initHem, } from "@helium/helium-entity-manager-sdk";
3
- import { daoKey, init as initHsd } from "@helium/helium-sub-daos-sdk";
4
- import { PublicKey } from "@solana/web3.js";
5
- import Squads from "@sqds/sdk";
6
- import os from "os";
7
- import yargs from "yargs/yargs";
8
- import { sendInstructionsOrSquads } from "./utils";
9
- import { HNT_MINT } from "@helium/spl-utils";
10
- export async function run(args = process.argv) {
11
- const yarg = yargs(args).options({
12
- wallet: {
13
- alias: "k",
14
- describe: "Anchor wallet keypair",
15
- default: `${os.homedir()}/.config/solana/id.json`,
16
- },
17
- url: {
18
- alias: "u",
19
- default: "http://127.0.0.1:8899",
20
- describe: "The solana url",
21
- },
22
- hntMint: {
23
- type: "string",
24
- describe: "HNT mint of the dao to be updated",
25
- default: HNT_MINT.toBase58()
26
- },
27
- programId: {
28
- type: "string",
29
- describe: "Program ID to allow",
30
- required: true
31
- },
32
- executeTransaction: {
33
- type: "boolean",
34
- },
35
- multisig: {
36
- type: "string",
37
- describe: "Address of the squads multisig to be authority. If not provided, your wallet will be the authority",
38
- },
39
- authorityIndex: {
40
- type: "number",
41
- describe: "Authority index for squads. Defaults to 1",
42
- default: 1,
43
- },
44
- });
45
- const argv = await yarg.argv;
46
- process.env.ANCHOR_WALLET = argv.wallet;
47
- process.env.ANCHOR_PROVIDER_URL = argv.url;
48
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
49
- const provider = anchor.getProvider();
50
- const program = await initHem(provider);
51
- const hsdProgram = await initHsd(provider);
52
- const programId = new PublicKey(argv.programId);
53
- const instructions = [];
54
- const hntMint = new PublicKey(argv.hntMint);
55
- const dao = daoKey(hntMint)[0];
56
- const authority = (await hsdProgram.account.daoV0.fetch(dao)).authority;
57
- instructions.push(await program.methods
58
- .approveProgramV0({
59
- programId
60
- })
61
- .accounts({
62
- dao,
63
- authority,
64
- payer: authority
65
- })
66
- .instruction());
67
- const squads = Squads.endpoint(process.env.ANCHOR_PROVIDER_URL, provider.wallet, {
68
- commitmentOrConfig: "finalized",
69
- });
70
- await sendInstructionsOrSquads({
71
- provider,
72
- instructions,
73
- executeTransaction: argv.executeTransaction,
74
- squads,
75
- multisig: argv.multisig ? new PublicKey(argv.multisig) : undefined,
76
- authorityIndex: argv.authorityIndex,
77
- signers: [],
78
- });
79
- }
80
- //# sourceMappingURL=approve-program.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"approve-program.js","sourceRoot":"","sources":["../../../src/approve-program.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACL,IAAI,IAAI,OAAO,GAChB,MAAM,mCAAmC,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,IAAI,IAAI,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtE,OAAO,EAAE,SAAS,EAA0B,MAAM,iBAAiB,CAAC;AACpE,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAY,OAAO,CAAC,IAAI;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE;YACN,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,uBAAuB;YACjC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,yBAAyB;SAClD;QACD,GAAG,EAAE;YACH,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,uBAAuB;YAChC,QAAQ,EAAE,gBAAgB;SAC3B;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,mCAAmC;YAC7C,OAAO,EAAE,QAAQ,CAAC,QAAQ,EAAE;SAC7B;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,qBAAqB;YAC/B,QAAQ,EAAE,IAAI;SACf;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;SAChB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EACN,oGAAoG;SACvG;QACD,cAAc,EAAE;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,2CAA2C;YACrD,OAAO,EAAE,CAAC;SACX;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC;IAC3C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAA2B,CAAC;IAC/D,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IAE/C,MAAM,YAAY,GAA6B,EAAE,CAAC;IAElD,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC5C,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,MAAM,SAAS,GAAG,CAAC,MAAM,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;IAExE,YAAY,CAAC,IAAI,CACf,MAAM,OAAO,CAAC,OAAO;SACpB,gBAAgB,CAAC;QAChB,SAAS;KACV,CAAC;SACD,QAAQ,CAAC;QACR,GAAG;QACH,SAAS;QACT,KAAK,EAAE,SAAS;KACjB,CAAC;SACD,WAAW,EAAE,CACf,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAC5B,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAC/B,QAAQ,CAAC,MAAM,EACf;QACE,kBAAkB,EAAE,WAAW;KAChC,CACF,CAAC;IAEF,MAAM,wBAAwB,CAAC;QAC7B,QAAQ;QACR,YAAY;QACZ,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC3C,MAAM;QACN,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAClE,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,OAAO,EAAE,EAAE;KACZ,CAAC,CAAC;AACL,CAAC"}
@@ -1,68 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import * as client from "@helium/distributor-oracle";
3
- import { init as initHem, keyToAssetKey } from "@helium/helium-entity-manager-sdk";
4
- import { daoKey } from "@helium/helium-sub-daos-sdk";
5
- import { init as initLazy, lazyDistributorKey } from "@helium/lazy-distributor-sdk";
6
- import { init as initRewards, } from "@helium/rewards-oracle-sdk";
7
- import { HNT_MINT, sendAndConfirmWithRetry } from "@helium/spl-utils";
8
- import { PublicKey } from "@solana/web3.js";
9
- import os from "os";
10
- import yargs from "yargs/yargs";
11
- export async function run(args = process.argv) {
12
- const argv = await yargs(args).options({
13
- wallet: {
14
- alias: "k",
15
- describe: "Anchor wallet keypair",
16
- default: `${os.homedir()}/.config/solana/id.json`,
17
- },
18
- url: {
19
- alias: "u",
20
- default: "http://127.0.0.1:8899",
21
- describe: "The solana url",
22
- },
23
- mint: {
24
- type: "string",
25
- describe: "Pubkey of the rewards mint",
26
- },
27
- assetId: {
28
- type: "string",
29
- describe: "The asset id to claim rewards for",
30
- },
31
- entityKey: {
32
- type: "string",
33
- describe: "The entity key to claim rewards for",
34
- },
35
- hntMint: {
36
- type: "string",
37
- default: HNT_MINT,
38
- },
39
- }).argv;
40
- process.env.ANCHOR_WALLET = argv.wallet;
41
- process.env.ANCHOR_PROVIDER_URL = argv.url;
42
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
43
- const provider = anchor.getProvider();
44
- const lazyProgram = await initLazy(provider);
45
- const hemProgram = await initHem(provider);
46
- const rewardsOracleProgram = await initRewards(provider);
47
- const mint = new PublicKey(argv.mint);
48
- const dao = daoKey(new PublicKey(argv.hntMint))[0];
49
- const lazyDistributor = lazyDistributorKey(mint)[0];
50
- let assetId = argv.assetId ? new PublicKey(argv.assetId) : undefined;
51
- if (!assetId) {
52
- const entityKey = argv.entityKey;
53
- const keyToAsset = keyToAssetKey(dao, entityKey)[0];
54
- assetId = (await hemProgram.account.keyToAssetV0.fetch(keyToAsset)).asset;
55
- }
56
- const rewards = await client.getCurrentRewards(lazyProgram, lazyDistributor, assetId);
57
- const tx = await client.formTransaction({
58
- program: lazyProgram,
59
- rewardsOracleProgram: rewardsOracleProgram,
60
- provider,
61
- rewards,
62
- asset: assetId,
63
- lazyDistributor,
64
- });
65
- const signed = await provider.wallet.signTransaction(tx);
66
- await sendAndConfirmWithRetry(provider.connection, signed.serialize(), { skipPreflight: true }, "confirmed");
67
- }
68
- //# sourceMappingURL=claim-rewards.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claim-rewards.js","sourceRoot":"","sources":["../../../src/claim-rewards.ts"],"names":[],"mappings":"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"}
@@ -1,90 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import { PublicKey } from "@solana/web3.js";
3
- import Squads from "@sqds/sdk";
4
- import os from "os";
5
- import yargs from "yargs/yargs";
6
- import { createCloseBufferInstruction, sendInstructionsOrSquads } from "./utils";
7
- import { BPF_UPGRADE_LOADER_ID } from "@solana/spl-governance";
8
- import bs58 from "bs58";
9
- export async function run(args = process.argv) {
10
- const yarg = yargs(args).options({
11
- wallet: {
12
- alias: "k",
13
- describe: "Anchor wallet keypair",
14
- default: `${os.homedir()}/.config/solana/id.json`,
15
- },
16
- url: {
17
- alias: "u",
18
- default: "http://127.0.0.1:8899",
19
- describe: "The solana url",
20
- },
21
- executeTransaction: {
22
- type: "boolean",
23
- },
24
- multisig: {
25
- type: "string",
26
- describe: "Address of the squads multisig to be authority. If not provided, your wallet will be the authority",
27
- },
28
- authorityIndex: {
29
- type: "number",
30
- describe: "Authority index for squads. Defaults to 1",
31
- default: 1,
32
- },
33
- programId: {
34
- type: "string",
35
- required: true,
36
- }
37
- });
38
- const argv = await yarg.argv;
39
- process.env.ANCHOR_WALLET = argv.wallet;
40
- process.env.ANCHOR_PROVIDER_URL = argv.url;
41
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
42
- const provider = anchor.getProvider();
43
- const connection = provider.connection;
44
- const squads = Squads.endpoint(process.env.ANCHOR_PROVIDER_URL, provider.wallet, {
45
- commitmentOrConfig: "finalized",
46
- });
47
- let authority = provider.wallet.publicKey;
48
- let multisig = argv.multisig ? new PublicKey(argv.multisig) : null;
49
- if (multisig) {
50
- authority = squads.getAuthorityPDA(multisig, argv.authorityIndex);
51
- }
52
- console.log(authority.toBase58());
53
- const buffers = (await connection.getProgramAccounts(BPF_UPGRADE_LOADER_ID, {
54
- dataSlice: {
55
- length: 0,
56
- offset: 0,
57
- },
58
- filters: [
59
- {
60
- memcmp: {
61
- offset: 0,
62
- bytes: bs58.encode(Buffer.from(new Uint8Array([1, 0, 0, 0]))),
63
- },
64
- },
65
- {
66
- memcmp: {
67
- offset: 4,
68
- bytes: bs58.encode(Buffer.from(new Uint8Array([1]))),
69
- },
70
- },
71
- {
72
- memcmp: {
73
- offset: 5,
74
- bytes: bs58.encode(new PublicKey(authority).toBuffer()),
75
- },
76
- },
77
- ],
78
- })).map((b) => b.pubkey);
79
- const instructions = await Promise.all(buffers.map((b) => createCloseBufferInstruction(new PublicKey(argv.programId), b, authority, provider.wallet.publicKey)));
80
- await sendInstructionsOrSquads({
81
- provider,
82
- instructions,
83
- executeTransaction: argv.executeTransaction,
84
- squads,
85
- multisig: argv.multisig ? new PublicKey(argv.multisig) : undefined,
86
- authorityIndex: argv.authorityIndex,
87
- signers: [],
88
- });
89
- }
90
- //# sourceMappingURL=close-buffers.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"close-buffers.js","sourceRoot":"","sources":["../../../src/close-buffers.ts"],"names":[],"mappings":"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"}
@@ -1,63 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import { PublicKey } from "@solana/web3.js";
3
- import Squads from "@sqds/sdk";
4
- import os from "os";
5
- import yargs from "yargs/yargs";
6
- import { sendInstructionsOrSquads } from "./utils";
7
- import { init, lazyTransactionsKey } from "@helium/lazy-transactions-sdk";
8
- export async function run(args = process.argv) {
9
- const yarg = yargs(args).options({
10
- wallet: {
11
- alias: "k",
12
- describe: "Anchor wallet keypair",
13
- default: `${os.homedir()}/.config/solana/id.json`,
14
- },
15
- url: {
16
- alias: "u",
17
- default: "http://127.0.0.1:8899",
18
- describe: "The solana url",
19
- },
20
- name: {
21
- required: true,
22
- type: "string",
23
- describe: "Lazy dist name",
24
- },
25
- executeTransaction: {
26
- type: "boolean",
27
- },
28
- multisig: {
29
- type: "string",
30
- describe: "Address of the squads multisig to be authority. If not provided, your wallet will be the authority",
31
- },
32
- authorityIndex: {
33
- type: "number",
34
- describe: "Authority index for squads. Defaults to 1",
35
- default: 1,
36
- },
37
- });
38
- const argv = await yarg.argv;
39
- process.env.ANCHOR_WALLET = argv.wallet;
40
- process.env.ANCHOR_PROVIDER_URL = argv.url;
41
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
42
- const provider = anchor.getProvider();
43
- const program = await init(provider);
44
- const instructions = [];
45
- const lazyTransactions = lazyTransactionsKey(argv.name)[0];
46
- instructions.push(await program.methods.closeCanopyV0().accounts({
47
- lazyTransactions,
48
- refund: provider.wallet.publicKey
49
- }).instruction());
50
- const squads = Squads.endpoint(process.env.ANCHOR_PROVIDER_URL, provider.wallet, {
51
- commitmentOrConfig: "finalized",
52
- });
53
- await sendInstructionsOrSquads({
54
- provider,
55
- instructions,
56
- executeTransaction: argv.executeTransaction,
57
- squads,
58
- multisig: argv.multisig ? new PublicKey(argv.multisig) : undefined,
59
- authorityIndex: argv.authorityIndex,
60
- signers: [],
61
- });
62
- }
63
- //# sourceMappingURL=close-canopy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"close-canopy.js","sourceRoot":"","sources":["../../../src/close-canopy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAE5C,OAAO,EAAE,SAAS,EAA0B,MAAM,iBAAiB,CAAC;AACpE,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAA0B,wBAAwB,EAAE,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAY,OAAO,CAAC,IAAI;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE;YACN,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,uBAAuB;YACjC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,yBAAyB;SAClD;QACD,GAAG,EAAE;YACH,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,uBAAuB;YAChC,QAAQ,EAAE,gBAAgB;SAC3B;QACD,IAAI,EAAE;YACJ,QAAQ,EAAE,IAAI;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,gBAAgB;SAC3B;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;SAChB;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAQ;YACd,QAAQ,EACN,oGAAoG;SACvG;QACD,cAAc,EAAE;YACd,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,2CAA2C;YACrD,OAAO,EAAE,CAAC;SACX;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC;IAC3C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAA2B,CAAC;IAC/D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC;IAErC,MAAM,YAAY,GAA6B,EAAE,CAAC;IAElD,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3D,YAAY,CAAC,IAAI,CACf,MAAM,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,QAAQ,CAAC;QAC7C,gBAAgB;QAChB,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;KAClC,CAAC,CAAC,WAAW,EAAE,CACjB,CAAA;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAC5B,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAC/B,QAAQ,CAAC,MAAM,EACf;QACE,kBAAkB,EAAE,WAAW;KAChC,CACF,CAAC;IACF,MAAM,wBAAwB,CAAC;QAC7B,QAAQ;QACR,YAAY;QACZ,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC3C,MAAM;QACN,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;QAClE,cAAc,EAAE,IAAI,CAAC,cAAc;QACnC,OAAO,EAAE,EAAE;KACZ,CAAC,CAAC;AACL,CAAC"}
@@ -1,108 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import Address from "@helium/address";
3
- import { ED25519_KEY_TYPE } from "@helium/address/build/KeyTypes";
4
- import { delegatedDataCreditsKey, escrowAccountKey, init as initDataCredits, } from "@helium/data-credits-sdk";
5
- import { subDaoKey } from "@helium/helium-sub-daos-sdk";
6
- import { DC_MINT, IOT_MINT } from "@helium/spl-utils";
7
- import { getAccount, } from "@solana/spl-token";
8
- import { PublicKey } from "@solana/web3.js";
9
- import fs from "fs";
10
- import os from "os";
11
- import yargs from "yargs/yargs";
12
- export async function run(args = process.argv) {
13
- const yarg = yargs(args).options({
14
- wallet: {
15
- alias: "k",
16
- describe: "Anchor wallet keypair",
17
- default: `${os.homedir()}/.config/solana/id.json`,
18
- },
19
- url: {
20
- alias: "u",
21
- default: "http://127.0.0.1:8899",
22
- describe: "The solana url",
23
- },
24
- state: {
25
- type: "string",
26
- alias: "s",
27
- default: "./export.json",
28
- },
29
- });
30
- const argv = await yarg.argv;
31
- process.env.ANCHOR_WALLET = argv.wallet;
32
- process.env.ANCHOR_PROVIDER_URL = argv.url;
33
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
34
- const provider = anchor.getProvider();
35
- const program = await initDataCredits(provider);
36
- let state = JSON.parse(fs.readFileSync(argv.state).toString());
37
- const routers = Object.entries(state.routers);
38
- const [subdao] = subDaoKey(IOT_MINT);
39
- for (const [routerKey, { owner }] of routers) {
40
- const [delegatedDataCreditsK] = delegatedDataCreditsKey(subdao, routerKey);
41
- const [escrowKey] = escrowAccountKey(delegatedDataCreditsK);
42
- let amount = BigInt(0);
43
- try {
44
- amount = (await getAccount(provider.connection, escrowKey)).amount;
45
- }
46
- catch (e) {
47
- if (!e.toString().includes("TokenAccountNotFoundError")) {
48
- throw e;
49
- }
50
- }
51
- const ownerBalance = new anchor.BN(amount.toString());
52
- const ownerIsRouter = owner === routerKey;
53
- if (!ownerIsRouter) {
54
- console.log(`Router: ${routerKey}`);
55
- const account = state.accounts[routerKey];
56
- if (account) {
57
- const actualRouterBalance = new anchor.BN(account.dc);
58
- const toSend = actualRouterBalance.sub(ownerBalance);
59
- console.log(` Balance is ${ownerBalance}, balance should be ${actualRouterBalance}, difference is ${toSend}`);
60
- if (actualRouterBalance.gt(ownerBalance)) {
61
- console.log(` Delegating ${toSend}`);
62
- const sig = await program.methods
63
- .delegateDataCreditsV0({
64
- amount: toSend,
65
- routerKey,
66
- })
67
- .accounts({
68
- subDao: subdao,
69
- dcMint: DC_MINT,
70
- })
71
- .rpc({ skipPreflight: true });
72
- console.log(sig);
73
- }
74
- // If the router has more than it should have gotten,
75
- // deduct that from the users data credit balance.
76
- let negativeBalance = new anchor.BN(0);
77
- if (toSend.lt(new anchor.BN(0))) {
78
- negativeBalance = toSend.mul(new anchor.BN(-1));
79
- }
80
- const toRefund = ownerBalance.sub(negativeBalance);
81
- const ownerSolAddr = toSolana(owner);
82
- if (ownerSolAddr) {
83
- console.log(` Refunding ${toRefund}`);
84
- const sig = await program.methods
85
- .issueDataCreditsV0({
86
- amount: toRefund,
87
- })
88
- .accounts({
89
- dcMint: DC_MINT,
90
- to: ownerSolAddr,
91
- });
92
- console.log(sig);
93
- }
94
- }
95
- }
96
- }
97
- }
98
- function toSolana(address) {
99
- try {
100
- const addr = Address.fromB58(address);
101
- if (addr.keyType === ED25519_KEY_TYPE)
102
- return new PublicKey(addr.publicKey);
103
- }
104
- catch (e) {
105
- return undefined;
106
- }
107
- }
108
- //# sourceMappingURL=correct-router-dc.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"correct-router-dc.js","sourceRoot":"","sources":["../../../src/correct-router-dc.ts"],"names":[],"mappings":"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"}
@@ -1,71 +0,0 @@
1
- import * as anchor from "@coral-xyz/anchor";
2
- import { PublicKey } from "@solana/web3.js";
3
- import os from "os";
4
- import yargs from "yargs/yargs";
5
- import { createSwitchboardAggregator } from "./utils";
6
- import { loadKeypair } from "./utils";
7
- export async function run(args = process.argv) {
8
- const yarg = yargs(args).options({
9
- wallet: {
10
- alias: "k",
11
- describe: "Anchor wallet keypair",
12
- default: `${os.homedir()}/.config/solana/id.json`,
13
- },
14
- url: {
15
- alias: "u",
16
- default: "http://127.0.0.1:8899",
17
- describe: "The solana url",
18
- },
19
- executeTransaction: {
20
- type: "boolean",
21
- },
22
- aggregatorKeypair: {
23
- type: "string",
24
- describe: "Keypair of the aggregtor",
25
- },
26
- activeDeviceOracleUrl: {
27
- alias: "ao",
28
- type: "string",
29
- describe: "The active device oracle URL",
30
- default: "http://localhost:8081",
31
- },
32
- queue: {
33
- type: "string",
34
- describe: "Switchbaord oracle queue",
35
- default: "uPeRMdfPmrPqgRWSrjAnAkH78RqAhe5kXoW6vBYRqFX",
36
- },
37
- crank: {
38
- type: "string",
39
- describe: "Switchboard crank",
40
- default: "UcrnK4w2HXCEjY8z6TcQ9tysYr3c9VcFLdYAU9YQP5e",
41
- },
42
- switchboardNetwork: {
43
- type: "string",
44
- describe: "The switchboard network",
45
- default: "devnet",
46
- },
47
- authority: {
48
- type: "string",
49
- },
50
- });
51
- const argv = await yarg.argv;
52
- console.log(argv.url);
53
- process.env.ANCHOR_WALLET = argv.wallet;
54
- process.env.ANCHOR_PROVIDER_URL = argv.url;
55
- anchor.setProvider(anchor.AnchorProvider.local(argv.url));
56
- const provider = anchor.getProvider();
57
- const wallet = loadKeypair(argv.wallet);
58
- const aggKeypair = await loadKeypair(argv.aggregatorKeypair);
59
- console.log("Initializing switchboard oracle");
60
- await createSwitchboardAggregator({
61
- crank: new PublicKey(argv.crank),
62
- queue: new PublicKey(argv.queue),
63
- wallet,
64
- provider,
65
- aggKeypair,
66
- url: argv.activeDeviceOracleUrl,
67
- switchboardNetwork: argv.switchboardNetwork,
68
- authority: argv.authority ? new PublicKey(argv.authority) : wallet.publicKey,
69
- });
70
- }
71
- //# sourceMappingURL=create-active-device-aggregator.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"create-active-device-aggregator.js","sourceRoot":"","sources":["../../../src/create-active-device-aggregator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,aAAa,CAAC;AAChC,OAAO,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAEtC,MAAM,CAAC,KAAK,UAAU,GAAG,CAAC,OAAY,OAAO,CAAC,IAAI;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC;QAC/B,MAAM,EAAE;YACN,KAAK,EAAE,GAAG;YACV,QAAQ,EAAE,uBAAuB;YACjC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,yBAAyB;SAClD;QACD,GAAG,EAAE;YACH,KAAK,EAAE,GAAG;YACV,OAAO,EAAE,uBAAuB;YAChC,QAAQ,EAAE,gBAAgB;SAC3B;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,SAAS;SAChB;QACD,iBAAiB,EAAE;YACjB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,0BAA0B;SACrC;QACD,qBAAqB,EAAE;YACrB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,8BAA8B;YACxC,OAAO,EAAE,uBAAuB;SACjC;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,0BAA0B;YACpC,OAAO,EAAE,6CAA6C;SACvD;QACD,KAAK,EAAE;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,mBAAmB;YAC7B,OAAO,EAAE,6CAA6C;SACvD;QACD,kBAAkB,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,yBAAyB;YACnC,OAAO,EAAE,QAAQ;SAClB;QACD,SAAS,EAAE;YACT,IAAI,EAAE,QAAQ;SACf;KACF,CAAC,CAAC;IACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC;IAC7B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,mBAAmB,GAAG,IAAI,CAAC,GAAG,CAAC;IAC3C,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1D,MAAM,QAAQ,GAAG,MAAM,CAAC,WAAW,EAA2B,CAAC;IAE/D,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,MAAM,UAAU,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC,iBAAkB,CAAC,CAAC;IAE9D,OAAO,CAAC,GAAG,CAAC,iCAAiC,CAAC,CAAC;IAC/C,MAAM,2BAA2B,CAAC;QAChC,KAAK,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,KAAK,EAAE,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,MAAM;QACN,QAAQ;QACR,UAAU;QACV,GAAG,EAAE,IAAI,CAAC,qBAAqB;QAC/B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;QAC3C,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS;KAC7E,CAAC,CAAC;AACL,CAAC"}