@ledgerhq/coin-framework 0.0.2

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 (471) hide show
  1. package/lib/account/accountId.d.ts +16 -0
  2. package/lib/account/accountId.d.ts.map +1 -0
  3. package/lib/account/accountId.js +85 -0
  4. package/lib/account/accountId.js.map +1 -0
  5. package/lib/account/accountName.d.ts +14 -0
  6. package/lib/account/accountName.d.ts.map +1 -0
  7. package/lib/account/accountName.js +17 -0
  8. package/lib/account/accountName.js.map +1 -0
  9. package/lib/account/addAccounts.d.ts +35 -0
  10. package/lib/account/addAccounts.d.ts.map +1 -0
  11. package/lib/account/addAccounts.js +209 -0
  12. package/lib/account/addAccounts.js.map +1 -0
  13. package/lib/account/balanceHistoryCache.d.ts +25 -0
  14. package/lib/account/balanceHistoryCache.d.ts.map +1 -0
  15. package/lib/account/balanceHistoryCache.js +115 -0
  16. package/lib/account/balanceHistoryCache.js.map +1 -0
  17. package/lib/account/groupOperations.d.ts +17 -0
  18. package/lib/account/groupOperations.d.ts.map +1 -0
  19. package/lib/account/groupOperations.js +127 -0
  20. package/lib/account/groupOperations.js.map +1 -0
  21. package/lib/account/helpers.d.ts +44 -0
  22. package/lib/account/helpers.d.ts.map +1 -0
  23. package/lib/account/helpers.js +333 -0
  24. package/lib/account/helpers.js.map +1 -0
  25. package/lib/account/helpers.test.d.ts +2 -0
  26. package/lib/account/helpers.test.d.ts.map +1 -0
  27. package/lib/account/helpers.test.js +366 -0
  28. package/lib/account/helpers.test.js.map +1 -0
  29. package/lib/account/index.d.ts +11 -0
  30. package/lib/account/index.d.ts.map +1 -0
  31. package/lib/account/index.js +27 -0
  32. package/lib/account/index.js.map +1 -0
  33. package/lib/account/ordering.d.ts +10 -0
  34. package/lib/account/ordering.d.ts.map +1 -0
  35. package/lib/account/ordering.js +110 -0
  36. package/lib/account/ordering.js.map +1 -0
  37. package/lib/account/pending.d.ts +33 -0
  38. package/lib/account/pending.d.ts.map +1 -0
  39. package/lib/account/pending.js +64 -0
  40. package/lib/account/pending.js.map +1 -0
  41. package/lib/account/serialization.d.ts +6 -0
  42. package/lib/account/serialization.d.ts.map +1 -0
  43. package/lib/account/serialization.js +118 -0
  44. package/lib/account/serialization.js.map +1 -0
  45. package/lib/account/support.d.ts +9 -0
  46. package/lib/account/support.d.ts.map +1 -0
  47. package/lib/account/support.js +72 -0
  48. package/lib/account/support.js.map +1 -0
  49. package/lib/account.test.d.ts +2 -0
  50. package/lib/account.test.d.ts.map +1 -0
  51. package/lib/account.test.js +257 -0
  52. package/lib/account.test.js.map +1 -0
  53. package/lib/bot/bot-test-context.d.ts +3 -0
  54. package/lib/bot/bot-test-context.d.ts.map +1 -0
  55. package/lib/bot/bot-test-context.js +26 -0
  56. package/lib/bot/bot-test-context.js.map +1 -0
  57. package/lib/bot/bot-test-context.test.d.ts +2 -0
  58. package/lib/bot/bot-test-context.test.d.ts.map +1 -0
  59. package/lib/bot/bot-test-context.test.js +41 -0
  60. package/lib/bot/bot-test-context.test.js.map +1 -0
  61. package/lib/bot/formatters.d.ts +2 -0
  62. package/lib/bot/formatters.d.ts.map +1 -0
  63. package/lib/bot/formatters.js +31 -0
  64. package/lib/bot/formatters.js.map +1 -0
  65. package/lib/bot/specs.d.ts +50 -0
  66. package/lib/bot/specs.d.ts.map +1 -0
  67. package/lib/bot/specs.js +204 -0
  68. package/lib/bot/specs.js.map +1 -0
  69. package/lib/bot/types.d.ts +178 -0
  70. package/lib/bot/types.d.ts.map +1 -0
  71. package/lib/bot/types.js +3 -0
  72. package/lib/bot/types.js.map +1 -0
  73. package/lib/bridge/getAddressWrapper.d.ts +6 -0
  74. package/lib/bridge/getAddressWrapper.d.ts.map +1 -0
  75. package/lib/bridge/getAddressWrapper.js +27 -0
  76. package/lib/bridge/getAddressWrapper.js.map +1 -0
  77. package/lib/bridge/jsHelpers.d.ts +63 -0
  78. package/lib/bridge/jsHelpers.d.ts.map +1 -0
  79. package/lib/bridge/jsHelpers.js +574 -0
  80. package/lib/bridge/jsHelpers.js.map +1 -0
  81. package/lib/cache.d.ts +10 -0
  82. package/lib/cache.d.ts.map +1 -0
  83. package/lib/cache.js +100 -0
  84. package/lib/cache.js.map +1 -0
  85. package/lib/cross.d.ts +42 -0
  86. package/lib/cross.d.ts.map +1 -0
  87. package/lib/cross.js +254 -0
  88. package/lib/cross.js.map +1 -0
  89. package/lib/cross.test.d.ts +2 -0
  90. package/lib/cross.test.d.ts.map +1 -0
  91. package/lib/cross.test.js +99 -0
  92. package/lib/cross.test.js.map +1 -0
  93. package/lib/currencies/BigNumberToLocaleString.d.ts +8 -0
  94. package/lib/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  95. package/lib/currencies/BigNumberToLocaleString.js +65 -0
  96. package/lib/currencies/BigNumberToLocaleString.js.map +1 -0
  97. package/lib/currencies/BigNumberToLocaleString.test.d.ts +2 -0
  98. package/lib/currencies/BigNumberToLocaleString.test.d.ts.map +1 -0
  99. package/lib/currencies/BigNumberToLocaleString.test.js +108 -0
  100. package/lib/currencies/BigNumberToLocaleString.test.js.map +1 -0
  101. package/lib/currencies/CurrencyURIScheme.d.ts +13 -0
  102. package/lib/currencies/CurrencyURIScheme.d.ts.map +1 -0
  103. package/lib/currencies/CurrencyURIScheme.js +124 -0
  104. package/lib/currencies/CurrencyURIScheme.js.map +1 -0
  105. package/lib/currencies/chopCurrencyUnitDecimals.d.ts +3 -0
  106. package/lib/currencies/chopCurrencyUnitDecimals.d.ts.map +1 -0
  107. package/lib/currencies/chopCurrencyUnitDecimals.js +29 -0
  108. package/lib/currencies/chopCurrencyUnitDecimals.js.map +1 -0
  109. package/lib/currencies/formatCurrencyUnit.d.ts +33 -0
  110. package/lib/currencies/formatCurrencyUnit.d.ts.map +1 -0
  111. package/lib/currencies/formatCurrencyUnit.js +126 -0
  112. package/lib/currencies/formatCurrencyUnit.js.map +1 -0
  113. package/lib/currencies/formatShort.d.ts +8 -0
  114. package/lib/currencies/formatShort.d.ts.map +1 -0
  115. package/lib/currencies/formatShort.js +27 -0
  116. package/lib/currencies/formatShort.js.map +1 -0
  117. package/lib/currencies/index.d.ts +13 -0
  118. package/lib/currencies/index.d.ts.map +1 -0
  119. package/lib/currencies/index.js +65 -0
  120. package/lib/currencies/index.js.map +1 -0
  121. package/lib/currencies/localeUtility.d.ts +8 -0
  122. package/lib/currencies/localeUtility.d.ts.map +1 -0
  123. package/lib/currencies/localeUtility.js +49 -0
  124. package/lib/currencies/localeUtility.js.map +1 -0
  125. package/lib/currencies/parseCurrencyUnit.d.ts +4 -0
  126. package/lib/currencies/parseCurrencyUnit.d.ts.map +1 -0
  127. package/lib/currencies/parseCurrencyUnit.js +18 -0
  128. package/lib/currencies/parseCurrencyUnit.js.map +1 -0
  129. package/lib/currencies/sanitizeValueString.d.ts +6 -0
  130. package/lib/currencies/sanitizeValueString.d.ts.map +1 -0
  131. package/lib/currencies/sanitizeValueString.js +56 -0
  132. package/lib/currencies/sanitizeValueString.js.map +1 -0
  133. package/lib/currencies/support.d.ts +8 -0
  134. package/lib/currencies/support.d.ts.map +1 -0
  135. package/lib/currencies/support.js +101 -0
  136. package/lib/currencies/support.js.map +1 -0
  137. package/lib/currencies/valueFromUnit.d.ts +9 -0
  138. package/lib/currencies/valueFromUnit.d.ts.map +1 -0
  139. package/lib/currencies/valueFromUnit.js +14 -0
  140. package/lib/currencies/valueFromUnit.js.map +1 -0
  141. package/lib/derivation.d.ts +232 -0
  142. package/lib/derivation.d.ts.map +1 -0
  143. package/lib/derivation.js +501 -0
  144. package/lib/derivation.js.map +1 -0
  145. package/lib/env.d.ts +30 -0
  146. package/lib/env.d.ts.map +1 -0
  147. package/lib/env.js +773 -0
  148. package/lib/env.js.map +1 -0
  149. package/lib/errors.d.ts +7 -0
  150. package/lib/errors.d.ts.map +1 -0
  151. package/lib/errors.js +7 -0
  152. package/lib/errors.js.map +1 -0
  153. package/lib/errors.test.d.ts +2 -0
  154. package/lib/errors.test.d.ts.map +1 -0
  155. package/lib/errors.test.js +20 -0
  156. package/lib/errors.test.js.map +1 -0
  157. package/lib/mocks/account.d.ts +25 -0
  158. package/lib/mocks/account.d.ts.map +1 -0
  159. package/lib/mocks/account.js +368 -0
  160. package/lib/mocks/account.js.map +1 -0
  161. package/lib/mocks/fixtures/nfts.d.ts +27 -0
  162. package/lib/mocks/fixtures/nfts.d.ts.map +1 -0
  163. package/lib/mocks/fixtures/nfts.js +398 -0
  164. package/lib/mocks/fixtures/nfts.js.map +1 -0
  165. package/lib/mocks/fixtures/nfts.test.d.ts +2 -0
  166. package/lib/mocks/fixtures/nfts.test.d.ts.map +1 -0
  167. package/lib/mocks/fixtures/nfts.test.js +20 -0
  168. package/lib/mocks/fixtures/nfts.test.js.map +1 -0
  169. package/lib/mocks/helpers.d.ts +15 -0
  170. package/lib/mocks/helpers.d.ts.map +1 -0
  171. package/lib/mocks/helpers.js +32 -0
  172. package/lib/mocks/helpers.js.map +1 -0
  173. package/lib/network.d.ts +5 -0
  174. package/lib/network.d.ts.map +1 -0
  175. package/lib/network.js +125 -0
  176. package/lib/network.js.map +1 -0
  177. package/lib/nft/nftId.d.ts +8 -0
  178. package/lib/nft/nftId.d.ts.map +1 -0
  179. package/lib/nft/nftId.js +34 -0
  180. package/lib/nft/nftId.js.map +1 -0
  181. package/lib/operation.d.ts +24 -0
  182. package/lib/operation.d.ts.map +1 -0
  183. package/lib/operation.js +183 -0
  184. package/lib/operation.js.map +1 -0
  185. package/lib/promise.d.ts +21 -0
  186. package/lib/promise.d.ts.map +1 -0
  187. package/lib/promise.js +187 -0
  188. package/lib/promise.js.map +1 -0
  189. package/lib/promise.test.d.ts +2 -0
  190. package/lib/promise.test.d.ts.map +1 -0
  191. package/lib/promise.test.js +72 -0
  192. package/lib/promise.test.js.map +1 -0
  193. package/lib/rangeDates.d.ts +29 -0
  194. package/lib/rangeDates.d.ts.map +1 -0
  195. package/lib/rangeDates.js +94 -0
  196. package/lib/rangeDates.js.map +1 -0
  197. package/lib/rangeDates.test.d.ts +2 -0
  198. package/lib/rangeDates.test.d.ts.map +1 -0
  199. package/lib/rangeDates.test.js +51 -0
  200. package/lib/rangeDates.test.js.map +1 -0
  201. package/lib/test-helpers/staticTime.d.ts +2 -0
  202. package/lib/test-helpers/staticTime.d.ts.map +1 -0
  203. package/lib/test-helpers/staticTime.js +10 -0
  204. package/lib/test-helpers/staticTime.js.map +1 -0
  205. package/lib/transaction/common.d.ts +26 -0
  206. package/lib/transaction/common.d.ts.map +1 -0
  207. package/lib/transaction/common.js +123 -0
  208. package/lib/transaction/common.js.map +1 -0
  209. package/lib-es/account/accountId.d.ts +16 -0
  210. package/lib-es/account/accountId.d.ts.map +1 -0
  211. package/lib-es/account/accountId.js +74 -0
  212. package/lib-es/account/accountId.js.map +1 -0
  213. package/lib-es/account/accountName.d.ts +14 -0
  214. package/lib-es/account/accountName.d.ts.map +1 -0
  215. package/lib-es/account/accountName.js +12 -0
  216. package/lib-es/account/accountName.js.map +1 -0
  217. package/lib-es/account/addAccounts.d.ts +35 -0
  218. package/lib-es/account/addAccounts.d.ts.map +1 -0
  219. package/lib-es/account/addAccounts.js +200 -0
  220. package/lib-es/account/addAccounts.js.map +1 -0
  221. package/lib-es/account/balanceHistoryCache.d.ts +25 -0
  222. package/lib-es/account/balanceHistoryCache.d.ts.map +1 -0
  223. package/lib-es/account/balanceHistoryCache.js +109 -0
  224. package/lib-es/account/balanceHistoryCache.js.map +1 -0
  225. package/lib-es/account/groupOperations.d.ts +17 -0
  226. package/lib-es/account/groupOperations.d.ts.map +1 -0
  227. package/lib-es/account/groupOperations.js +122 -0
  228. package/lib-es/account/groupOperations.js.map +1 -0
  229. package/lib-es/account/helpers.d.ts +44 -0
  230. package/lib-es/account/helpers.d.ts.map +1 -0
  231. package/lib-es/account/helpers.js +303 -0
  232. package/lib-es/account/helpers.js.map +1 -0
  233. package/lib-es/account/helpers.test.d.ts +2 -0
  234. package/lib-es/account/helpers.test.d.ts.map +1 -0
  235. package/lib-es/account/helpers.test.js +361 -0
  236. package/lib-es/account/helpers.test.js.map +1 -0
  237. package/lib-es/account/index.d.ts +11 -0
  238. package/lib-es/account/index.d.ts.map +1 -0
  239. package/lib-es/account/index.js +11 -0
  240. package/lib-es/account/index.js.map +1 -0
  241. package/lib-es/account/ordering.d.ts +10 -0
  242. package/lib-es/account/ordering.d.ts.map +1 -0
  243. package/lib-es/account/ordering.js +103 -0
  244. package/lib-es/account/ordering.js.map +1 -0
  245. package/lib-es/account/pending.d.ts +33 -0
  246. package/lib-es/account/pending.d.ts.map +1 -0
  247. package/lib-es/account/pending.js +59 -0
  248. package/lib-es/account/pending.js.map +1 -0
  249. package/lib-es/account/serialization.d.ts +6 -0
  250. package/lib-es/account/serialization.d.ts.map +1 -0
  251. package/lib-es/account/serialization.js +112 -0
  252. package/lib-es/account/serialization.js.map +1 -0
  253. package/lib-es/account/support.d.ts +9 -0
  254. package/lib-es/account/support.d.ts.map +1 -0
  255. package/lib-es/account/support.js +64 -0
  256. package/lib-es/account/support.js.map +1 -0
  257. package/lib-es/account.test.d.ts +2 -0
  258. package/lib-es/account.test.d.ts.map +1 -0
  259. package/lib-es/account.test.js +252 -0
  260. package/lib-es/account.test.js.map +1 -0
  261. package/lib-es/bot/bot-test-context.d.ts +3 -0
  262. package/lib-es/bot/bot-test-context.d.ts.map +1 -0
  263. package/lib-es/bot/bot-test-context.js +21 -0
  264. package/lib-es/bot/bot-test-context.js.map +1 -0
  265. package/lib-es/bot/bot-test-context.test.d.ts +2 -0
  266. package/lib-es/bot/bot-test-context.test.d.ts.map +1 -0
  267. package/lib-es/bot/bot-test-context.test.js +39 -0
  268. package/lib-es/bot/bot-test-context.test.js.map +1 -0
  269. package/lib-es/bot/formatters.d.ts +2 -0
  270. package/lib-es/bot/formatters.d.ts.map +1 -0
  271. package/lib-es/bot/formatters.js +27 -0
  272. package/lib-es/bot/formatters.js.map +1 -0
  273. package/lib-es/bot/specs.d.ts +50 -0
  274. package/lib-es/bot/specs.d.ts.map +1 -0
  275. package/lib-es/bot/specs.js +193 -0
  276. package/lib-es/bot/specs.js.map +1 -0
  277. package/lib-es/bot/types.d.ts +178 -0
  278. package/lib-es/bot/types.d.ts.map +1 -0
  279. package/lib-es/bot/types.js +2 -0
  280. package/lib-es/bot/types.js.map +1 -0
  281. package/lib-es/bridge/getAddressWrapper.d.ts +6 -0
  282. package/lib-es/bridge/getAddressWrapper.d.ts.map +1 -0
  283. package/lib-es/bridge/getAddressWrapper.js +25 -0
  284. package/lib-es/bridge/getAddressWrapper.js.map +1 -0
  285. package/lib-es/bridge/jsHelpers.d.ts +63 -0
  286. package/lib-es/bridge/jsHelpers.d.ts.map +1 -0
  287. package/lib-es/bridge/jsHelpers.js +562 -0
  288. package/lib-es/bridge/jsHelpers.js.map +1 -0
  289. package/lib-es/cache.d.ts +10 -0
  290. package/lib-es/cache.d.ts.map +1 -0
  291. package/lib-es/cache.js +93 -0
  292. package/lib-es/cache.js.map +1 -0
  293. package/lib-es/cross.d.ts +42 -0
  294. package/lib-es/cross.d.ts.map +1 -0
  295. package/lib-es/cross.js +244 -0
  296. package/lib-es/cross.js.map +1 -0
  297. package/lib-es/cross.test.d.ts +2 -0
  298. package/lib-es/cross.test.d.ts.map +1 -0
  299. package/lib-es/cross.test.js +97 -0
  300. package/lib-es/cross.test.js.map +1 -0
  301. package/lib-es/currencies/BigNumberToLocaleString.d.ts +8 -0
  302. package/lib-es/currencies/BigNumberToLocaleString.d.ts.map +1 -0
  303. package/lib-es/currencies/BigNumberToLocaleString.js +61 -0
  304. package/lib-es/currencies/BigNumberToLocaleString.js.map +1 -0
  305. package/lib-es/currencies/BigNumberToLocaleString.test.d.ts +2 -0
  306. package/lib-es/currencies/BigNumberToLocaleString.test.d.ts.map +1 -0
  307. package/lib-es/currencies/BigNumberToLocaleString.test.js +106 -0
  308. package/lib-es/currencies/BigNumberToLocaleString.test.js.map +1 -0
  309. package/lib-es/currencies/CurrencyURIScheme.d.ts +13 -0
  310. package/lib-es/currencies/CurrencyURIScheme.d.ts.map +1 -0
  311. package/lib-es/currencies/CurrencyURIScheme.js +116 -0
  312. package/lib-es/currencies/CurrencyURIScheme.js.map +1 -0
  313. package/lib-es/currencies/chopCurrencyUnitDecimals.d.ts +3 -0
  314. package/lib-es/currencies/chopCurrencyUnitDecimals.d.ts.map +1 -0
  315. package/lib-es/currencies/chopCurrencyUnitDecimals.js +25 -0
  316. package/lib-es/currencies/chopCurrencyUnitDecimals.js.map +1 -0
  317. package/lib-es/currencies/formatCurrencyUnit.d.ts +33 -0
  318. package/lib-es/currencies/formatCurrencyUnit.d.ts.map +1 -0
  319. package/lib-es/currencies/formatCurrencyUnit.js +121 -0
  320. package/lib-es/currencies/formatCurrencyUnit.js.map +1 -0
  321. package/lib-es/currencies/formatShort.d.ts +8 -0
  322. package/lib-es/currencies/formatShort.d.ts.map +1 -0
  323. package/lib-es/currencies/formatShort.js +20 -0
  324. package/lib-es/currencies/formatShort.js.map +1 -0
  325. package/lib-es/currencies/index.d.ts +13 -0
  326. package/lib-es/currencies/index.d.ts.map +1 -0
  327. package/lib-es/currencies/index.js +16 -0
  328. package/lib-es/currencies/index.js.map +1 -0
  329. package/lib-es/currencies/localeUtility.d.ts +8 -0
  330. package/lib-es/currencies/localeUtility.d.ts.map +1 -0
  331. package/lib-es/currencies/localeUtility.js +43 -0
  332. package/lib-es/currencies/localeUtility.js.map +1 -0
  333. package/lib-es/currencies/parseCurrencyUnit.d.ts +4 -0
  334. package/lib-es/currencies/parseCurrencyUnit.d.ts.map +1 -0
  335. package/lib-es/currencies/parseCurrencyUnit.js +14 -0
  336. package/lib-es/currencies/parseCurrencyUnit.js.map +1 -0
  337. package/lib-es/currencies/sanitizeValueString.d.ts +6 -0
  338. package/lib-es/currencies/sanitizeValueString.d.ts.map +1 -0
  339. package/lib-es/currencies/sanitizeValueString.js +52 -0
  340. package/lib-es/currencies/sanitizeValueString.js.map +1 -0
  341. package/lib-es/currencies/support.d.ts +8 -0
  342. package/lib-es/currencies/support.d.ts.map +1 -0
  343. package/lib-es/currencies/support.js +92 -0
  344. package/lib-es/currencies/support.js.map +1 -0
  345. package/lib-es/currencies/valueFromUnit.d.ts +9 -0
  346. package/lib-es/currencies/valueFromUnit.d.ts.map +1 -0
  347. package/lib-es/currencies/valueFromUnit.js +10 -0
  348. package/lib-es/currencies/valueFromUnit.js.map +1 -0
  349. package/lib-es/derivation.d.ts +232 -0
  350. package/lib-es/derivation.d.ts.map +1 -0
  351. package/lib-es/derivation.js +473 -0
  352. package/lib-es/derivation.js.map +1 -0
  353. package/lib-es/env.d.ts +30 -0
  354. package/lib-es/env.d.ts.map +1 -0
  355. package/lib-es/env.js +758 -0
  356. package/lib-es/env.js.map +1 -0
  357. package/lib-es/errors.d.ts +7 -0
  358. package/lib-es/errors.d.ts.map +1 -0
  359. package/lib-es/errors.js +4 -0
  360. package/lib-es/errors.js.map +1 -0
  361. package/lib-es/errors.test.d.ts +2 -0
  362. package/lib-es/errors.test.d.ts.map +1 -0
  363. package/lib-es/errors.test.js +18 -0
  364. package/lib-es/errors.test.js.map +1 -0
  365. package/lib-es/mocks/account.d.ts +25 -0
  366. package/lib-es/mocks/account.d.ts.map +1 -0
  367. package/lib-es/mocks/account.js +358 -0
  368. package/lib-es/mocks/account.js.map +1 -0
  369. package/lib-es/mocks/fixtures/nfts.d.ts +27 -0
  370. package/lib-es/mocks/fixtures/nfts.d.ts.map +1 -0
  371. package/lib-es/mocks/fixtures/nfts.js +390 -0
  372. package/lib-es/mocks/fixtures/nfts.js.map +1 -0
  373. package/lib-es/mocks/fixtures/nfts.test.d.ts +2 -0
  374. package/lib-es/mocks/fixtures/nfts.test.d.ts.map +1 -0
  375. package/lib-es/mocks/fixtures/nfts.test.js +18 -0
  376. package/lib-es/mocks/fixtures/nfts.test.js.map +1 -0
  377. package/lib-es/mocks/helpers.d.ts +15 -0
  378. package/lib-es/mocks/helpers.d.ts.map +1 -0
  379. package/lib-es/mocks/helpers.js +26 -0
  380. package/lib-es/mocks/helpers.js.map +1 -0
  381. package/lib-es/network.d.ts +5 -0
  382. package/lib-es/network.d.ts.map +1 -0
  383. package/lib-es/network.js +118 -0
  384. package/lib-es/network.js.map +1 -0
  385. package/lib-es/nft/nftId.d.ts +8 -0
  386. package/lib-es/nft/nftId.d.ts.map +1 -0
  387. package/lib-es/nft/nftId.js +29 -0
  388. package/lib-es/nft/nftId.js.map +1 -0
  389. package/lib-es/operation.d.ts +24 -0
  390. package/lib-es/operation.d.ts.map +1 -0
  391. package/lib-es/operation.js +168 -0
  392. package/lib-es/operation.js.map +1 -0
  393. package/lib-es/promise.d.ts +21 -0
  394. package/lib-es/promise.d.ts.map +1 -0
  395. package/lib-es/promise.js +179 -0
  396. package/lib-es/promise.js.map +1 -0
  397. package/lib-es/promise.test.d.ts +2 -0
  398. package/lib-es/promise.test.d.ts.map +1 -0
  399. package/lib-es/promise.test.js +70 -0
  400. package/lib-es/promise.test.js.map +1 -0
  401. package/lib-es/rangeDates.d.ts +29 -0
  402. package/lib-es/rangeDates.d.ts.map +1 -0
  403. package/lib-es/rangeDates.js +84 -0
  404. package/lib-es/rangeDates.js.map +1 -0
  405. package/lib-es/rangeDates.test.d.ts +2 -0
  406. package/lib-es/rangeDates.test.d.ts.map +1 -0
  407. package/lib-es/rangeDates.test.js +49 -0
  408. package/lib-es/rangeDates.test.js.map +1 -0
  409. package/lib-es/test-helpers/staticTime.d.ts +2 -0
  410. package/lib-es/test-helpers/staticTime.d.ts.map +1 -0
  411. package/lib-es/test-helpers/staticTime.js +5 -0
  412. package/lib-es/test-helpers/staticTime.js.map +1 -0
  413. package/lib-es/transaction/common.d.ts +26 -0
  414. package/lib-es/transaction/common.d.ts.map +1 -0
  415. package/lib-es/transaction/common.js +115 -0
  416. package/lib-es/transaction/common.js.map +1 -0
  417. package/package.json +113 -0
  418. package/src/__snapshots__/account.test.ts.snap +2065 -0
  419. package/src/__snapshots__/cross.test.ts.snap +57 -0
  420. package/src/account/accountId.ts +93 -0
  421. package/src/account/accountName.ts +25 -0
  422. package/src/account/addAccounts.ts +236 -0
  423. package/src/account/balanceHistoryCache.ts +146 -0
  424. package/src/account/groupOperations.ts +164 -0
  425. package/src/account/helpers.test.ts +441 -0
  426. package/src/account/helpers.ts +380 -0
  427. package/src/account/index.ts +10 -0
  428. package/src/account/ordering.ts +109 -0
  429. package/src/account/pending.ts +66 -0
  430. package/src/account/serialization.ts +189 -0
  431. package/src/account/support.ts +96 -0
  432. package/src/account.test.ts +237 -0
  433. package/src/bot/bot-test-context.test.ts +37 -0
  434. package/src/bot/bot-test-context.ts +24 -0
  435. package/src/bot/formatters.ts +22 -0
  436. package/src/bot/specs.ts +275 -0
  437. package/src/bot/types.ts +224 -0
  438. package/src/bridge/getAddressWrapper.ts +40 -0
  439. package/src/bridge/jsHelpers.ts +645 -0
  440. package/src/cache.ts +65 -0
  441. package/src/cross.test.ts +112 -0
  442. package/src/cross.ts +366 -0
  443. package/src/currencies/BigNumberToLocaleString.test.ts +155 -0
  444. package/src/currencies/BigNumberToLocaleString.ts +80 -0
  445. package/src/currencies/CurrencyURIScheme.ts +114 -0
  446. package/src/currencies/chopCurrencyUnitDecimals.ts +34 -0
  447. package/src/currencies/formatCurrencyUnit.ts +167 -0
  448. package/src/currencies/formatShort.ts +24 -0
  449. package/src/currencies/index.ts +78 -0
  450. package/src/currencies/localeUtility.ts +50 -0
  451. package/src/currencies/parseCurrencyUnit.ts +16 -0
  452. package/src/currencies/sanitizeValueString.ts +58 -0
  453. package/src/currencies/support.ts +107 -0
  454. package/src/currencies/valueFromUnit.ts +10 -0
  455. package/src/derivation.ts +595 -0
  456. package/src/env.ts +780 -0
  457. package/src/errors.test.ts +21 -0
  458. package/src/errors.ts +9 -0
  459. package/src/mocks/account.ts +476 -0
  460. package/src/mocks/fixtures/nfts.test.ts +25 -0
  461. package/src/mocks/fixtures/nfts.ts +432 -0
  462. package/src/mocks/helpers.ts +38 -0
  463. package/src/network.ts +135 -0
  464. package/src/nft/nftId.ts +26 -0
  465. package/src/operation.ts +212 -0
  466. package/src/promise.test.ts +20 -0
  467. package/src/promise.ts +101 -0
  468. package/src/rangeDates.test.ts +66 -0
  469. package/src/rangeDates.ts +96 -0
  470. package/src/test-helpers/staticTime.ts +4 -0
  471. package/src/transaction/common.ts +157 -0
@@ -0,0 +1,501 @@
1
+ "use strict";
2
+ var __assign = (this && this.__assign) || function () {
3
+ __assign = Object.assign || function(t) {
4
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
5
+ s = arguments[i];
6
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
+ t[p] = s[p];
8
+ }
9
+ return t;
10
+ };
11
+ return __assign.apply(this, arguments);
12
+ };
13
+ var __importDefault = (this && this.__importDefault) || function (mod) {
14
+ return (mod && mod.__esModule) ? mod : { "default": mod };
15
+ };
16
+ exports.__esModule = true;
17
+ exports.walletDerivation = exports.getDefaultPreferredNewAccountScheme = exports.getPreferredNewAccountScheme = exports.getDerivationModesForCurrency = exports.getSeedIdentifierDerivation = exports.runAccountDerivationScheme = exports.runDerivationScheme = exports.getDerivationScheme = exports.derivationModeSupportsIndex = exports.getAddressFormatDerivationMode = exports.getTagDerivationMode = exports.getPurposeDerivationMode = exports.getDerivationModeStartsAt = exports.isIterableDerivationMode = exports.isUnsplitDerivationMode = exports.isTaprootDerivationMode = exports.isNativeSegwitDerivationMode = exports.isSegwitDerivationMode = exports.isInvalidDerivationMode = exports.getMandatoryEmptyAccountSkip = exports.getAllDerivationModes = exports.asDerivationMode = void 0;
18
+ var invariant_1 = __importDefault(require("invariant"));
19
+ var rxjs_1 = require("rxjs");
20
+ var operators_1 = require("rxjs/operators");
21
+ var logs_1 = require("@ledgerhq/logs");
22
+ var errors_1 = require("@ledgerhq/errors");
23
+ var currencies_1 = require("./currencies");
24
+ var env_1 = require("./env");
25
+ var modes = Object.freeze({
26
+ // this is "default" by convention
27
+ "": {},
28
+ // MEW legacy derivation
29
+ ethM: {
30
+ mandatoryEmptyAccountSkip: 10,
31
+ overridesDerivation: "44'/60'/0'/<account>",
32
+ tag: "legacy"
33
+ },
34
+ // MetaMask style
35
+ ethMM: {
36
+ overridesDerivation: "44'/60'/0'/0/<account>",
37
+ skipFirst: true,
38
+ // already included in the normal bip44,
39
+ tag: "metamask"
40
+ },
41
+ // Deprecated and should no longer be used.
42
+ bch_on_bitcoin_segwit: {
43
+ overridesCoinType: 0,
44
+ isInvalid: true,
45
+ isSegwit: true,
46
+ purpose: 49,
47
+ addressFormat: "p2sh"
48
+ },
49
+ // many users have wrongly sent BTC on BCH paths
50
+ legacy_on_bch: {
51
+ overridesCoinType: 145,
52
+ isInvalid: true
53
+ },
54
+ // chrome app and LL wrongly used to derivate vertcoin on 128
55
+ vertcoin_128: {
56
+ tag: "legacy",
57
+ overridesCoinType: 128
58
+ },
59
+ vertcoin_128_segwit: {
60
+ tag: "legacy",
61
+ overridesCoinType: 128,
62
+ isSegwit: true,
63
+ purpose: 49,
64
+ addressFormat: "p2sh"
65
+ },
66
+ // MEW legacy derivation for eth
67
+ etcM: {
68
+ mandatoryEmptyAccountSkip: 10,
69
+ overridesDerivation: "44'/60'/160720'/0'/<account>",
70
+ tag: "legacy"
71
+ },
72
+ aeternity: {
73
+ overridesDerivation: "<account>"
74
+ },
75
+ // default derivation of tezbox offerred to users
76
+ tezbox: {
77
+ overridesDerivation: "44'/1729'/<account>'/0'"
78
+ },
79
+ tezosbip44h: {
80
+ tag: "galleon",
81
+ overridesDerivation: "44'/1729'/<account>'/0'/0'"
82
+ },
83
+ galleonL: {
84
+ tag: "legacy",
85
+ startsAt: 1,
86
+ overridesDerivation: "44'/1729'/0'/0'/<account>'"
87
+ },
88
+ tezboxL: {
89
+ tag: "legacy",
90
+ startsAt: 1,
91
+ overridesDerivation: "44'/1729'/0'/<account>'"
92
+ },
93
+ taproot: {
94
+ purpose: 86,
95
+ addressFormat: "bech32m",
96
+ tag: "taproot",
97
+ isSegwit: true,
98
+ isTaproot: true
99
+ },
100
+ native_segwit: {
101
+ purpose: 84,
102
+ addressFormat: "bech32",
103
+ tag: "native segwit",
104
+ isSegwit: true,
105
+ isNativeSegwit: true
106
+ },
107
+ segwit: {
108
+ isSegwit: true,
109
+ purpose: 49,
110
+ tag: "segwit",
111
+ addressFormat: "p2sh"
112
+ },
113
+ segwit_on_legacy: {
114
+ isSegwit: true,
115
+ purpose: 44,
116
+ addressFormat: "p2sh",
117
+ isInvalid: true
118
+ },
119
+ legacy_on_segwit: {
120
+ purpose: 49,
121
+ isInvalid: true
122
+ },
123
+ legacy_on_native_segwit: {
124
+ purpose: 84,
125
+ isInvalid: true
126
+ },
127
+ segwit_unsplit: {
128
+ isSegwit: true,
129
+ purpose: 49,
130
+ addressFormat: "p2sh",
131
+ isUnsplit: true,
132
+ tag: "segwit unsplit"
133
+ },
134
+ sep5: {
135
+ overridesDerivation: "44'/148'/<account>'"
136
+ },
137
+ unsplit: {
138
+ isUnsplit: true,
139
+ tag: "unsplit"
140
+ },
141
+ polkadotbip44: {
142
+ overridesDerivation: "44'/354'/<account>'/0'/<address>'"
143
+ },
144
+ gliflegacy: {
145
+ overridesDerivation: "44'/1'/0'/0/<account>",
146
+ tag: "legacy"
147
+ },
148
+ glif: {
149
+ overridesDerivation: "44'/461'/0'/0/<account>",
150
+ startsAt: 1,
151
+ tag: "third-party"
152
+ },
153
+ solanaMain: {
154
+ isNonIterable: true,
155
+ overridesDerivation: "44'/501'"
156
+ },
157
+ solanaSub: {
158
+ overridesDerivation: "44'/501'/<account>'"
159
+ },
160
+ hederaBip44: {
161
+ overridesDerivation: "44/3030"
162
+ },
163
+ cardano: {
164
+ purpose: 1852,
165
+ overridesDerivation: "1852'/1815'/<account>'/<node>/<address>"
166
+ },
167
+ nearbip44h: {
168
+ overridesDerivation: "44'/397'/0'/0'/<account>'",
169
+ mandatoryEmptyAccountSkip: 1
170
+ }
171
+ });
172
+ modes; // eslint-disable-line
173
+ // FIXME: CryptoCurrencyConfig was a flowtype we could not easily convert to ts so it has been deleted
174
+ // previous types: Partial<CryptoCurrencyConfig<DerivationMode[]>>
175
+ var legacyDerivations = {
176
+ aeternity: ["aeternity"],
177
+ bitcoin_cash: [],
178
+ bitcoin: ["legacy_on_bch"],
179
+ vertcoin: ["vertcoin_128", "vertcoin_128_segwit"],
180
+ ethereum_classic: ["etcM"],
181
+ tezos: ["galleonL", "tezboxL", "tezosbip44h", "tezbox"],
182
+ stellar: ["sep5"],
183
+ polkadot: ["polkadotbip44"],
184
+ hedera: ["hederaBip44"],
185
+ filecoin: ["gliflegacy", "glif"],
186
+ cardano: ["cardano"],
187
+ cardano_testnet: ["cardano"],
188
+ near: ["nearbip44h"]
189
+ };
190
+ var legacyDerivationsPerFamily = {
191
+ ethereum: ["ethM", "ethMM"]
192
+ };
193
+ var asDerivationMode = function (derivationMode) {
194
+ (0, invariant_1["default"])(derivationMode in modes, "not a derivationMode. Got: '%s'", derivationMode);
195
+ return derivationMode;
196
+ };
197
+ exports.asDerivationMode = asDerivationMode;
198
+ var getAllDerivationModes = function () {
199
+ return Object.keys(modes);
200
+ };
201
+ exports.getAllDerivationModes = getAllDerivationModes;
202
+ var getMandatoryEmptyAccountSkip = function (derivationMode) {
203
+ return modes[derivationMode]
204
+ .mandatoryEmptyAccountSkip || 0;
205
+ };
206
+ exports.getMandatoryEmptyAccountSkip = getMandatoryEmptyAccountSkip;
207
+ var isInvalidDerivationMode = function (derivationMode) {
208
+ return modes[derivationMode].isInvalid || false;
209
+ };
210
+ exports.isInvalidDerivationMode = isInvalidDerivationMode;
211
+ var isSegwitDerivationMode = function (derivationMode) {
212
+ return modes[derivationMode].isSegwit || false;
213
+ };
214
+ exports.isSegwitDerivationMode = isSegwitDerivationMode;
215
+ var isNativeSegwitDerivationMode = function (derivationMode) {
216
+ return modes[derivationMode].isNativeSegwit ||
217
+ false;
218
+ };
219
+ exports.isNativeSegwitDerivationMode = isNativeSegwitDerivationMode;
220
+ var isTaprootDerivationMode = function (derivationMode) {
221
+ return modes[derivationMode].isTaproot || false;
222
+ };
223
+ exports.isTaprootDerivationMode = isTaprootDerivationMode;
224
+ var isUnsplitDerivationMode = function (derivationMode) {
225
+ return modes[derivationMode].isUnsplit || false;
226
+ };
227
+ exports.isUnsplitDerivationMode = isUnsplitDerivationMode;
228
+ var isIterableDerivationMode = function (derivationMode) {
229
+ return !modes[derivationMode].isNonIterable;
230
+ };
231
+ exports.isIterableDerivationMode = isIterableDerivationMode;
232
+ var getDerivationModeStartsAt = function (derivationMode) { return modes[derivationMode].startsAt || 0; };
233
+ exports.getDerivationModeStartsAt = getDerivationModeStartsAt;
234
+ var getPurposeDerivationMode = function (derivationMode) { return modes[derivationMode].purpose || 44; };
235
+ exports.getPurposeDerivationMode = getPurposeDerivationMode;
236
+ var getTagDerivationMode = function (currency, derivationMode) {
237
+ var mode = modes[derivationMode];
238
+ if (mode.tag) {
239
+ return mode.tag;
240
+ }
241
+ if (mode.isInvalid) {
242
+ return "custom";
243
+ }
244
+ if (currency.supportsSegwit && !(0, exports.isSegwitDerivationMode)(derivationMode)) {
245
+ return "legacy";
246
+ }
247
+ return null;
248
+ };
249
+ exports.getTagDerivationMode = getTagDerivationMode;
250
+ var getAddressFormatDerivationMode = function (derivationMode) {
251
+ return modes[derivationMode].addressFormat ||
252
+ "legacy";
253
+ };
254
+ exports.getAddressFormatDerivationMode = getAddressFormatDerivationMode;
255
+ var derivationModeSupportsIndex = function (derivationMode, index) {
256
+ var mode = modes[derivationMode];
257
+ if (mode.skipFirst && index === 0)
258
+ return false;
259
+ return true;
260
+ };
261
+ exports.derivationModeSupportsIndex = derivationModeSupportsIndex;
262
+ var currencyForceCoinType = {
263
+ vertcoin: true
264
+ };
265
+ /**
266
+ * return a ledger-lib-core compatible DerivationScheme format
267
+ * for a given currency and derivationMode (you can pass an Account because same shape)
268
+ */
269
+ var getDerivationScheme = function (_a) {
270
+ var derivationMode = _a.derivationMode, currency = _a.currency;
271
+ var _b = modes[derivationMode], overridesDerivation = _b.overridesDerivation, overridesCoinType = _b.overridesCoinType;
272
+ if (overridesDerivation)
273
+ return overridesDerivation;
274
+ var splitFrom = (0, exports.isUnsplitDerivationMode)(derivationMode) && currency.forkedFrom;
275
+ var coinType = splitFrom
276
+ ? (0, currencies_1.getCryptoCurrencyById)(splitFrom).coinType
277
+ : typeof overridesCoinType === "number"
278
+ ? overridesCoinType
279
+ : currencyForceCoinType
280
+ ? currency.coinType
281
+ : "<coin_type>";
282
+ var purpose = (0, exports.getPurposeDerivationMode)(derivationMode);
283
+ return "".concat(purpose, "'/").concat(coinType, "'/<account>'/<node>/<address>");
284
+ };
285
+ exports.getDerivationScheme = getDerivationScheme;
286
+ // Execute a derivation scheme
287
+ var runDerivationScheme = function (derivationScheme, _a, opts) {
288
+ var coinType = _a.coinType;
289
+ if (opts === void 0) { opts = {}; }
290
+ return derivationScheme
291
+ .replace("<coin_type>", String(coinType))
292
+ .replace("<account>", String(opts.account || 0))
293
+ .replace("<node>", String(opts.node || 0))
294
+ .replace("<address>", String(opts.address || 0));
295
+ };
296
+ exports.runDerivationScheme = runDerivationScheme;
297
+ // execute the derivation on the account part of the scheme
298
+ var runAccountDerivationScheme = function (scheme, currency, opts) {
299
+ if (opts === void 0) { opts = {}; }
300
+ return (0, exports.runDerivationScheme)(scheme, currency, __assign(__assign({}, opts), { address: "_", node: "_" })).replace(/[_/]+$/, "");
301
+ };
302
+ exports.runAccountDerivationScheme = runAccountDerivationScheme;
303
+ var disableBIP44 = {
304
+ aeternity: true,
305
+ tezos: true,
306
+ // current workaround, device app does not seem to support bip44
307
+ stellar: true,
308
+ polkadot: true,
309
+ solana: true,
310
+ hedera: true,
311
+ cardano: true,
312
+ cardano_testnet: true,
313
+ near: true
314
+ };
315
+ var seedIdentifierPath = {
316
+ neo: function (_a) {
317
+ var purpose = _a.purpose, coinType = _a.coinType;
318
+ return "".concat(purpose, "'/").concat(coinType, "'/0'/0/0");
319
+ },
320
+ filecoin: function (_a) {
321
+ var purpose = _a.purpose, coinType = _a.coinType;
322
+ return "".concat(purpose, "'/").concat(coinType, "'/0'/0/0");
323
+ },
324
+ solana: function (_a) {
325
+ var purpose = _a.purpose, coinType = _a.coinType;
326
+ return "".concat(purpose, "'/").concat(coinType, "'");
327
+ },
328
+ hedera: function (_a) {
329
+ var purpose = _a.purpose, coinType = _a.coinType;
330
+ return "".concat(purpose, "/").concat(coinType);
331
+ },
332
+ cardano: function (_a) {
333
+ var purpose = _a.purpose, coinType = _a.coinType;
334
+ return "".concat(purpose, "'/").concat(coinType, "'/0'/0/0");
335
+ },
336
+ cardano_testnet: function (_a) {
337
+ var purpose = _a.purpose, coinType = _a.coinType;
338
+ return "".concat(purpose, "'/").concat(coinType, "'/0'/0/0");
339
+ },
340
+ near: function (_a) {
341
+ var purpose = _a.purpose, coinType = _a.coinType;
342
+ return "".concat(purpose, "'/").concat(coinType, "'/0'/0'/0'");
343
+ },
344
+ _: function (_a) {
345
+ var purpose = _a.purpose, coinType = _a.coinType;
346
+ return "".concat(purpose, "'/").concat(coinType, "'/0'");
347
+ }
348
+ };
349
+ var getSeedIdentifierDerivation = function (currency, derivationMode) {
350
+ var unsplitFork = (0, exports.isUnsplitDerivationMode)(derivationMode)
351
+ ? currency.forkedFrom
352
+ : null;
353
+ var purpose = (0, exports.getPurposeDerivationMode)(derivationMode);
354
+ var coinType = (unsplitFork
355
+ ? (0, currencies_1.getCryptoCurrencyById)(unsplitFork)
356
+ : currency).coinType;
357
+ var f = seedIdentifierPath[currency.id] || seedIdentifierPath._;
358
+ return f({
359
+ purpose: purpose,
360
+ coinType: coinType
361
+ });
362
+ };
363
+ exports.getSeedIdentifierDerivation = getSeedIdentifierDerivation;
364
+ // return an array of ways to derivate, by convention the latest is the standard one.
365
+ var getDerivationModesForCurrency = function (currency) {
366
+ var all = [];
367
+ if (currency.family in legacyDerivationsPerFamily) {
368
+ all = all.concat(legacyDerivationsPerFamily[currency.family]);
369
+ }
370
+ if (currency.id in legacyDerivations) {
371
+ all = all.concat(legacyDerivations[currency.id]);
372
+ }
373
+ if (currency.forkedFrom) {
374
+ all.push("unsplit");
375
+ if (currency.supportsSegwit) {
376
+ all.push("segwit_unsplit");
377
+ }
378
+ }
379
+ if (currency.supportsSegwit) {
380
+ all.push("segwit_on_legacy");
381
+ all.push("legacy_on_segwit");
382
+ all.push("legacy_on_native_segwit");
383
+ }
384
+ if (currency.supportsNativeSegwit) {
385
+ all.push("native_segwit");
386
+ }
387
+ // taproot logic. FIXME should move per family
388
+ if (currency.family === "bitcoin") {
389
+ if (currency.id === "bitcoin" || currency.id === "bitcoin_testnet") {
390
+ all.push("taproot");
391
+ }
392
+ }
393
+ if (currency.supportsSegwit) {
394
+ all.push("segwit");
395
+ }
396
+ if (!disableBIP44[currency.id]) {
397
+ all.push("");
398
+ }
399
+ if (currency.family === "solana") {
400
+ all.push("solanaMain", "solanaSub");
401
+ }
402
+ if (!(0, env_1.getEnv)("SCAN_FOR_INVALID_PATHS")) {
403
+ return all.filter(function (a) { return !(0, exports.isInvalidDerivationMode)(a); });
404
+ }
405
+ return all;
406
+ };
407
+ exports.getDerivationModesForCurrency = getDerivationModesForCurrency;
408
+ var preferredList = [
409
+ "native_segwit",
410
+ "taproot",
411
+ "segwit",
412
+ "",
413
+ ];
414
+ // null => no settings
415
+ // [ .. ]
416
+ var getPreferredNewAccountScheme = function (currency) {
417
+ if (currency.family !== "bitcoin")
418
+ return null;
419
+ var derivationsModes = (0, exports.getDerivationModesForCurrency)(currency);
420
+ var list = preferredList.filter(function (p) {
421
+ return derivationsModes.includes(p);
422
+ });
423
+ if (list.length === 1)
424
+ return null;
425
+ return list;
426
+ };
427
+ exports.getPreferredNewAccountScheme = getPreferredNewAccountScheme;
428
+ var getDefaultPreferredNewAccountScheme = function (currency) {
429
+ var list = (0, exports.getPreferredNewAccountScheme)(currency);
430
+ return list && list[0];
431
+ };
432
+ exports.getDefaultPreferredNewAccountScheme = getDefaultPreferredNewAccountScheme;
433
+ function walletDerivation(_a) {
434
+ var currency = _a.currency, derivationMode = _a.derivationMode, derivateAddress = _a.derivateAddress, stepAddress = _a.stepAddress, shouldDerivesOnAccount = _a.shouldDerivesOnAccount;
435
+ var path = (0, exports.getSeedIdentifierDerivation)(currency, derivationMode);
436
+ return (0, rxjs_1.defer)(function () {
437
+ return derivateAddress({
438
+ currency: currency,
439
+ path: path,
440
+ derivationMode: derivationMode
441
+ }).pipe((0, operators_1.catchError)(function (e) {
442
+ if (e instanceof errors_1.TransportStatusError ||
443
+ e instanceof errors_1.UserRefusedAddress) {
444
+ (0, logs_1.log)("scanAccounts", "ignore derivationMode=" + derivationMode);
445
+ }
446
+ return (0, rxjs_1.empty)();
447
+ }));
448
+ }).pipe((0, operators_1.switchMap)(function (parentDerivation) {
449
+ var seedIdentifier = parentDerivation.publicKey;
450
+ var emptyCount = 0;
451
+ var mandatoryEmptyAccountSkip = (0, exports.getMandatoryEmptyAccountSkip)(derivationMode);
452
+ var derivationScheme = (0, exports.getDerivationScheme)({
453
+ derivationMode: derivationMode,
454
+ currency: currency
455
+ });
456
+ var stopAt = (0, exports.isIterableDerivationMode)(derivationMode) ? 255 : 1;
457
+ var startsAt = (0, exports.getDerivationModeStartsAt)(derivationMode);
458
+ return (0, rxjs_1.range)(startsAt, stopAt - startsAt).pipe(
459
+ // derivate addresses/xpubs
460
+ (0, operators_1.concatMap)(function (index) {
461
+ if (!(0, exports.derivationModeSupportsIndex)(derivationMode, index)) {
462
+ return (0, rxjs_1.empty)();
463
+ }
464
+ var path = shouldDerivesOnAccount
465
+ ? (0, exports.runAccountDerivationScheme)(derivationScheme, currency, {
466
+ account: index
467
+ })
468
+ : (0, exports.runDerivationScheme)(derivationScheme, currency, {
469
+ account: index
470
+ });
471
+ return derivateAddress({
472
+ currency: currency,
473
+ path: path,
474
+ derivationMode: derivationMode
475
+ }).pipe((0, operators_1.map)(function (accountDerivation) { return ({
476
+ parentDerivation: parentDerivation,
477
+ accountDerivation: accountDerivation,
478
+ index: index
479
+ }); }));
480
+ }), // do action with these derivations (e.g. synchronize)
481
+ (0, operators_1.concatMap)(function (_a) {
482
+ var parentDerivation = _a.parentDerivation, accountDerivation = _a.accountDerivation, index = _a.index;
483
+ return stepAddress({
484
+ index: index,
485
+ parentDerivation: parentDerivation,
486
+ accountDerivation: accountDerivation,
487
+ derivationMode: derivationMode,
488
+ shouldSkipEmpty: emptyCount < mandatoryEmptyAccountSkip,
489
+ seedIdentifier: seedIdentifier
490
+ });
491
+ }), // take until the list is complete (based on criteria defined by stepAddress)
492
+ // $FlowFixMe
493
+ (0, operators_1.takeWhile)(function (r) { return !r.complete; }, true), // emit just the results
494
+ (0, operators_1.concatMap)(function (_a) {
495
+ var result = _a.result;
496
+ return (result ? (0, rxjs_1.of)(result) : (0, rxjs_1.empty)());
497
+ }));
498
+ }));
499
+ }
500
+ exports.walletDerivation = walletDerivation;
501
+ //# sourceMappingURL=derivation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"derivation.js","sourceRoot":"","sources":["../src/derivation.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,wDAAkC;AAClC,6BAA2D;AAC3D,4CAMwB;AACxB,uCAAqC;AACrC,2CAA4E;AAE5E,2CAAqD;AACrD,6BAA+B;AA4C/B,IAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC;IAC1B,kCAAkC;IAClC,EAAE,EAAE,EAAE;IACN,wBAAwB;IACxB,IAAI,EAAE;QACJ,yBAAyB,EAAE,EAAE;QAC7B,mBAAmB,EAAE,sBAAsB;QAC3C,GAAG,EAAE,QAAQ;KACd;IACD,iBAAiB;IACjB,KAAK,EAAE;QACL,mBAAmB,EAAE,wBAAwB;QAC7C,SAAS,EAAE,IAAI;QACf,wCAAwC;QACxC,GAAG,EAAE,UAAU;KAChB;IACD,2CAA2C;IAC3C,qBAAqB,EAAE;QACrB,iBAAiB,EAAE,CAAC;QACpB,SAAS,EAAE,IAAI;QACf,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,MAAM;KACtB;IACD,gDAAgD;IAChD,aAAa,EAAE;QACb,iBAAiB,EAAE,GAAG;QACtB,SAAS,EAAE,IAAI;KAChB;IACD,6DAA6D;IAC7D,YAAY,EAAE;QACZ,GAAG,EAAE,QAAQ;QACb,iBAAiB,EAAE,GAAG;KACvB;IACD,mBAAmB,EAAE;QACnB,GAAG,EAAE,QAAQ;QACb,iBAAiB,EAAE,GAAG;QACtB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,MAAM;KACtB;IACD,gCAAgC;IAChC,IAAI,EAAE;QACJ,yBAAyB,EAAE,EAAE;QAC7B,mBAAmB,EAAE,8BAA8B;QACnD,GAAG,EAAE,QAAQ;KACd;IACD,SAAS,EAAE;QACT,mBAAmB,EAAE,WAAW;KACjC;IACD,iDAAiD;IACjD,MAAM,EAAE;QACN,mBAAmB,EAAE,yBAAyB;KAC/C;IACD,WAAW,EAAE;QACX,GAAG,EAAE,SAAS;QACd,mBAAmB,EAAE,4BAA4B;KAClD;IACD,QAAQ,EAAE;QACR,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,CAAC;QACX,mBAAmB,EAAE,4BAA4B;KAClD;IACD,OAAO,EAAE;QACP,GAAG,EAAE,QAAQ;QACb,QAAQ,EAAE,CAAC;QACX,mBAAmB,EAAE,yBAAyB;KAC/C;IACD,OAAO,EAAE;QACP,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,SAAS;QACxB,GAAG,EAAE,SAAS;QACd,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,IAAI;KAChB;IACD,aAAa,EAAE;QACb,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,QAAQ;QACvB,GAAG,EAAE,eAAe;QACpB,QAAQ,EAAE,IAAI;QACd,cAAc,EAAE,IAAI;KACrB;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,GAAG,EAAE,QAAQ;QACb,aAAa,EAAE,MAAM;KACtB;IACD,gBAAgB,EAAE;QAChB,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,IAAI;KAChB;IACD,gBAAgB,EAAE;QAChB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,IAAI;KAChB;IACD,uBAAuB,EAAE;QACvB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,IAAI;KAChB;IACD,cAAc,EAAE;QACd,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,EAAE;QACX,aAAa,EAAE,MAAM;QACrB,SAAS,EAAE,IAAI;QACf,GAAG,EAAE,gBAAgB;KACtB;IACD,IAAI,EAAE;QACJ,mBAAmB,EAAE,qBAAqB;KAC3C;IACD,OAAO,EAAE;QACP,SAAS,EAAE,IAAI;QACf,GAAG,EAAE,SAAS;KACf;IACD,aAAa,EAAE;QACb,mBAAmB,EAAE,mCAAmC;KACzD;IACD,UAAU,EAAE;QACV,mBAAmB,EAAE,uBAAuB;QAC5C,GAAG,EAAE,QAAQ;KACd;IACD,IAAI,EAAE;QACJ,mBAAmB,EAAE,yBAAyB;QAC9C,QAAQ,EAAE,CAAC;QACX,GAAG,EAAE,aAAa;KACnB;IACD,UAAU,EAAE;QACV,aAAa,EAAE,IAAI;QACnB,mBAAmB,EAAE,UAAU;KAChC;IACD,SAAS,EAAE;QACT,mBAAmB,EAAE,qBAAqB;KAC3C;IACD,WAAW,EAAE;QACX,mBAAmB,EAAE,SAAS;KAC/B;IACD,OAAO,EAAE;QACP,OAAO,EAAE,IAAI;QACb,mBAAmB,EAAE,yCAAyC;KAC/D;IACD,UAAU,EAAE;QACV,mBAAmB,EAAE,2BAA2B;QAChD,yBAAyB,EAAE,CAAC;KAC7B;CACF,CAAC,CAAC;AACH,KAAyC,CAAC,CAAC,sBAAsB;AAEjE,sGAAsG;AACtG,kEAAkE;AAClE,IAAM,iBAAiB,GAAgD;IACrE,SAAS,EAAE,CAAC,WAAW,CAAC;IACxB,YAAY,EAAE,EAAE;IAChB,OAAO,EAAE,CAAC,eAAe,CAAC;IAC1B,QAAQ,EAAE,CAAC,cAAc,EAAE,qBAAqB,CAAC;IACjD,gBAAgB,EAAE,CAAC,MAAM,CAAC;IAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,SAAS,EAAE,aAAa,EAAE,QAAQ,CAAC;IACvD,OAAO,EAAE,CAAC,MAAM,CAAC;IACjB,QAAQ,EAAE,CAAC,eAAe,CAAC;IAC3B,MAAM,EAAE,CAAC,aAAa,CAAC;IACvB,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC;IAChC,OAAO,EAAE,CAAC,SAAS,CAAC;IACpB,eAAe,EAAE,CAAC,SAAS,CAAC;IAC5B,IAAI,EAAE,CAAC,YAAY,CAAC;CACrB,CAAC;AAEF,IAAM,0BAA0B,GAAqC;IACnE,QAAQ,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;CAC5B,CAAC;AAEK,IAAM,gBAAgB,GAAG,UAAC,cAAsB;IACrD,IAAA,sBAAS,EACP,cAAc,IAAI,KAAK,EACvB,iCAAiC,EACjC,cAAc,CACf,CAAC;IACF,OAAO,cAAgC,CAAC;AAC1C,CAAC,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AACK,IAAM,qBAAqB,GAAG;IACnC,OAAA,MAAM,CAAC,IAAI,CAAC,KAAK,CAAqB;AAAtC,CAAsC,CAAC;AAD5B,QAAA,qBAAqB,yBACO;AAClC,IAAM,4BAA4B,GAAG,UAC1C,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA2C;SAC7D,yBAAyB,IAAI,CAAC;AADjC,CACiC,CAAC;AAJvB,QAAA,4BAA4B,gCAIL;AAC7B,IAAM,uBAAuB,GAAG,UACrC,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA4B,CAAC,SAAS,IAAI,KAAK;AAApE,CAAoE,CAAC;AAH1D,QAAA,uBAAuB,2BAGmC;AAChE,IAAM,sBAAsB,GAAG,UACpC,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA2B,CAAC,QAAQ,IAAI,KAAK;AAAlE,CAAkE,CAAC;AAHxD,QAAA,sBAAsB,0BAGkC;AAC9D,IAAM,4BAA4B,GAAG,UAC1C,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAAiC,CAAC,cAAc;QACrE,KAAK;AADL,CACK,CAAC;AAJK,QAAA,4BAA4B,gCAIjC;AACD,IAAM,uBAAuB,GAAG,UACrC,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA4B,CAAC,SAAS,IAAI,KAAK;AAApE,CAAoE,CAAC;AAH1D,QAAA,uBAAuB,2BAGmC;AAEhE,IAAM,uBAAuB,GAAG,UACrC,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA4B,CAAC,SAAS,IAAI,KAAK;AAApE,CAAoE,CAAC;AAH1D,QAAA,uBAAuB,2BAGmC;AAChE,IAAM,wBAAwB,GAAG,UACtC,cAA8B;IAE9B,OAAA,CAAE,KAAK,CAAC,cAAc,CAAgC,CAAC,aAAa;AAApE,CAAoE,CAAC;AAH1D,QAAA,wBAAwB,4BAGkC;AAChE,IAAM,yBAAyB,GAAG,UACvC,cAA8B,IACnB,OAAC,KAAK,CAAC,cAAc,CAA0B,CAAC,QAAQ,IAAI,CAAC,EAA7D,CAA6D,CAAC;AAF9D,QAAA,yBAAyB,6BAEqC;AACpE,IAAM,wBAAwB,GAAG,UACtC,cAA8B,IACnB,OAAC,KAAK,CAAC,cAAc,CAAyB,CAAC,OAAO,IAAI,EAAE,EAA5D,CAA4D,CAAC;AAF7D,QAAA,wBAAwB,4BAEqC;AACnE,IAAM,oBAAoB,GAAG,UAClC,QAAwB,EACxB,cAA8B;IAE9B,IAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAiC,CAAC;IAEnE,IAAI,IAAI,CAAC,GAAG,EAAE;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC;KACjB;IAED,IAAI,IAAI,CAAC,SAAS,EAAE;QAClB,OAAO,QAAQ,CAAC;KACjB;IAED,IAAI,QAAQ,CAAC,cAAc,IAAI,CAAC,IAAA,8BAAsB,EAAC,cAAc,CAAC,EAAE;QACtE,OAAO,QAAQ,CAAC;KACjB;IAED,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAnBW,QAAA,oBAAoB,wBAmB/B;AACK,IAAM,8BAA8B,GAAG,UAC5C,cAA8B;IAE9B,OAAC,KAAK,CAAC,cAAc,CAA+B,CAAC,aAAa;QAClE,QAAQ;AADR,CACQ,CAAC;AAJE,QAAA,8BAA8B,kCAIhC;AACJ,IAAM,2BAA2B,GAAG,UACzC,cAA8B,EAC9B,KAAa;IAEb,IAAM,IAAI,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC;IACnC,IAAK,IAA+B,CAAC,SAAS,IAAI,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC5E,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAPW,QAAA,2BAA2B,+BAOtC;AACF,IAAM,qBAAqB,GAAG;IAC5B,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF;;;GAGG;AACI,IAAM,mBAAmB,GAAG,UAAC,EAMnC;QALC,cAAc,oBAAA,EACd,QAAQ,cAAA;IAKF,IAAA,KAA6C,KAAK,CAAC,cAAc,CAGtE,EAHO,mBAAmB,yBAAA,EAAE,iBAAiB,uBAG7C,CAAC;IACF,IAAI,mBAAmB;QAAE,OAAO,mBAAmB,CAAC;IACpD,IAAM,SAAS,GACb,IAAA,+BAAuB,EAAC,cAAc,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC;IACjE,IAAM,QAAQ,GAAG,SAAS;QACxB,CAAC,CAAC,IAAA,kCAAqB,EAAC,SAAS,CAAC,CAAC,QAAQ;QAC3C,CAAC,CAAC,OAAO,iBAAiB,KAAK,QAAQ;YACvC,CAAC,CAAC,iBAAiB;YACnB,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,QAAQ,CAAC,QAAQ;gBACnB,CAAC,CAAC,aAAa,CAAC;IAClB,IAAM,OAAO,GAAG,IAAA,gCAAwB,EAAC,cAAc,CAAC,CAAC;IACzD,OAAO,UAAG,OAAO,eAAK,QAAQ,kCAA+B,CAAC;AAChE,CAAC,CAAC;AAvBW,QAAA,mBAAmB,uBAuB9B;AACF,8BAA8B;AACvB,IAAM,mBAAmB,GAAG,UACjC,gBAAwB,EACxB,EAIC,EACD,IAIM;QARJ,QAAQ,cAAA;IAIV,qBAAA,EAAA,SAIM;IAEN,OAAA,gBAAgB;SACb,OAAO,CAAC,aAAa,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;SACxC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;SAC/C,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC;SACzC,OAAO,CAAC,WAAW,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;AAJlD,CAIkD,CAAC;AAjBxC,QAAA,mBAAmB,uBAiBqB;AACrD,2DAA2D;AACpD,IAAM,0BAA0B,GAAG,UACxC,MAAc,EACd,QAEC,EACD,IAEM;IAFN,qBAAA,EAAA,SAEM;IAEN,OAAA,IAAA,2BAAmB,EAAC,MAAM,EAAE,QAAQ,wBAC/B,IAAI,KACP,OAAO,EAAE,GAAG,EACZ,IAAI,EAAE,GAAG,IACT,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC;AAJxB,CAIwB,CAAC;AAbd,QAAA,0BAA0B,8BAaZ;AAC3B,IAAM,YAAY,GAA4B;IAC5C,SAAS,EAAE,IAAI;IACf,KAAK,EAAE,IAAI;IACX,gEAAgE;IAChE,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,MAAM,EAAE,IAAI;IACZ,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,eAAe,EAAE,IAAI;IACrB,IAAI,EAAE,IAAI;CACX,CAAC;AAMF,IAAM,kBAAkB,GAA+B;IACrD,GAAG,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,aAAU;IAAjC,CAAiC;IACjE,QAAQ,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,aAAU;IAAjC,CAAiC;IACtE,MAAM,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,MAAG;IAA1B,CAA0B;IAC7D,MAAM,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,cAAI,QAAQ,CAAE;IAAxB,CAAwB;IAC3D,OAAO,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,aAAU;IAAjC,CAAiC;IACrE,eAAe,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,aAAU;IAAjC,CAAiC;IAC7E,IAAI,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,eAAY;IAAnC,CAAmC;IACpE,CAAC,EAAE,UAAC,EAAqB;YAAnB,OAAO,aAAA,EAAE,QAAQ,cAAA;QAAO,OAAA,UAAG,OAAO,eAAK,QAAQ,SAAM;IAA7B,CAA6B;CAC5D,CAAC;AACK,IAAM,2BAA2B,GAAG,UACzC,QAAwB,EACxB,cAA8B;IAE9B,IAAM,WAAW,GAAG,IAAA,+BAAuB,EAAC,cAAc,CAAC;QACzD,CAAC,CAAC,QAAQ,CAAC,UAAU;QACrB,CAAC,CAAC,IAAI,CAAC;IACT,IAAM,OAAO,GAAG,IAAA,gCAAwB,EAAC,cAAc,CAAC,CAAC;IACjD,IAAA,QAAQ,GAAK,CAAA,WAAW;QAC9B,CAAC,CAAC,IAAA,kCAAqB,EAAC,WAAW,CAAC;QACpC,CAAC,CAAC,QAAQ,CAAA,SAFI,CAEH;IACb,IAAM,CAAC,GAAG,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC;IAClE,OAAO,CAAC,CAAC;QACP,OAAO,SAAA;QACP,QAAQ,UAAA;KACT,CAAC,CAAC;AACL,CAAC,CAAC;AAhBW,QAAA,2BAA2B,+BAgBtC;AACF,qFAAqF;AAC9E,IAAM,6BAA6B,GAAG,UAC3C,QAAwB;IAExB,IAAI,GAAG,GAAqB,EAAE,CAAC;IAC/B,IAAI,QAAQ,CAAC,MAAM,IAAI,0BAA0B,EAAE;QACjD,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,0BAA0B,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC;KAC/D;IACD,IAAI,QAAQ,CAAC,EAAE,IAAI,iBAAiB,EAAE;QACpC,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;KAClD;IACD,IAAI,QAAQ,CAAC,UAAU,EAAE;QACvB,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEpB,IAAI,QAAQ,CAAC,cAAc,EAAE;YAC3B,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;SAC5B;KACF;IAED,IAAI,QAAQ,CAAC,cAAc,EAAE;QAC3B,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAC7B,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;KACrC;IAED,IAAI,QAAQ,CAAC,oBAAoB,EAAE;QACjC,GAAG,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;KAC3B;IAED,8CAA8C;IAC9C,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE;QACjC,IAAI,QAAQ,CAAC,EAAE,KAAK,SAAS,IAAI,QAAQ,CAAC,EAAE,KAAK,iBAAiB,EAAE;YAClE,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SACrB;KACF;IAED,IAAI,QAAQ,CAAC,cAAc,EAAE;QAC3B,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;KACpB;IAED,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;QAC9B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;KACd;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,QAAQ,EAAE;QAChC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC;KACrC;IAED,IAAI,CAAC,IAAA,YAAM,EAAC,wBAAwB,CAAC,EAAE;QACrC,OAAO,GAAG,CAAC,MAAM,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,IAAA,+BAAuB,EAAC,CAAC,CAAC,EAA3B,CAA2B,CAAC,CAAC;KACvD;IAED,OAAO,GAAG,CAAC;AACb,CAAC,CAAC;AApDW,QAAA,6BAA6B,iCAoDxC;AACF,IAAM,aAAa,GAAqB;IACtC,eAAe;IACf,SAAS;IACT,QAAQ;IACR,EAAE;CACH,CAAC;AACF,sBAAsB;AACtB,SAAS;AACF,IAAM,4BAA4B,GAAG,UAC1C,QAAwB;IAExB,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IAC/C,IAAM,gBAAgB,GAAG,IAAA,qCAA6B,EAAC,QAAQ,CAAC,CAAC;IACjE,IAAM,IAAI,GAAG,aAAa,CAAC,MAAM,CAAC,UAAC,CAAC;QAClC,OAAA,gBAAgB,CAAC,QAAQ,CAAC,CAAmB,CAAC;IAA9C,CAA8C,CAC/C,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IACnC,OAAO,IAAwB,CAAC;AAClC,CAAC,CAAC;AAVW,QAAA,4BAA4B,gCAUvC;AACK,IAAM,mCAAmC,GAAG,UACjD,QAAwB;IAExB,IAAM,IAAI,GAAG,IAAA,oCAA4B,EAAC,QAAQ,CAAC,CAAC;IACpD,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC,CAAC;AALW,QAAA,mCAAmC,uCAK9C;AAmBF,SAAgB,gBAAgB,CAAI,EAMT;QALzB,QAAQ,cAAA,EACR,cAAc,oBAAA,EACd,eAAe,qBAAA,EACf,WAAW,iBAAA,EACX,sBAAsB,4BAAA;IAEtB,IAAM,IAAI,GAAG,IAAA,mCAA2B,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACnE,OAAO,IAAA,YAAK,EAAC;QACX,OAAA,eAAe,CAAC;YACd,QAAQ,UAAA;YACR,IAAI,MAAA;YACJ,cAAc,gBAAA;SACf,CAAC,CAAC,IAAI,CACL,IAAA,sBAAU,EAAC,UAAC,CAAC;YACX,IACE,CAAC,YAAY,6BAAoB;gBACjC,CAAC,YAAY,2BAAkB,EAC/B;gBACA,IAAA,UAAG,EAAC,cAAc,EAAE,wBAAwB,GAAG,cAAc,CAAC,CAAC;aAChE;YAED,OAAO,IAAA,YAAK,GAAE,CAAC;QACjB,CAAC,CAAC,CACH;IAfD,CAeC,CACF,CAAC,IAAI,CACJ,IAAA,qBAAS,EAAC,UAAC,gBAAgB;QACzB,IAAM,cAAc,GAAG,gBAAgB,CAAC,SAAS,CAAC;QAClD,IAAM,UAAU,GAAG,CAAC,CAAC;QACrB,IAAM,yBAAyB,GAC7B,IAAA,oCAA4B,EAAC,cAAc,CAAC,CAAC;QAC/C,IAAM,gBAAgB,GAAG,IAAA,2BAAmB,EAAC;YAC3C,cAAc,gBAAA;YACd,QAAQ,UAAA;SACT,CAAC,CAAC;QACH,IAAM,MAAM,GAAG,IAAA,gCAAwB,EAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAM,QAAQ,GAAG,IAAA,iCAAyB,EAAC,cAAc,CAAC,CAAC;QAC3D,OAAO,IAAA,YAAK,EAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,CAAC,CAAC,IAAI;QAC5C,2BAA2B;QAC3B,IAAA,qBAAS,EAAC,UAAC,KAAK;YACd,IAAI,CAAC,IAAA,mCAA2B,EAAC,cAAc,EAAE,KAAK,CAAC,EAAE;gBACvD,OAAO,IAAA,YAAK,GAAE,CAAC;aAChB;YAED,IAAM,IAAI,GAAG,sBAAsB;gBACjC,CAAC,CAAC,IAAA,kCAA0B,EAAC,gBAAgB,EAAE,QAAQ,EAAE;oBACrD,OAAO,EAAE,KAAK;iBACf,CAAC;gBACJ,CAAC,CAAC,IAAA,2BAAmB,EAAC,gBAAgB,EAAE,QAAQ,EAAE;oBAC9C,OAAO,EAAE,KAAK;iBACf,CAAC,CAAC;YACP,OAAO,eAAe,CAAC;gBACrB,QAAQ,UAAA;gBACR,IAAI,MAAA;gBACJ,cAAc,gBAAA;aACf,CAAC,CAAC,IAAI,CACL,IAAA,eAAG,EAAC,UAAC,iBAAiB,IAAK,OAAA,CAAC;gBAC1B,gBAAgB,kBAAA;gBAChB,iBAAiB,mBAAA;gBACjB,KAAK,OAAA;aACN,CAAC,EAJyB,CAIzB,CAAC,CACJ,CAAC;QACJ,CAAC,CAAC,EAAE,sDAAsD;QAC1D,IAAA,qBAAS,EAAC,UAAC,EAA8C;gBAA5C,gBAAgB,sBAAA,EAAE,iBAAiB,uBAAA,EAAE,KAAK,WAAA;YACrD,OAAA,WAAW,CAAC;gBACV,KAAK,OAAA;gBACL,gBAAgB,kBAAA;gBAChB,iBAAiB,mBAAA;gBACjB,cAAc,gBAAA;gBACd,eAAe,EAAE,UAAU,GAAG,yBAAyB;gBACvD,cAAc,gBAAA;aACf,CAAC;QAPF,CAOE,CACH,EAAE,6EAA6E;QAChF,aAAa;QACb,IAAA,qBAAS,EAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,CAAC,QAAQ,EAAX,CAAW,EAAE,IAAI,CAAC,EAAE,wBAAwB;QAC7D,IAAA,qBAAS,EAAC,UAAC,EAAU;gBAAR,MAAM,YAAA;YAAO,OAAA,CAAC,MAAM,CAAC,CAAC,CAAC,IAAA,SAAE,EAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAA,YAAK,GAAE,CAAC;QAA/B,CAA+B,CAAC,CAC3D,CAAC;IACJ,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AA/ED,4CA+EC"}
package/lib/env.d.ts ADDED
@@ -0,0 +1,30 @@
1
+ import { Subject } from "rxjs";
2
+ import { $ElementType } from "utility-types";
3
+ type EnvDef<V> = {
4
+ desc: string;
5
+ def: V;
6
+ parser: (arg0: unknown) => V | null | undefined;
7
+ };
8
+ type EnvDefs = typeof envDefinitions;
9
+ type Env = typeof env;
10
+ export type EnvName = keyof EnvDefs;
11
+ export type EnvValue<Name extends EnvName> = $ElementType<Env, Name>;
12
+ declare const envDefinitions: Record<string, EnvDef<boolean | string | number | string[] | unknown>>;
13
+ export declare const getDefinition: (name: string) => EnvDef<any> | null | undefined;
14
+ declare const env: Record<EnvName, any>;
15
+ export declare const getAllEnvNames: () => EnvName[];
16
+ export declare const getAllEnvs: () => Env;
17
+ export declare const getEnv: <Name extends string>(name: Name) => any;
18
+ export declare const getEnvDefault: <Name extends string>(name: Name) => any;
19
+ export declare const isEnvDefault: <Name extends string>(name: Name) => boolean;
20
+ export declare const getEnvDesc: <Name extends string>(name: Name) => string;
21
+ type ChangeValue<T extends EnvName> = {
22
+ name: EnvName;
23
+ value: EnvValue<T>;
24
+ oldValue: EnvValue<T>;
25
+ };
26
+ export declare const changes: Subject<ChangeValue<any>>;
27
+ export declare const setEnv: <Name extends string>(name: Name, value: any) => void;
28
+ export declare const setEnvUnsafe: (name: EnvName, unsafeValue: unknown) => boolean;
29
+ export {};
30
+ //# sourceMappingURL=env.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,KAAK,MAAM,CAAC,CAAC,IAAI;IACf,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,CAAC,CAAC;IACP,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;CACjD,CAAC;AAEF,KAAK,OAAO,GAAG,OAAO,cAAc,CAAC;AACrC,KAAK,GAAG,GAAG,OAAO,GAAG,CAAC;AACtB,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC;AACpC,MAAM,MAAM,QAAQ,CAAC,IAAI,SAAS,OAAO,IAAI,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAwCrE,QAAA,MAAM,cAAc,EAAE,MAAM,CAC1B,MAAM,EACN,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC,CAqpBvD,CAAC;AAEF,eAAO,MAAM,aAAa,SAAU,MAAM,KAAG,OAAO,GAAG,CAAC,GAAG,IAAI,GAAG,SAC5C,CAAC;AAQvB,QAAA,MAAM,GAAG,EAAE,MAAM,CAAC,OAAO,EAAE,GAAG,CAAmB,CAAC;AAClD,eAAO,MAAM,cAAc,QAAO,OAAO,EACC,CAAC;AAC3C,eAAO,MAAM,UAAU,QAAO,GAAmB,CAAC;AAElD,eAAO,MAAM,MAAM,0CACR,CAAC;AACZ,eAAO,MAAM,aAAa,0CAES,CAAC;AACpC,eAAO,MAAM,YAAY,uCAAuC,OAClC,CAAC;AAC/B,eAAO,MAAM,UAAU,uCAAuC,MACnC,CAAC;AAC5B,KAAK,WAAW,CAAC,CAAC,SAAS,OAAO,IAAI;IACpC,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;IACnB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC;CACvB,CAAC;AACF,eAAO,MAAM,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAiB,CAAC;AAEhE,eAAO,MAAM,MAAM,mDAGhB,IAWF,CAAC;AAEF,eAAO,MAAM,YAAY,SAAU,OAAO,eAAe,OAAO,KAAG,OAclE,CAAC"}