@helium/helium-admin-cli 0.11.4 → 0.11.6

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 (271) hide show
  1. package/lib/cjs/add-squads-proposer.js +107 -0
  2. package/lib/cjs/add-squads-proposer.js.map +1 -0
  3. package/lib/cjs/approve-carrier.js +1 -16
  4. package/lib/cjs/approve-carrier.js.map +1 -1
  5. package/lib/cjs/approve-maker.js +1 -16
  6. package/lib/cjs/approve-maker.js.map +1 -1
  7. package/lib/cjs/approve-program.js +1 -16
  8. package/lib/cjs/approve-program.js.map +1 -1
  9. package/lib/cjs/close-buffers.js +10 -20
  10. package/lib/cjs/close-buffers.js.map +1 -1
  11. package/lib/cjs/close-canopy.js +1 -16
  12. package/lib/cjs/close-canopy.js.map +1 -1
  13. package/lib/cjs/close-legacy-auto-topoff.js +124 -0
  14. package/lib/cjs/close-legacy-auto-topoff.js.map +1 -0
  15. package/lib/cjs/create-and-approve-makers.js +11 -21
  16. package/lib/cjs/create-and-approve-makers.js.map +1 -1
  17. package/lib/cjs/create-boost-config.js +1 -13
  18. package/lib/cjs/create-boost-config.js.map +1 -1
  19. package/lib/cjs/create-common-lut.js +10 -17
  20. package/lib/cjs/create-common-lut.js.map +1 -1
  21. package/lib/cjs/create-dao.js +12 -22
  22. package/lib/cjs/create-dao.js.map +1 -1
  23. package/lib/cjs/create-data-only-config.js +10 -17
  24. package/lib/cjs/create-data-only-config.js.map +1 -1
  25. package/lib/cjs/create-price-oracle.js +8 -7
  26. package/lib/cjs/create-price-oracle.js.map +1 -1
  27. package/lib/cjs/create-subdao.js +14 -22
  28. package/lib/cjs/create-subdao.js.map +1 -1
  29. package/lib/cjs/create-tuktuk-dca-lut.js +128 -0
  30. package/lib/cjs/create-tuktuk-dca-lut.js.map +1 -0
  31. package/lib/cjs/execute-vault-transaction.js +91 -0
  32. package/lib/cjs/execute-vault-transaction.js.map +1 -0
  33. package/lib/cjs/extend-common-lut.js +10 -16
  34. package/lib/cjs/extend-common-lut.js.map +1 -1
  35. package/lib/cjs/initialize-tuktuk-dca.js +237 -0
  36. package/lib/cjs/initialize-tuktuk-dca.js.map +1 -0
  37. package/lib/cjs/issue-iot-operations-fund.js +1 -16
  38. package/lib/cjs/issue-iot-operations-fund.js.map +1 -1
  39. package/lib/cjs/reset-vsr-voting-mint.js +1 -16
  40. package/lib/cjs/reset-vsr-voting-mint.js.map +1 -1
  41. package/lib/cjs/revoke-maker.js +1 -16
  42. package/lib/cjs/revoke-maker.js.map +1 -1
  43. package/lib/cjs/set-dc-onboarding-fees-paid-epoch-info.js +1 -16
  44. package/lib/cjs/set-dc-onboarding-fees-paid-epoch-info.js.map +1 -1
  45. package/lib/cjs/set-dc-onboarding-fees-paid.js +1 -16
  46. package/lib/cjs/set-dc-onboarding-fees-paid.js.map +1 -1
  47. package/lib/cjs/set-proxy-config.js +10 -17
  48. package/lib/cjs/set-proxy-config.js.map +1 -1
  49. package/lib/cjs/setup-dc-auto-topoff.js +183 -38
  50. package/lib/cjs/setup-dc-auto-topoff.js.map +1 -1
  51. package/lib/cjs/setup-hst.js +8 -7
  52. package/lib/cjs/setup-hst.js.map +1 -1
  53. package/lib/cjs/squads-batch-optimizer.js +156 -0
  54. package/lib/cjs/squads-batch-optimizer.js.map +1 -0
  55. package/lib/cjs/swap-carrier-stake.js +1 -16
  56. package/lib/cjs/swap-carrier-stake.js.map +1 -1
  57. package/lib/cjs/swap-maker-stake.js +1 -16
  58. package/lib/cjs/swap-maker-stake.js.map +1 -1
  59. package/lib/cjs/switch-mobile-ops-fund.js +1 -13
  60. package/lib/cjs/switch-mobile-ops-fund.js.map +1 -1
  61. package/lib/cjs/transfer-program-authorities.js +98 -0
  62. package/lib/cjs/transfer-program-authorities.js.map +1 -0
  63. package/lib/cjs/update-account-circuit-breaker.js +1 -16
  64. package/lib/cjs/update-account-circuit-breaker.js.map +1 -1
  65. package/lib/cjs/update-boost-config.js +1 -16
  66. package/lib/cjs/update-boost-config.js.map +1 -1
  67. package/lib/cjs/update-carrier.js +1 -16
  68. package/lib/cjs/update-carrier.js.map +1 -1
  69. package/lib/cjs/update-dao.js +1 -16
  70. package/lib/cjs/update-dao.js.map +1 -1
  71. package/lib/cjs/update-data-credits.js +1 -16
  72. package/lib/cjs/update-data-credits.js.map +1 -1
  73. package/lib/cjs/update-delegated-dc-subdao.js +1 -16
  74. package/lib/cjs/update-delegated-dc-subdao.js.map +1 -1
  75. package/lib/cjs/update-lazy-distributor.js +1 -16
  76. package/lib/cjs/update-lazy-distributor.js.map +1 -1
  77. package/lib/cjs/update-lazy-transactions.js +1 -16
  78. package/lib/cjs/update-lazy-transactions.js.map +1 -1
  79. package/lib/cjs/update-maker.js +1 -16
  80. package/lib/cjs/update-maker.js.map +1 -1
  81. package/lib/cjs/update-mint-circuit-breaker.js +1 -16
  82. package/lib/cjs/update-mint-circuit-breaker.js.map +1 -1
  83. package/lib/cjs/update-organization.js +101 -0
  84. package/lib/cjs/update-organization.js.map +1 -0
  85. package/lib/cjs/update-price-oracle.js +1 -16
  86. package/lib/cjs/update-price-oracle.js.map +1 -1
  87. package/lib/cjs/update-proxy-config.js +1 -16
  88. package/lib/cjs/update-proxy-config.js.map +1 -1
  89. package/lib/cjs/update-registrar-authorities.js +6 -8
  90. package/lib/cjs/update-registrar-authorities.js.map +1 -1
  91. package/lib/cjs/update-rewardable-entity-config.js +5 -17
  92. package/lib/cjs/update-rewardable-entity-config.js.map +1 -1
  93. package/lib/cjs/update-subdao-vehnt.js +1 -16
  94. package/lib/cjs/update-subdao-vehnt.js.map +1 -1
  95. package/lib/cjs/update-subdao.js +2 -42
  96. package/lib/cjs/update-subdao.js.map +1 -1
  97. package/lib/cjs/update-token-metadata.js +17 -24
  98. package/lib/cjs/update-token-metadata.js.map +1 -1
  99. package/lib/cjs/upgrade-idl.js +10 -20
  100. package/lib/cjs/upgrade-idl.js.map +1 -1
  101. package/lib/cjs/upsert-incentive-program.js +1 -8
  102. package/lib/cjs/upsert-incentive-program.js.map +1 -1
  103. package/lib/cjs/utils.js +140 -2
  104. package/lib/cjs/utils.js.map +1 -1
  105. package/lib/esm/src/add-squads-proposer.js +66 -0
  106. package/lib/esm/src/add-squads-proposer.js.map +1 -0
  107. package/lib/esm/src/approve-carrier.js +2 -17
  108. package/lib/esm/src/approve-carrier.js.map +1 -1
  109. package/lib/esm/src/approve-maker.js +2 -17
  110. package/lib/esm/src/approve-maker.js.map +1 -1
  111. package/lib/esm/src/approve-program.js +2 -17
  112. package/lib/esm/src/approve-program.js.map +1 -1
  113. package/lib/esm/src/close-buffers.js +11 -21
  114. package/lib/esm/src/close-buffers.js.map +1 -1
  115. package/lib/esm/src/close-canopy.js +2 -17
  116. package/lib/esm/src/close-canopy.js.map +1 -1
  117. package/lib/esm/src/close-legacy-auto-topoff.js +83 -0
  118. package/lib/esm/src/close-legacy-auto-topoff.js.map +1 -0
  119. package/lib/esm/src/create-and-approve-makers.js +12 -22
  120. package/lib/esm/src/create-and-approve-makers.js.map +1 -1
  121. package/lib/esm/src/create-boost-config.js +2 -14
  122. package/lib/esm/src/create-boost-config.js.map +1 -1
  123. package/lib/esm/src/create-common-lut.js +11 -18
  124. package/lib/esm/src/create-common-lut.js.map +1 -1
  125. package/lib/esm/src/create-dao.js +13 -23
  126. package/lib/esm/src/create-dao.js.map +1 -1
  127. package/lib/esm/src/create-data-only-config.js +11 -18
  128. package/lib/esm/src/create-data-only-config.js.map +1 -1
  129. package/lib/esm/src/create-price-oracle.js +8 -7
  130. package/lib/esm/src/create-price-oracle.js.map +1 -1
  131. package/lib/esm/src/create-subdao.js +15 -23
  132. package/lib/esm/src/create-subdao.js.map +1 -1
  133. package/lib/esm/src/create-tuktuk-dca-lut.js +87 -0
  134. package/lib/esm/src/create-tuktuk-dca-lut.js.map +1 -0
  135. package/lib/esm/src/execute-vault-transaction.js +50 -0
  136. package/lib/esm/src/execute-vault-transaction.js.map +1 -0
  137. package/lib/esm/src/extend-common-lut.js +11 -17
  138. package/lib/esm/src/extend-common-lut.js.map +1 -1
  139. package/lib/esm/src/initialize-tuktuk-dca.js +196 -0
  140. package/lib/esm/src/initialize-tuktuk-dca.js.map +1 -0
  141. package/lib/esm/src/issue-iot-operations-fund.js +2 -17
  142. package/lib/esm/src/issue-iot-operations-fund.js.map +1 -1
  143. package/lib/esm/src/reset-vsr-voting-mint.js +2 -17
  144. package/lib/esm/src/reset-vsr-voting-mint.js.map +1 -1
  145. package/lib/esm/src/revoke-maker.js +2 -17
  146. package/lib/esm/src/revoke-maker.js.map +1 -1
  147. package/lib/esm/src/set-dc-onboarding-fees-paid-epoch-info.js +2 -17
  148. package/lib/esm/src/set-dc-onboarding-fees-paid-epoch-info.js.map +1 -1
  149. package/lib/esm/src/set-dc-onboarding-fees-paid.js +2 -17
  150. package/lib/esm/src/set-dc-onboarding-fees-paid.js.map +1 -1
  151. package/lib/esm/src/set-proxy-config.js +11 -18
  152. package/lib/esm/src/set-proxy-config.js.map +1 -1
  153. package/lib/esm/src/setup-dc-auto-topoff.js +185 -41
  154. package/lib/esm/src/setup-dc-auto-topoff.js.map +1 -1
  155. package/lib/esm/src/setup-hst.js +8 -7
  156. package/lib/esm/src/setup-hst.js.map +1 -1
  157. package/lib/esm/src/squads-batch-optimizer.js +128 -0
  158. package/lib/esm/src/squads-batch-optimizer.js.map +1 -0
  159. package/lib/esm/src/swap-carrier-stake.js +2 -17
  160. package/lib/esm/src/swap-carrier-stake.js.map +1 -1
  161. package/lib/esm/src/swap-maker-stake.js +2 -17
  162. package/lib/esm/src/swap-maker-stake.js.map +1 -1
  163. package/lib/esm/src/switch-mobile-ops-fund.js +2 -14
  164. package/lib/esm/src/switch-mobile-ops-fund.js.map +1 -1
  165. package/lib/esm/src/transfer-program-authorities.js +57 -0
  166. package/lib/esm/src/transfer-program-authorities.js.map +1 -0
  167. package/lib/esm/src/update-account-circuit-breaker.js +2 -17
  168. package/lib/esm/src/update-account-circuit-breaker.js.map +1 -1
  169. package/lib/esm/src/update-boost-config.js +2 -17
  170. package/lib/esm/src/update-boost-config.js.map +1 -1
  171. package/lib/esm/src/update-carrier.js +2 -17
  172. package/lib/esm/src/update-carrier.js.map +1 -1
  173. package/lib/esm/src/update-dao.js +2 -17
  174. package/lib/esm/src/update-dao.js.map +1 -1
  175. package/lib/esm/src/update-data-credits.js +2 -17
  176. package/lib/esm/src/update-data-credits.js.map +1 -1
  177. package/lib/esm/src/update-delegated-dc-subdao.js +2 -17
  178. package/lib/esm/src/update-delegated-dc-subdao.js.map +1 -1
  179. package/lib/esm/src/update-lazy-distributor.js +2 -17
  180. package/lib/esm/src/update-lazy-distributor.js.map +1 -1
  181. package/lib/esm/src/update-lazy-transactions.js +2 -17
  182. package/lib/esm/src/update-lazy-transactions.js.map +1 -1
  183. package/lib/esm/src/update-maker.js +2 -17
  184. package/lib/esm/src/update-maker.js.map +1 -1
  185. package/lib/esm/src/update-mint-circuit-breaker.js +2 -17
  186. package/lib/esm/src/update-mint-circuit-breaker.js.map +1 -1
  187. package/lib/esm/src/update-organization.js +60 -0
  188. package/lib/esm/src/update-organization.js.map +1 -0
  189. package/lib/esm/src/update-price-oracle.js +2 -17
  190. package/lib/esm/src/update-price-oracle.js.map +1 -1
  191. package/lib/esm/src/update-proxy-config.js +2 -17
  192. package/lib/esm/src/update-proxy-config.js.map +1 -1
  193. package/lib/esm/src/update-registrar-authorities.js +7 -9
  194. package/lib/esm/src/update-registrar-authorities.js.map +1 -1
  195. package/lib/esm/src/update-rewardable-entity-config.js +6 -18
  196. package/lib/esm/src/update-rewardable-entity-config.js.map +1 -1
  197. package/lib/esm/src/update-subdao-vehnt.js +2 -17
  198. package/lib/esm/src/update-subdao-vehnt.js.map +1 -1
  199. package/lib/esm/src/update-subdao.js +4 -44
  200. package/lib/esm/src/update-subdao.js.map +1 -1
  201. package/lib/esm/src/update-token-metadata.js +18 -25
  202. package/lib/esm/src/update-token-metadata.js.map +1 -1
  203. package/lib/esm/src/upgrade-idl.js +11 -21
  204. package/lib/esm/src/upgrade-idl.js.map +1 -1
  205. package/lib/esm/src/upsert-incentive-program.js +2 -9
  206. package/lib/esm/src/upsert-incentive-program.js.map +1 -1
  207. package/lib/esm/src/utils.js +131 -2
  208. package/lib/esm/src/utils.js.map +1 -1
  209. package/lib/esm/tsconfig.esm.tsbuildinfo +1 -1
  210. package/lib/types/src/add-squads-proposer.d.ts +2 -0
  211. package/lib/types/src/add-squads-proposer.d.ts.map +1 -0
  212. package/lib/types/src/approve-carrier.d.ts.map +1 -1
  213. package/lib/types/src/approve-maker.d.ts.map +1 -1
  214. package/lib/types/src/approve-program.d.ts.map +1 -1
  215. package/lib/types/src/close-buffers.d.ts.map +1 -1
  216. package/lib/types/src/close-canopy.d.ts.map +1 -1
  217. package/lib/types/src/close-legacy-auto-topoff.d.ts +2 -0
  218. package/lib/types/src/close-legacy-auto-topoff.d.ts.map +1 -0
  219. package/lib/types/src/create-and-approve-makers.d.ts.map +1 -1
  220. package/lib/types/src/create-boost-config.d.ts.map +1 -1
  221. package/lib/types/src/create-common-lut.d.ts.map +1 -1
  222. package/lib/types/src/create-dao.d.ts.map +1 -1
  223. package/lib/types/src/create-data-only-config.d.ts.map +1 -1
  224. package/lib/types/src/create-price-oracle.d.ts.map +1 -1
  225. package/lib/types/src/create-subdao.d.ts.map +1 -1
  226. package/lib/types/src/create-tuktuk-dca-lut.d.ts +2 -0
  227. package/lib/types/src/create-tuktuk-dca-lut.d.ts.map +1 -0
  228. package/lib/types/src/execute-vault-transaction.d.ts +2 -0
  229. package/lib/types/src/execute-vault-transaction.d.ts.map +1 -0
  230. package/lib/types/src/extend-common-lut.d.ts.map +1 -1
  231. package/lib/types/src/initialize-tuktuk-dca.d.ts +2 -0
  232. package/lib/types/src/initialize-tuktuk-dca.d.ts.map +1 -0
  233. package/lib/types/src/issue-iot-operations-fund.d.ts.map +1 -1
  234. package/lib/types/src/reset-vsr-voting-mint.d.ts.map +1 -1
  235. package/lib/types/src/revoke-maker.d.ts.map +1 -1
  236. package/lib/types/src/set-dc-onboarding-fees-paid-epoch-info.d.ts.map +1 -1
  237. package/lib/types/src/set-dc-onboarding-fees-paid.d.ts.map +1 -1
  238. package/lib/types/src/set-proxy-config.d.ts.map +1 -1
  239. package/lib/types/src/setup-dc-auto-topoff.d.ts.map +1 -1
  240. package/lib/types/src/setup-hst.d.ts.map +1 -1
  241. package/lib/types/src/squads-batch-optimizer.d.ts +23 -0
  242. package/lib/types/src/squads-batch-optimizer.d.ts.map +1 -0
  243. package/lib/types/src/swap-carrier-stake.d.ts.map +1 -1
  244. package/lib/types/src/swap-maker-stake.d.ts.map +1 -1
  245. package/lib/types/src/switch-mobile-ops-fund.d.ts.map +1 -1
  246. package/lib/types/src/transfer-program-authorities.d.ts +2 -0
  247. package/lib/types/src/transfer-program-authorities.d.ts.map +1 -0
  248. package/lib/types/src/update-account-circuit-breaker.d.ts.map +1 -1
  249. package/lib/types/src/update-boost-config.d.ts.map +1 -1
  250. package/lib/types/src/update-carrier.d.ts.map +1 -1
  251. package/lib/types/src/update-dao.d.ts.map +1 -1
  252. package/lib/types/src/update-data-credits.d.ts.map +1 -1
  253. package/lib/types/src/update-delegated-dc-subdao.d.ts.map +1 -1
  254. package/lib/types/src/update-lazy-distributor.d.ts.map +1 -1
  255. package/lib/types/src/update-lazy-transactions.d.ts.map +1 -1
  256. package/lib/types/src/update-maker.d.ts.map +1 -1
  257. package/lib/types/src/update-mint-circuit-breaker.d.ts.map +1 -1
  258. package/lib/types/src/update-organization.d.ts +2 -0
  259. package/lib/types/src/update-organization.d.ts.map +1 -0
  260. package/lib/types/src/update-price-oracle.d.ts.map +1 -1
  261. package/lib/types/src/update-proxy-config.d.ts.map +1 -1
  262. package/lib/types/src/update-registrar-authorities.d.ts.map +1 -1
  263. package/lib/types/src/update-rewardable-entity-config.d.ts.map +1 -1
  264. package/lib/types/src/update-subdao-vehnt.d.ts.map +1 -1
  265. package/lib/types/src/update-subdao.d.ts.map +1 -1
  266. package/lib/types/src/update-token-metadata.d.ts.map +1 -1
  267. package/lib/types/src/upgrade-idl.d.ts.map +1 -1
  268. package/lib/types/src/upsert-incentive-program.d.ts.map +1 -1
  269. package/lib/types/src/utils.d.ts +11 -0
  270. package/lib/types/src/utils.d.ts.map +1 -1
  271. package/package.json +16 -15
@@ -1,14 +1,16 @@
1
1
  import * as anchor from "@coral-xyz/anchor";
2
2
  import { idlAddress } from "@coral-xyz/anchor/dist/cjs/idl";
3
- import { createAtaAndMintInstructions, createMintInstructions, sendInstructions, toBN, withPriorityFees, } from "@helium/spl-utils";
3
+ import { bulkSendTransactions, createAtaAndMintInstructions, createMintInstructions, sendInstructions, toBN, withPriorityFees, } from "@helium/spl-utils";
4
4
  import { createCreateMetadataAccountV3Instruction, PROGRAM_ID as METADATA_PROGRAM_ID, } from "@metaplex-foundation/mpl-token-metadata";
5
5
  import { AccountMetaData, BPF_UPGRADE_LOADER_ID, getGovernanceProgramVersion, getProposalTransactionAddress, getTokenOwnerRecordAddress, Governance, GovernanceAccountParser, InstructionData, ProposalTransaction, Realm, Vote, VoteType, withAddSignatory, withCastVote, withCreateProposal, withCreateTokenOwnerRecord, withDepositGoverningTokens, withExecuteTransaction, withInsertTransaction, withRelinquishVote, withSignOffProposal, withWithdrawGoverningTokens, YesNoVote, } from "@solana/spl-governance";
6
6
  import { AuthorityType, createSetAuthorityInstruction, getAssociatedTokenAddress, } from "@solana/spl-token";
7
7
  import { AddressLookupTableProgram, ComputeBudgetProgram, Keypair, PublicKey, SYSVAR_CLOCK_PUBKEY, SYSVAR_RENT_PUBKEY, TransactionInstruction, TransactionMessage, VersionedTransaction, } from "@solana/web3.js";
8
8
  import { getTxPDA } from "@sqds/sdk";
9
+ import * as multisig from "@sqds/multisig";
9
10
  import { BN } from "bn.js";
10
11
  import fs from "fs";
11
12
  import fetch from "node-fetch";
13
+ import { packageInstructions } from "./squads-batch-optimizer";
12
14
  const SECONDS_PER_DAY = 86400;
13
15
  // Goal = 3 proof nodes needed
14
16
  export const merkleSizes = [
@@ -23,6 +25,55 @@ export const merkleSizes = [
23
25
  [20, 64, 17],
24
26
  [24, 64, 17],
25
27
  ];
28
+ export async function createProgramSetAuthorityInstruction(programId, upgradeAuthority, newAuthority) {
29
+ const bpfUpgradableLoaderId = BPF_UPGRADE_LOADER_ID;
30
+ const [programDataAddress] = await PublicKey.findProgramAddress([programId.toBuffer()], bpfUpgradableLoaderId);
31
+ const keys = [
32
+ {
33
+ pubkey: programDataAddress,
34
+ isWritable: true,
35
+ isSigner: false,
36
+ },
37
+ {
38
+ pubkey: upgradeAuthority,
39
+ isWritable: false,
40
+ isSigner: true,
41
+ },
42
+ {
43
+ pubkey: newAuthority,
44
+ isWritable: false,
45
+ isSigner: false,
46
+ },
47
+ ];
48
+ return new TransactionInstruction({
49
+ keys,
50
+ programId: bpfUpgradableLoaderId,
51
+ data: Buffer.from([4, 0, 0, 0]), // SetAuthority instruction bincode
52
+ });
53
+ }
54
+ export async function createSetIdlAuthorityInstruction(programId, upgradeAuthority, newAuthority) {
55
+ const prefix = Buffer.from("0a69e9a778bcf440", "hex");
56
+ const ixn = Buffer.from("04", "hex");
57
+ const data = Buffer.concat([prefix.reverse(), ixn, newAuthority.toBuffer()]);
58
+ const idlAddr = await idlAddress(programId);
59
+ const keys = [
60
+ {
61
+ pubkey: idlAddr,
62
+ isWritable: true,
63
+ isSigner: false,
64
+ },
65
+ {
66
+ pubkey: upgradeAuthority,
67
+ isWritable: false,
68
+ isSigner: true,
69
+ },
70
+ ];
71
+ return new TransactionInstruction({
72
+ keys,
73
+ programId,
74
+ data,
75
+ });
76
+ }
26
77
  export async function createIdlUpgradeInstruction(programId, bufferAddress, upgradeAuthority) {
27
78
  const prefix = Buffer.from("0a69e9a778bcf440", "hex");
28
79
  const ixn = Buffer.from("03", "hex");
@@ -297,12 +348,13 @@ export async function createCloseBufferInstruction(programId, bufferAddress, upg
297
348
  data: Buffer.from([5, 0, 0, 0]), // Upgrade instruction bincode
298
349
  });
299
350
  }
300
- export async function sendInstructionsOrSquads({ provider, instructions, signers = [], payer = provider.wallet.publicKey, commitment = "confirmed", idlErrors = new Map(), executeTransaction = false, squads, multisig, authorityIndex, }) {
351
+ export async function sendInstructionsOrSquadsV4({ provider, instructions, signers = [], payer = provider.wallet.publicKey, commitment = "confirmed", idlErrors = new Map(), multisig: multisigPda, }) {
301
352
  if (!multisig) {
302
353
  return await sendInstructions(provider, await withPriorityFees({
303
354
  connection: provider.connection,
304
355
  computeUnits: 1000000,
305
356
  instructions,
357
+ feePayer: payer,
306
358
  }), signers, payer, commitment, idlErrors);
307
359
  }
308
360
  const signerSet = new Set(instructions
@@ -317,11 +369,88 @@ export async function sendInstructionsOrSquads({ provider, instructions, signers
317
369
  connection: provider.connection,
318
370
  computeUnits: 1000000,
319
371
  instructions: nonMissingSignerIxs,
372
+ feePayer: payer,
320
373
  }), signers, payer, commitment, idlErrors);
321
374
  }
322
375
  if (squadsSignatures.length >= 2) {
323
376
  throw new Error("Too many missing signatures");
324
377
  }
378
+ const multisigInfo = await multisig.accounts.Multisig.fromAccountAddress(provider.connection, multisigPda);
379
+ const transactionIndex = Number(multisigInfo.transactionIndex) + 1;
380
+ const createBatchIx = await multisig.instructions.batchCreate({
381
+ batchIndex: BigInt(transactionIndex),
382
+ creator: provider.wallet.publicKey,
383
+ multisigPda: multisigPda,
384
+ vaultIndex: 0,
385
+ memo: "Helium-admin-cli batch",
386
+ });
387
+ await sendInstructions(provider, await withPriorityFees({
388
+ connection: provider.connection,
389
+ instructions: [createBatchIx, await multisig.instructions.proposalCreate({
390
+ multisigPda: multisigPda,
391
+ transactionIndex: BigInt(transactionIndex),
392
+ creator: provider.wallet.publicKey,
393
+ isDraft: true,
394
+ })],
395
+ feePayer: payer,
396
+ }));
397
+ const [vault] = await multisig.getVaultPda({
398
+ multisigPda: multisigPda,
399
+ index: 0,
400
+ programId: multisig.PROGRAM_ID,
401
+ });
402
+ const { transactionMessages, failedBuckets } = await packageInstructions(instructions.map(ix => [ix]), [], vault);
403
+ const addInstructions = await Promise.all(transactionMessages.map((tm, index) => multisig.instructions.batchAddTransaction({
404
+ batchIndex: BigInt(transactionIndex),
405
+ multisigPda: multisigPda,
406
+ transactionIndex: index + 1,
407
+ transactionMessage: tm,
408
+ vaultIndex: 0,
409
+ member: provider.wallet.publicKey,
410
+ ephemeralSigners: 0
411
+ })));
412
+ if (failedBuckets.length > 0) {
413
+ throw new Error(`Failed to package instructions: ${failedBuckets.join(", ")}`);
414
+ }
415
+ await bulkSendTransactions(provider, addInstructions.map(ix => ({
416
+ feePayer: provider.wallet.publicKey,
417
+ instructions: [ix],
418
+ })));
419
+ await sendInstructions(provider, await withPriorityFees({
420
+ connection: provider.connection,
421
+ instructions: [await multisig.instructions.proposalActivate({
422
+ multisigPda: multisigPda,
423
+ transactionIndex: BigInt(transactionIndex),
424
+ member: provider.wallet.publicKey,
425
+ })],
426
+ feePayer: payer,
427
+ }));
428
+ }
429
+ export async function sendInstructionsOrSquads({ provider, instructions, signers = [], payer = provider.wallet.publicKey, commitment = "confirmed", idlErrors = new Map(), executeTransaction = false, squads, multisig, authorityIndex, }) {
430
+ if (!multisig) {
431
+ return await sendInstructions(provider, await withPriorityFees({
432
+ connection: provider.connection,
433
+ computeUnits: 1000000,
434
+ instructions,
435
+ }), signers, payer, commitment, idlErrors);
436
+ }
437
+ const signerSet = new Set(instructions
438
+ .map((ix) => ix.keys.filter((k) => k.isSigner).map((k) => k.pubkey.toBase58()))
439
+ .flat());
440
+ const signerKeys = Array.from(signerSet).map((k) => new PublicKey(k));
441
+ const nonMissingSignerIxs = instructions.filter((ix) => !ix.keys.some((k) => k.isSigner && !k.pubkey.equals(provider.wallet.publicKey)));
442
+ const squadsSignatures = signerKeys.filter((k) => !k.equals(provider.wallet.publicKey) &&
443
+ !signers.some((s) => s.publicKey.equals(k)));
444
+ if (squadsSignatures.length == 0) {
445
+ return await sendInstructions(provider, await withPriorityFees({
446
+ connection: provider.connection,
447
+ computeUnits: 1000000,
448
+ instructions: nonMissingSignerIxs,
449
+ }), signers, payer, commitment, idlErrors);
450
+ }
451
+ if (squadsSignatures.length >= 2) {
452
+ throw new Error("Too many missing signatures " + squadsSignatures.map(s => s.toBase58()).join(", "));
453
+ }
325
454
  const txIndex = await squads.getNextTransactionIndex(multisig);
326
455
  const ix = await squads.buildCreateTransaction(multisig, authorityIndex, txIndex);
327
456
  await sendInstructions(provider, await withPriorityFees({
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,gBAAgB,EAChB,IAAI,EACJ,gBAAgB,GACjB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,wCAAwC,EACxC,UAAU,IAAI,mBAAmB,GAClC,MAAM,yCAAyC,CAAC;AACjD,OAAO,EACL,eAAe,EACf,qBAAqB,EACrB,2BAA2B,EAC3B,6BAA6B,EAC7B,0BAA0B,EAC1B,UAAU,EACV,uBAAuB,EACvB,eAAe,EACf,mBAAmB,EACnB,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAClB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACnB,2BAA2B,EAC3B,SAAS,GACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,aAAa,EACb,6BAA6B,EAC7B,yBAAyB,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACL,yBAAyB,EAGzB,oBAAoB,EAEpB,OAAO,EACP,SAAS,EAET,mBAAmB,EACnB,kBAAkB,EAClB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,OAAe,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAC3B,OAAO,EAAE,MAAM,IAAI,CAAC;AACpB,OAAO,KAAK,MAAM,YAAY,CAAC;AAE/B,MAAM,eAAe,GAAG,KAAK,CAAC;AAE9B,8BAA8B;AAC9B,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACT,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACT,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;IACZ,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC;CACb,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,SAAoB,EACpB,aAAwB,EACxB,gBAA2B;IAE3B,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,CAAC;IACtD,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;IAE5C,MAAM,IAAI,GAAG;QACX;YACE,MAAM,EAAE,aAAa;YACrB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,KAAK;SAChB;QACD;YACE,MAAM,EAAE,OAAO;YACf,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,KAAK;SAChB;QACD;YACE,MAAM,EAAE,gBAAgB;YACxB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,IAAI;SACf;KACF,CAAC;IAEF,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI;QACJ,SAAS;QACT,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,GAAG,eAAe,CAAC;AAE7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EACnC,QAAyB,EACR,EAAE;IACnB,MAAM,KAAK,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,mBAAmB,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,KAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACnD,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,MAAM,CAC1B,UAAsB,EACtB,OAAkB;IAElB,OAAO,OAAO,CAAC,MAAM,UAAU,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;AAC3D,CAAC;AAED,KAAK,UAAU,WAAW,CACxB,KAAa,EACb,KAAuB;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9B,IAAI;YACF,OAAO,MAAM,KAAK,EAAE,CAAC;SACtB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;SACpC;KACF;IACD,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;AAC1C,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,EAClC,QAAQ,EACR,WAAW,GAAG,OAAO,CAAC,QAAQ,EAAE,EAChC,MAAM,EACN,WAAW,EACX,QAAQ,GAAG,CAAC,EACZ,EAAE,EACF,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EACzC,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EAC3C,eAAe,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,GAW5C;IACC,MAAM,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;IAC/C,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAEhE,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,SAAS,CAAC,CAAC,EAAE;QAC/D,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,8BAA8B,CAAC,CAAC;QAC5D,MAAM,gBAAgB,CACpB,QAAQ,EACR;YACE,GAAG,CAAC,MAAM,sBAAsB,CAC9B,QAAQ,EACR,QAAQ,EACR,QAAQ,CAAC,MAAM,CAAC,SAAS,EACzB,eAAe,EACf,WAAW,CACZ,CAAC;YACF,GAAG,CACD,MAAM,4BAA4B,CAChC,QAAQ,EACR,WAAW,CAAC,SAAS,EACrB,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,EACtB,MAAM,CACP,CACF,CAAC,YAAY;SACf,EACD,CAAC,WAAW,CAAC,CACd,CAAC;KACH;IAED,MAAM,eAAe,GAAG,CACtB,MAAM,SAAS,CAAC,kBAAkB,CAChC;QACE,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC;QAChC,mBAAmB,CAAC,QAAQ,EAAE;QAC9B,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;KACjC,EACD,mBAAmB,CACpB,CACF,CAAC,CAAC,CAAC,CAAC;IAEL,IAAI,CAAC,CAAC,MAAM,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,eAAe,CAAC,CAAC,EAAE;QACzD,OAAO,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,kCAAkC,CAAC,CAAC;QAChE,MAAM,gBAAgB,CAAC,QAAQ,EAAE;YAC/B,MAAM,wCAAwC,CAC5C;gBACE,QAAQ,EAAE,eAAe;gBACzB,IAAI,EAAE,WAAW,CAAC,SAAS;gBAC3B,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;gBACxC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;gBAChC,eAAe,EAAE,eAAe;aACjC,EACD;gBACE,2BAA2B,EAAE;oBAC3B,IAAI,EAAE;wBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;wBACvB,GAAG,EAAE,WAAW;wBAChB,oBAAoB,EAAE,CAAC;wBACvB,QAAQ,EAAE,IAAI;wBACd,UAAU,EAAE,IAAI;wBAChB,IAAI,EAAE,IAAI;qBACX;oBACD,SAAS,EAAE,IAAI;oBACf,iBAAiB,EAAE,IAAI;iBACxB;aACF,CACF;SACF,CAAC,CAAC;QAEH,6CAA6C;QAC7C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;YACpD,MAAM,gBAAgB,CAAC,QAAQ,EAAE;gBAC/B,MAAM,6BAA6B,CACjC,WAAW,CAAC,SAAS,EACrB,QAAQ,CAAC,MAAM,CAAC,SAAS,EACzB,aAAa,CAAC,UAAU,EACxB,aAAa,CACd;aACF,CAAC,CAAC;SACJ;KACF;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAe;IACzC,OAAO,OAAO,CAAC,aAAa,CAC1B,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAChE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,QAA+B;IACzD,MAAM,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;IAC3C,OAAO,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CAAC,EACrD,QAAQ,EACR,YAAY,EACZ,OAAO,GAAG,EAAE,EACZ,YAAY,EACZ,YAAY,EACZ,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EACjC,UAAU,GAAG,WAAW,EACxB,SAAS,GAAG,IAAI,GAAG,EAAE,EACrB,UAAU,EACV,eAAe,GAAG,KAAK,EACvB,YAAY,GAab;IACC,SAAS,CAAC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,SAAS,CAAC,QAAQ,CAAC;IAE5D,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,YAAY;SACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACV,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAClE;SACA,IAAI,EAAE,CACV,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAC7C,CAAC,EAAE,EAAE,EAAE,CACL,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CACX,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CACjE,CACJ,CAAC;IACF,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC/B,8BAA8B;IAC9B,MAAM,WAAW,GAAG,CAClB,MAAM,OAAO,CAAC,GAAG,CACf,UAAU;SACP,MAAM,CACL,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACpC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAC9C;SACA,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE;QAC3B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;QACrE,OAAO;YACL,IAAI;YACJ,aAAa;YACb,SAAS,EAAE,SAAS,CAAC,sBAAsB,CACzC;gBACE,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC;gBACvC,aAAa,CAAC,QAAQ,EAAE;aACzB,EACD,YAAY,CACb,CAAC,CAAC,CAAC;SACL,CAAC;IACJ,CAAC,CAAC,CACL,CACF,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;IAE7D,KAAK,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,WAAW,EAAE;QAC5D,MAAM,YAAY,GAAG,EAAE,CAAC;QACxB,MAAM,GAAG,GAAG,uBAAuB,CAAC,UAAU,CAAC,CAC7C,aAAa,EACb,IAAK,CACN,CAAC,OAAO,CAAC;QACV,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC;QAC3B,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACrE,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAC1C,aAAa,EACb,SAAU,CACX,CAAC,OAAO,CAAC;QAEV,IAAI,CAAC,UAAU,EAAE;YACf,UAAU,GAAG,KAAK,CAAC,aAAc,CAAC;SACnC;QACD,MAAM,UAAU,GAAG,MAAM,0BAA0B,CACjD,YAAY,EACZ,QAAQ,EACR,UAAW,EACX,MAAM,CAAC,SAAS,CACjB,CAAC;QAEF,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAC/C,QAAQ,CAAC,UAAU,EACnB,YAAY,CACb,CAAC;QAEF,MAAM,gBAAgB,GAAG,CAAC,CAAC,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,cAAc,CAClE,UAAU,CACX,CAAC,CAAC;QACH,IAAI,CAAC,gBAAgB,EAAE;YACrB,MAAM,0BAA0B,CAC9B,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,MAAM,CAAC,SAAS,EAChB,UAAW,EACX,MAAM,CAAC,SAAS,CACjB,CAAC;SACH;QAED,MAAM,IAAI,GAAG,MAAM,yBAAyB,CAAC,UAAW,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,IAAI,EAAE,CACpB,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CACtE,CAAC;QACF,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE;YACzB,0BAA0B,CACxB,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,UAAW,EACX,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,EAChB,OAAO,CACR,CAAC;SACH;QAED,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CACvC,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,aAAa,EACb,UAAU,EACV,YAAY,EACZ,kCAAkC,EAClC,UAAW,EACX,MAAM,CAAC,SAAS,EAChB,GAAG,CAAC,aAAa,EACjB,QAAQ,CAAC,aAAa,EACtB,CAAC,SAAS,CAAC,EACX,IAAI,EACJ,MAAM,CAAC,SAAS,CACjB,CAAC;QAEF,MAAM,eAAe,GAAG,MAAM,gBAAgB,CAC5C,YAAY,EACZ,YAAY,EACZ,CAAC,EACD,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,CACjB,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,qBAAqB,YAAY,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAEzE,MAAM,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAE/C,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,MAAM,oBAAoB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CACtD,EAAE,CAAC,IAAI,CAAC,IAAI,CACV,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YAC9D,CAAC,CAAC,QAAQ,CACb,CACF,CAAC;QACF,KAAK,MAAM,WAAW,IAAI,oBAAoB,EAAE;YAC9C,MAAM,SAAS,GAAG,EAAE,CAAC;YACrB,MAAM,qBAAqB,CACzB,SAAS,EACT,YAAY,EACZ,OAAO,EACP,aAAa,EACb,QAAQ,EACR,UAAU,EACV,MAAM,CAAC,SAAS,EAChB,GAAG,EACH,CAAC,EACD,CAAC,EACD;gBACE,IAAI,eAAe,CAAC;oBAClB,SAAS,EAAE,WAAW,CAAC,SAAS;oBAChC,QAAQ,EAAE,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,eAAe,CAAC,GAAG,CAAC,CAAC;oBACjE,IAAI,EAAE,WAAW,CAAC,IAAI;iBACvB,CAAC;aACH,EACD,MAAM,CAAC,SAAS,CACjB,CAAC;YACF,OAAO,CAAC,GAAG,CACT,cAAc,GAAG,gBAAgB,YAAY,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CACxE,CAAC;YACF,IAAI;gBACF,MAAM,gBAAgB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;aAC7C;YAAC,OAAO,CAAM,EAAE;gBACf,IAAI,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE;oBAC/C,MAAM,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,MAAM,yBAAyB,CAAC,iBAAiB,CAAC;wBACnE,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;wBACpC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;wBAChC,UAAU,EAAE,MAAM,QAAQ,CAAC,UAAU,CAAC,OAAO,EAAE;qBAChD,CAAC,CAAC;oBACH,MAAM,uBAAuB,GAC3B,MAAM,yBAAyB,CAAC,iBAAiB,CAAC;wBAChD,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;wBAChC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;wBACpC,WAAW,EAAE,GAAG;wBAChB,aAAa;wBACb,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI;6BACzB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC;6BACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,YAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;qBACrD,CAAC,CAAC;oBACL,MAAM,gBAAgB,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,uBAAuB,CAAC,EAAE,EAAE,CAAC,CAAC;oBACrE,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,+BAA+B;oBAClD,MAAM,cAAc,GAAG,CACrB,MAAM,QAAQ,CAAC,UAAU,CAAC,qBAAqB,CAAC,GAAG,CAAC,CACrD,CAAC,KAAK,CAAC;oBACR,MAAM,EAAE,GAAG,IAAI,oBAAoB,CACjC,IAAI,kBAAkB,CAAC;wBACrB,QAAQ,EAAE,KAAK;wBACf,eAAe,EAAE,CAAC,MAAM,QAAQ,CAAC,UAAU,CAAC,kBAAkB,EAAE,CAAC;6BAC9D,SAAS;wBACZ,YAAY,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;qBAC7B,CAAC,CAAC,kBAAkB,CAAC,CAAC,cAAe,CAAC,CAAC,CACzC,CAAC;oBACF,OAAO,CAAC,GAAG,CAAC,uCAAuC,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrE,MAAM,EAAE,CAAC,IAAI,CAAC,CAAC,YAAa,CAAC,CAAC,CAAC;oBAC/B,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;oBAC3D,MAAM,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;oBAChE,OAAO,CAAC,GAAG,CAAC,YAAY,GAAG,EAAE,EAAE,IAAI,CAAC,CAAC;oBAErC,MAAM,yBAAyB,CAAC,gBAAgB,CAAC;wBAC/C,WAAW,EAAE,GAAG;wBAChB,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;wBACpC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,SAAS;qBACrC,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;iBACpC;aACF;YACD,GAAG,EAAE,CAAC;SACP;QAED,MAAM,WAAW,GAAG,EAAE,CAAC;QACvB,MAAM,mBAAmB,CACvB,WAAW,EACX,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,MAAM,CAAC,SAAS,EAChB,eAAe,EACf,SAAS,CACV,CAAC;QAEF,OAAO,CAAC,GAAG,CACT,2BAA2B,YAAY,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAClE,CAAC;QACF,MAAM,gBAAgB,CACpB,QAAQ,EACR,WAAW,EACX,OAAO,EACP,KAAK,EACL,UAAU,EACV,SAAS,CACV,CAAC;QAEF,IAAI,eAAe,EAAE;YACnB,MAAM,OAAO,GAAG,EAAE,CAAC;YAEnB,MAAM,YAAY,GAAG,MAAM,YAAY,CACrC,OAAO,EACP,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,UAAU,EACV,MAAM,CAAC,SAAS,EAChB,UAAW,EACX,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,GAAG,CAAC,EACjC,MAAM,CAAC,SAAS,CACjB,CAAC;YAEF,MAAM,gBAAgB,CACpB,QAAQ,EACR,OAAO,EACP,OAAO,EACP,KAAK,EACL,UAAU,EACV,SAAS,CACV,CAAC;YAEF,MAAM,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,6BAA6B;YAChD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,GAAG,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE;gBAC1D,MAAM,WAAW,GAAG;oBAClB,oBAAoB,CAAC,mBAAmB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;iBAC7D,CAAC;gBACF,MAAM,kBAAkB,GAAG,MAAM,6BAA6B,CAC5D,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,CAAC,EACD,GAAG,CACJ,CAAC;gBACF,MAAM,eAAe,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,cAAc,CAC9D,kBAAkB,CACnB,CAAC;gBACF,MAAM,WAAW,GAAG,uBAAuB,CAAC,mBAAmB,CAAC,CAC9D,aAAa,EACb,eAAgB,CACjB,CAAC,OAAO,CAAC;gBACV,MAAM,sBAAsB,CAC1B,WAAW,EACX,YAAY,EACZ,OAAO,EACP,aAAa,EACb,QAAQ,EACR,kBAAkB,EAClB,WAAW,CAAC,YAAY,CACzB,CAAC;gBACF,OAAO,CAAC,GAAG,CACT,iBAAiB,GAAG,gBAAgB,YAAY,KAAK,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAC3E,CAAC;gBACF,MAAM,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;aAC/C;YACD,MAAM,UAAU,GAAG,EAAE,CAAC;YACtB,kBAAkB,CAChB,UAAU,EACV,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,aAAa,EACb,QAAQ,EACR,UAAU,EACV,UAAW,EACX,YAAY,EACZ,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,CACjB,CAAC;YACF,MAAM,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;SAC9C;QAED,IAAI,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,eAAe,EAAE;YAC5C,MAAM,YAAY,GAAG,EAAE,CAAC;YAExB,MAAM,2BAA2B,CAC/B,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,QAAQ,EACR,MAAM,yBAAyB,CAAC,UAAW,EAAE,MAAM,CAAC,SAAS,CAAC,EAC9D,UAAW,EACX,MAAM,CAAC,SAAS,CACjB,CAAC;YACF,MAAM,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;SAChD;KACF;IAED,OAAO,MAAM,gBAAgB,CAC3B,QAAQ,EACR,mBAAmB,EACnB,OAAO,EACP,KAAK,EACL,UAAU,EACV,SAAS,CACV,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,SAAoB,EACpB,aAAwB,EACxB,gBAA2B,EAC3B,gBAA2B;IAE3B,MAAM,qBAAqB,GAAG,qBAAqB,CAAC;IAEpD,MAAM,CAAC,kBAAkB,CAAC,GAAG,MAAM,SAAS,CAAC,kBAAkB,CAC7D,CAAC,SAAS,CAAC,QAAQ,EAAE,CAAC,EACtB,qBAAqB,CACtB,CAAC;IAEF,MAAM,IAAI,GAAG;QACX;YACE,MAAM,EAAE,aAAa;YACrB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,KAAK;SAChB;QACD;YACE,MAAM,EAAE,gBAAgB;YACxB,UAAU,EAAE,IAAI;YAChB,QAAQ,EAAE,KAAK;SAChB;QACD;YACE,MAAM,EAAE,gBAAgB;YACxB,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,IAAI;SACf;QACD;YACE,MAAM,EAAE,kBAAkB;YAC1B,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SAChB;QACD;YACE,MAAM,EAAE,kBAAkB;YAC1B,UAAU,EAAE,KAAK;YACjB,QAAQ,EAAE,KAAK;SAChB;KACF,CAAC;IAEF,OAAO,IAAI,sBAAsB,CAAC;QAChC,IAAI;QACJ,SAAS,EAAE,qBAAqB;QAChC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,8BAA8B;KAChE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAAC,EAC7C,QAAQ,EACR,YAAY,EACZ,OAAO,GAAG,EAAE,EACZ,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,SAAS,EACjC,UAAU,GAAG,WAAW,EACxB,SAAS,GAAG,IAAI,GAAG,EAAE,EACrB,kBAAkB,GAAG,KAAK,EAC1B,MAAM,EACN,QAAQ,EACR,cAAc,GAYf;IACC,IAAI,CAAC,QAAQ,EAAE;QACb,OAAO,MAAM,gBAAgB,CAC3B,QAAQ,EACR,MAAM,gBAAgB,CAAC;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,OAAO;YACrB,YAAY;SACb,CAAC,EACF,OAAO,EACP,KAAK,EACL,UAAU,EACV,SAAS,CACV,CAAC;KACH;IAED,MAAM,SAAS,GAAG,IAAI,GAAG,CACvB,YAAY;SACT,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CACV,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAClE;SACA,IAAI,EAAE,CACV,CAAC;IACF,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;IAEtE,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAC7C,CAAC,EAAE,EAAE,EAAE,CACL,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CACX,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CACjE,CACJ,CAAC;IACF,MAAM,gBAAgB,GAAG,UAAU,CAAC,MAAM,CACxC,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC;QACpC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAC9C,CAAC;IAEF,IAAI,gBAAgB,CAAC,MAAM,IAAI,CAAC,EAAE;QAChC,OAAO,MAAM,gBAAgB,CAC3B,QAAQ,EACR,MAAM,gBAAgB,CAAC;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,OAAO;YACrB,YAAY,EAAE,mBAAmB;SAClC,CAAC,EACF,OAAO,EACP,KAAK,EACL,UAAU,EACV,SAAS,CACV,CAAC;KACH;IAED,IAAI,gBAAgB,CAAC,MAAM,IAAI,CAAC,EAAE;QAChC,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;KAChD;IAED,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,QAAQ,CAAC,CAAC;IAC/D,MAAM,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAC5C,QAAQ,EACR,cAAe,EACf,OAAO,CACR,CAAC;IACF,MAAM,gBAAgB,CACpB,QAAQ,EACR,MAAM,gBAAgB,CAAC;QACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,YAAY,EAAE,CAAC,EAAE,CAAC;QAClB,YAAY,EAAE,MAAM;KACrB,CAAC,CACH,CAAC;IACF,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,QAAQ,CAC5B,QAAQ,EACR,IAAI,EAAE,CAAC,OAAO,CAAC,EACf,MAAM,CAAC,iBAAiB,CACzB,CAAC;IACF,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,MAAM,EAAE,IAAI,YAAY,CAAC,MAAM,CAClC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAC7D,EAAE;QACD,MAAM,gBAAgB,CACpB,QAAQ,EACR,MAAM,gBAAgB,CAAC;YACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE;gBACZ,MAAM,MAAM,CAAC,mBAAmB,CAC9B,QAAQ,EACR,KAAK,EACL,EAAE,EACF,KAAK,CACN;aACF;YACD,YAAY,EAAE,MAAM;SACrB,CAAC,CACH,CAAC;QACF,KAAK,EAAE,CAAC;KACT;IAED,MAAM,GAAG,GAA6B,EAAE,CAAA;IACxC,GAAG,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,wBAAwB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;IAChE,GAAG,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAA;IAE/D,IAAI,kBAAkB,EAAE;QACtB,GAAG,CAAC,IAAI,CAAC,MAAM,MAAM,CAAC,uBAAuB,CAC3C,KAAK,EACL,QAAQ,CAAC,MAAM,CAAC,SAAS,CAC1B,CAAC,CAAC;KACJ;IAED,MAAM,gBAAgB,CACpB,QAAQ,EACR,MAAM,gBAAgB,CAAC;QACrB,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,YAAY,EAAE,OAAO;QACrB,YAAY,EAAE,GAAG;KAClB,CAAC,EACF,OAAO,CACR,CAAA;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,QAAgB;IAC3D,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC9D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC9B,MAAM,KAAK,GACT,SAAS,IAAI,CAAC;YACZ,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;YACxB,CAAC,CAAC,mBAAmB,IAAI,CAAC;gBAC1B,CAAC,CAAC;oBACE,iBAAiB,EAAE,IAAI,MAAM,CAAC,EAAE,CAC9B,CAAC,CAAC,iBAAiB,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAC5D;iBACF;gBACH,CAAC,CAAC,IAAI,CAAC;QACX,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QAC5E,OAAO;YACL,aAAa,EAAE,IAAI,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC;YACxE,GAAG,KAAK;SACT,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,KAAK,CAAC,IAAY;IACzB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;AAC7D,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/utils.ts"],"names":[],"mappings":"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"}