fibx 0.1.1 → 0.1.3

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 (129) hide show
  1. package/README.md +35 -31
  2. package/dist/commands/auth/login.d.ts +3 -0
  3. package/dist/commands/auth/login.d.ts.map +1 -0
  4. package/dist/commands/auth/login.js +34 -0
  5. package/dist/commands/auth/login.js.map +1 -0
  6. package/dist/commands/auth/verify.d.ts +3 -0
  7. package/dist/commands/auth/verify.d.ts.map +1 -0
  8. package/dist/commands/auth/verify.js +61 -0
  9. package/dist/commands/auth/verify.js.map +1 -0
  10. package/dist/commands/balance.d.ts.map +1 -1
  11. package/dist/commands/balance.js +27 -8
  12. package/dist/commands/balance.js.map +1 -1
  13. package/dist/commands/chain/transaction.d.ts +3 -0
  14. package/dist/commands/chain/transaction.d.ts.map +1 -0
  15. package/dist/commands/chain/transaction.js +31 -0
  16. package/dist/commands/chain/transaction.js.map +1 -0
  17. package/dist/commands/trade/status.d.ts +3 -0
  18. package/dist/commands/trade/status.d.ts.map +1 -0
  19. package/dist/commands/trade/status.js +32 -0
  20. package/dist/commands/trade/status.js.map +1 -0
  21. package/dist/commands/trade/swap.d.ts +8 -0
  22. package/dist/commands/trade/swap.d.ts.map +1 -0
  23. package/dist/commands/trade/swap.js +74 -0
  24. package/dist/commands/trade/swap.js.map +1 -0
  25. package/dist/commands/wallet/address.d.ts +3 -0
  26. package/dist/commands/wallet/address.d.ts.map +1 -0
  27. package/dist/commands/wallet/address.js +15 -0
  28. package/dist/commands/wallet/address.js.map +1 -0
  29. package/dist/commands/wallet/balance.d.ts +3 -0
  30. package/dist/commands/wallet/balance.d.ts.map +1 -0
  31. package/dist/commands/wallet/balance.js +53 -0
  32. package/dist/commands/wallet/balance.js.map +1 -0
  33. package/dist/commands/wallet/list.d.ts +3 -0
  34. package/dist/commands/wallet/list.d.ts.map +1 -0
  35. package/dist/commands/wallet/list.js +39 -0
  36. package/dist/commands/wallet/list.js.map +1 -0
  37. package/dist/commands/wallet/send.d.ts +3 -0
  38. package/dist/commands/wallet/send.d.ts.map +1 -0
  39. package/dist/commands/wallet/send.js +57 -0
  40. package/dist/commands/wallet/send.js.map +1 -0
  41. package/dist/fibrous/balances.d.ts +14 -0
  42. package/dist/fibrous/balances.d.ts.map +1 -0
  43. package/dist/fibrous/balances.js +26 -0
  44. package/dist/fibrous/balances.js.map +1 -0
  45. package/dist/index.d.ts +3 -0
  46. package/dist/index.d.ts.map +1 -0
  47. package/dist/index.js +98 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/lib/cache.d.ts +3 -0
  50. package/dist/lib/cache.d.ts.map +1 -0
  51. package/dist/lib/cache.js +23 -0
  52. package/dist/lib/cache.js.map +1 -0
  53. package/dist/lib/config.d.ts +6 -0
  54. package/dist/lib/config.d.ts.map +1 -0
  55. package/dist/lib/config.js +7 -0
  56. package/dist/lib/config.js.map +1 -0
  57. package/dist/lib/errors.d.ts +22 -0
  58. package/dist/lib/errors.d.ts.map +1 -0
  59. package/dist/lib/errors.js +29 -0
  60. package/dist/lib/errors.js.map +1 -0
  61. package/dist/lib/format.d.ts +8 -0
  62. package/dist/lib/format.d.ts.map +1 -0
  63. package/dist/lib/format.js +69 -0
  64. package/dist/lib/format.js.map +1 -0
  65. package/dist/lib/parseAmount.d.ts +3 -0
  66. package/dist/lib/parseAmount.d.ts.map +1 -0
  67. package/dist/lib/parseAmount.js +10 -0
  68. package/dist/lib/parseAmount.js.map +1 -0
  69. package/dist/lib/validation.d.ts +6 -0
  70. package/dist/lib/validation.d.ts.map +1 -0
  71. package/dist/lib/validation.js +24 -0
  72. package/dist/lib/validation.js.map +1 -0
  73. package/dist/services/auth/policy.d.ts +2 -0
  74. package/dist/services/auth/policy.d.ts.map +1 -0
  75. package/dist/services/auth/policy.js +3 -0
  76. package/dist/services/auth/policy.js.map +1 -0
  77. package/dist/services/auth/session.d.ts +15 -0
  78. package/dist/services/auth/session.d.ts.map +1 -0
  79. package/dist/services/auth/session.js +47 -0
  80. package/dist/services/auth/session.js.map +1 -0
  81. package/dist/services/chain/client.d.ts +8358 -0
  82. package/dist/services/chain/client.d.ts.map +1 -0
  83. package/dist/services/chain/client.js +78 -0
  84. package/dist/services/chain/client.js.map +1 -0
  85. package/dist/services/chain/constants.d.ts +158 -0
  86. package/dist/services/chain/constants.d.ts.map +1 -0
  87. package/dist/services/chain/constants.js +100 -0
  88. package/dist/services/chain/constants.js.map +1 -0
  89. package/dist/services/chain/erc20.d.ts +6 -0
  90. package/dist/services/chain/erc20.d.ts.map +1 -0
  91. package/dist/services/chain/erc20.js +71 -0
  92. package/dist/services/chain/erc20.js.map +1 -0
  93. package/dist/services/fibrous/abi/base.d.ts +768 -0
  94. package/dist/services/fibrous/abi/base.d.ts.map +1 -0
  95. package/dist/services/fibrous/abi/base.js +984 -0
  96. package/dist/services/fibrous/abi/base.js.map +1 -0
  97. package/dist/services/fibrous/abi/citrea.d.ts +64 -0
  98. package/dist/services/fibrous/abi/citrea.d.ts.map +1 -0
  99. package/dist/services/fibrous/abi/citrea.js +990 -0
  100. package/dist/services/fibrous/abi/citrea.js.map +1 -0
  101. package/dist/services/fibrous/abi/hyperevm.d.ts +64 -0
  102. package/dist/services/fibrous/abi/hyperevm.d.ts.map +1 -0
  103. package/dist/services/fibrous/abi/hyperevm.js +990 -0
  104. package/dist/services/fibrous/abi/hyperevm.js.map +1 -0
  105. package/dist/services/fibrous/abi/monad.d.ts +64 -0
  106. package/dist/services/fibrous/abi/monad.d.ts.map +1 -0
  107. package/dist/services/fibrous/abi/monad.js +990 -0
  108. package/dist/services/fibrous/abi/monad.js.map +1 -0
  109. package/dist/services/fibrous/balances.d.ts +15 -0
  110. package/dist/services/fibrous/balances.d.ts.map +1 -0
  111. package/dist/services/fibrous/balances.js +24 -0
  112. package/dist/services/fibrous/balances.js.map +1 -0
  113. package/dist/services/fibrous/health.d.ts +12 -0
  114. package/dist/services/fibrous/health.d.ts.map +1 -0
  115. package/dist/services/fibrous/health.js +16 -0
  116. package/dist/services/fibrous/health.js.map +1 -0
  117. package/dist/services/fibrous/route.d.ts +48 -0
  118. package/dist/services/fibrous/route.d.ts.map +1 -0
  119. package/dist/services/fibrous/route.js +57 -0
  120. package/dist/services/fibrous/route.js.map +1 -0
  121. package/dist/services/fibrous/tokens.d.ts +11 -0
  122. package/dist/services/fibrous/tokens.d.ts.map +1 -0
  123. package/dist/services/fibrous/tokens.js +35 -0
  124. package/dist/services/fibrous/tokens.js.map +1 -0
  125. package/dist/services/privy/client.d.ts +15 -0
  126. package/dist/services/privy/client.d.ts.map +1 -0
  127. package/dist/services/privy/client.js +63 -0
  128. package/dist/services/privy/client.js.map +1 -0
  129. package/package.json +6 -6
@@ -0,0 +1,47 @@
1
+ import { readFileSync, writeFileSync, unlinkSync, mkdirSync } from "node:fs";
2
+ import { join, dirname } from "node:path";
3
+ import { z } from "zod";
4
+ import { paths } from "../../lib/config.js";
5
+ import { ErrorCode, FibxError } from "../../lib/errors.js";
6
+ const sessionSchema = z.object({
7
+ userId: z.string().optional(),
8
+ walletId: z.string(),
9
+ walletAddress: z.string().regex(/^0x[a-fA-F0-9]{40}$/),
10
+ userJwt: z.string().optional(),
11
+ createdAt: z.string(),
12
+ });
13
+ function getSessionPath() {
14
+ return join(paths.config, "session.json");
15
+ }
16
+ export function loadSession() {
17
+ try {
18
+ const raw = readFileSync(getSessionPath(), "utf-8");
19
+ const result = sessionSchema.safeParse(JSON.parse(raw));
20
+ return result.success ? result.data : null;
21
+ }
22
+ catch {
23
+ return null;
24
+ }
25
+ }
26
+ export function requireSession() {
27
+ const session = loadSession();
28
+ if (!session) {
29
+ throw new FibxError(ErrorCode.NOT_AUTHENTICATED, "Not authenticated. Run `fibx auth login <email>` first.");
30
+ }
31
+ return session;
32
+ }
33
+ export function saveSession(session) {
34
+ const filePath = getSessionPath();
35
+ mkdirSync(dirname(filePath), { recursive: true });
36
+ sessionSchema.parse(session);
37
+ writeFileSync(filePath, JSON.stringify(session, null, 2), "utf-8");
38
+ }
39
+ export function clearSession() {
40
+ try {
41
+ unlinkSync(getSessionPath());
42
+ }
43
+ catch {
44
+ // Already cleared
45
+ }
46
+ }
47
+ //# sourceMappingURL=session.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/services/auth/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC1C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAE3D,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACtD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;CACrB,CAAC,CAAC;AAIH,SAAS,cAAc;IACtB,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,WAAW;IAC1B,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,EAAE,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC;QACxD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc;IAC7B,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAC9B,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,MAAM,IAAI,SAAS,CAClB,SAAS,CAAC,iBAAiB,EAC3B,yDAAyD,CACzD,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAAgB;IAC3C,MAAM,QAAQ,GAAG,cAAc,EAAE,CAAC;IAClC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,YAAY;IAC3B,IAAI,CAAC;QACJ,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9B,CAAC;IAAC,MAAM,CAAC;QACR,kBAAkB;IACnB,CAAC;AACF,CAAC"}