@karn_lat/protocol-sdk 0.1.0-alpha.1

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 (157) hide show
  1. package/README.md +68 -0
  2. package/dist/__tests__/setup.d.ts +14 -0
  3. package/dist/__tests__/setup.d.ts.map +1 -0
  4. package/dist/__tests__/setup.js +44 -0
  5. package/dist/__tests__/setup.js.map +1 -0
  6. package/dist/clients/GovernorClient.d.ts +9 -0
  7. package/dist/clients/GovernorClient.d.ts.map +1 -0
  8. package/dist/clients/GovernorClient.js +18 -0
  9. package/dist/clients/GovernorClient.js.map +1 -0
  10. package/dist/clients/TreasuryClient.d.ts +9 -0
  11. package/dist/clients/TreasuryClient.d.ts.map +1 -0
  12. package/dist/clients/TreasuryClient.js +18 -0
  13. package/dist/clients/TreasuryClient.js.map +1 -0
  14. package/dist/clients/ValocracyClient.d.ts +13 -0
  15. package/dist/clients/ValocracyClient.d.ts.map +1 -0
  16. package/dist/clients/ValocracyClient.js +32 -0
  17. package/dist/clients/ValocracyClient.js.map +1 -0
  18. package/dist/clients/index.d.ts +4 -0
  19. package/dist/clients/index.d.ts.map +1 -0
  20. package/dist/clients/index.js +4 -0
  21. package/dist/clients/index.js.map +1 -0
  22. package/dist/generated/governor/src/index.d.ts +400 -0
  23. package/dist/generated/governor/src/index.d.ts.map +1 -0
  24. package/dist/generated/governor/src/index.js +63 -0
  25. package/dist/generated/governor/src/index.js.map +1 -0
  26. package/dist/generated/treasury/src/index.d.ts +474 -0
  27. package/dist/generated/treasury/src/index.d.ts.map +1 -0
  28. package/dist/generated/treasury/src/index.js +54 -0
  29. package/dist/generated/treasury/src/index.js.map +1 -0
  30. package/dist/generated/valocracy/src/index.d.ts +807 -0
  31. package/dist/generated/valocracy/src/index.d.ts.map +1 -0
  32. package/dist/generated/valocracy/src/index.js +114 -0
  33. package/dist/generated/valocracy/src/index.js.map +1 -0
  34. package/dist/index.d.ts +5 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +5 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/react/hooks/useGovernor.d.ts +24 -0
  39. package/dist/react/hooks/useGovernor.d.ts.map +1 -0
  40. package/dist/react/hooks/useGovernor.js +45 -0
  41. package/dist/react/hooks/useGovernor.js.map +1 -0
  42. package/dist/react/hooks/useMultiWallet.d.ts +35 -0
  43. package/dist/react/hooks/useMultiWallet.d.ts.map +1 -0
  44. package/dist/react/hooks/useMultiWallet.js +87 -0
  45. package/dist/react/hooks/useMultiWallet.js.map +1 -0
  46. package/dist/react/hooks/useTreasury.d.ts +14 -0
  47. package/dist/react/hooks/useTreasury.d.ts.map +1 -0
  48. package/dist/react/hooks/useTreasury.js +45 -0
  49. package/dist/react/hooks/useTreasury.js.map +1 -0
  50. package/dist/react/hooks/useValocracy.d.ts +16 -0
  51. package/dist/react/hooks/useValocracy.d.ts.map +1 -0
  52. package/dist/react/hooks/useValocracy.js +54 -0
  53. package/dist/react/hooks/useValocracy.js.map +1 -0
  54. package/dist/react/hooks/useWallet.d.ts +13 -0
  55. package/dist/react/hooks/useWallet.d.ts.map +1 -0
  56. package/dist/react/hooks/useWallet.js +51 -0
  57. package/dist/react/hooks/useWallet.js.map +1 -0
  58. package/dist/react/index.d.ts +7 -0
  59. package/dist/react/index.d.ts.map +1 -0
  60. package/dist/react/index.js +7 -0
  61. package/dist/react/index.js.map +1 -0
  62. package/dist/react/providers/KarnProvider.d.ts +25 -0
  63. package/dist/react/providers/KarnProvider.d.ts.map +1 -0
  64. package/dist/react/providers/KarnProvider.js +25 -0
  65. package/dist/react/providers/KarnProvider.js.map +1 -0
  66. package/dist/utils/decay.d.ts +19 -0
  67. package/dist/utils/decay.d.ts.map +1 -0
  68. package/dist/utils/decay.js +33 -0
  69. package/dist/utils/decay.js.map +1 -0
  70. package/dist/utils/index.d.ts +4 -0
  71. package/dist/utils/index.d.ts.map +1 -0
  72. package/dist/utils/index.js +4 -0
  73. package/dist/utils/index.js.map +1 -0
  74. package/dist/utils/polling.d.ts +75 -0
  75. package/dist/utils/polling.d.ts.map +1 -0
  76. package/dist/utils/polling.js +104 -0
  77. package/dist/utils/polling.js.map +1 -0
  78. package/dist/utils/simulation.d.ts +67 -0
  79. package/dist/utils/simulation.d.ts.map +1 -0
  80. package/dist/utils/simulation.js +88 -0
  81. package/dist/utils/simulation.js.map +1 -0
  82. package/dist/wallet/WalletManager.d.ts +77 -0
  83. package/dist/wallet/WalletManager.d.ts.map +1 -0
  84. package/dist/wallet/WalletManager.js +268 -0
  85. package/dist/wallet/WalletManager.js.map +1 -0
  86. package/dist/wallet/adapters/AlbedoAdapter.d.ts +47 -0
  87. package/dist/wallet/adapters/AlbedoAdapter.d.ts.map +1 -0
  88. package/dist/wallet/adapters/AlbedoAdapter.js +84 -0
  89. package/dist/wallet/adapters/AlbedoAdapter.js.map +1 -0
  90. package/dist/wallet/adapters/FreighterAdapter.d.ts +42 -0
  91. package/dist/wallet/adapters/FreighterAdapter.d.ts.map +1 -0
  92. package/dist/wallet/adapters/FreighterAdapter.js +107 -0
  93. package/dist/wallet/adapters/FreighterAdapter.js.map +1 -0
  94. package/dist/wallet/adapters/LobstrAdapter.d.ts +34 -0
  95. package/dist/wallet/adapters/LobstrAdapter.d.ts.map +1 -0
  96. package/dist/wallet/adapters/LobstrAdapter.js +89 -0
  97. package/dist/wallet/adapters/LobstrAdapter.js.map +1 -0
  98. package/dist/wallet/adapters/RabetAdapter.d.ts +39 -0
  99. package/dist/wallet/adapters/RabetAdapter.d.ts.map +1 -0
  100. package/dist/wallet/adapters/RabetAdapter.js +104 -0
  101. package/dist/wallet/adapters/RabetAdapter.js.map +1 -0
  102. package/dist/wallet/adapters/xBullAdapter.d.ts +41 -0
  103. package/dist/wallet/adapters/xBullAdapter.d.ts.map +1 -0
  104. package/dist/wallet/adapters/xBullAdapter.js +72 -0
  105. package/dist/wallet/adapters/xBullAdapter.js.map +1 -0
  106. package/dist/wallet/index.d.ts +20 -0
  107. package/dist/wallet/index.d.ts.map +1 -0
  108. package/dist/wallet/index.js +23 -0
  109. package/dist/wallet/index.js.map +1 -0
  110. package/dist/wallet/types.d.ts +165 -0
  111. package/dist/wallet/types.d.ts.map +1 -0
  112. package/dist/wallet/types.js +50 -0
  113. package/dist/wallet/types.js.map +1 -0
  114. package/examples/basic-usage.ts +28 -0
  115. package/jest.config.js +37 -0
  116. package/package.json +58 -0
  117. package/src/__tests__/README.md +364 -0
  118. package/src/__tests__/setup.ts +57 -0
  119. package/src/__tests__/utils/decay.test.ts +331 -0
  120. package/src/__tests__/wallet/WalletManager.test.ts +410 -0
  121. package/src/clients/GovernorClient.ts +23 -0
  122. package/src/clients/TreasuryClient.ts +23 -0
  123. package/src/clients/ValocracyClient.ts +48 -0
  124. package/src/clients/index.ts +3 -0
  125. package/src/generated/governor/README.md +54 -0
  126. package/src/generated/governor/package.json +17 -0
  127. package/src/generated/governor/src/index.ts +428 -0
  128. package/src/generated/governor/tsconfig.json +98 -0
  129. package/src/generated/treasury/README.md +54 -0
  130. package/src/generated/treasury/package.json +17 -0
  131. package/src/generated/treasury/src/index.ts +495 -0
  132. package/src/generated/treasury/tsconfig.json +98 -0
  133. package/src/generated/valocracy/README.md +54 -0
  134. package/src/generated/valocracy/package.json +17 -0
  135. package/src/generated/valocracy/src/index.ts +831 -0
  136. package/src/generated/valocracy/tsconfig.json +98 -0
  137. package/src/index.ts +4 -0
  138. package/src/react/hooks/useGovernor.ts +69 -0
  139. package/src/react/hooks/useMultiWallet.ts +169 -0
  140. package/src/react/hooks/useTreasury.ts +57 -0
  141. package/src/react/hooks/useValocracy.ts +66 -0
  142. package/src/react/hooks/useWallet.ts +60 -0
  143. package/src/react/index.ts +6 -0
  144. package/src/react/providers/KarnProvider.tsx +63 -0
  145. package/src/utils/decay.ts +44 -0
  146. package/src/utils/index.ts +3 -0
  147. package/src/utils/polling.ts +193 -0
  148. package/src/utils/simulation.ts +136 -0
  149. package/src/wallet/WalletManager.ts +360 -0
  150. package/src/wallet/adapters/AlbedoAdapter.ts +140 -0
  151. package/src/wallet/adapters/FreighterAdapter.ts +179 -0
  152. package/src/wallet/adapters/LobstrAdapter.ts +142 -0
  153. package/src/wallet/adapters/RabetAdapter.ts +162 -0
  154. package/src/wallet/adapters/xBullAdapter.ts +123 -0
  155. package/src/wallet/index.ts +37 -0
  156. package/src/wallet/types.ts +204 -0
  157. package/tsconfig.json +40 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/generated/valocracy/src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,114 @@
1
+ import { Buffer } from "buffer";
2
+ import { Client as ContractClient, Spec as ContractSpec, } from '@stellar/stellar-sdk/contract';
3
+ export * from '@stellar/stellar-sdk';
4
+ export * as contract from '@stellar/stellar-sdk/contract';
5
+ export * as rpc from '@stellar/stellar-sdk/rpc';
6
+ if (typeof window !== 'undefined') {
7
+ //@ts-ignore Buffer exists
8
+ window.Buffer = window.Buffer || Buffer;
9
+ }
10
+ export const ValocracyError = {
11
+ /**
12
+ * Contract has already been initialized
13
+ */
14
+ 1: { message: "AlreadyInitialized" },
15
+ /**
16
+ * Contract has not been initialized
17
+ */
18
+ 2: { message: "NotInitialized" },
19
+ /**
20
+ * Caller is not authorized (not a member or not the governor)
21
+ */
22
+ 3: { message: "NotAuthorized" },
23
+ /**
24
+ * Valor ID does not exist
25
+ */
26
+ 4: { message: "NonExistentValor" },
27
+ /**
28
+ * Token ID does not exist
29
+ */
30
+ 5: { message: "NonExistentToken" },
31
+ /**
32
+ * Account does not exist
33
+ */
34
+ 6: { message: "NonExistentAccount" },
35
+ /**
36
+ * Token is soulbound and cannot be transferred
37
+ */
38
+ 7: { message: "TokenSoulbound" },
39
+ /**
40
+ * User has already self-registered (has a Member badge)
41
+ */
42
+ 8: { message: "AlreadyRegistered" },
43
+ /**
44
+ * Invalid signature
45
+ */
46
+ 9: { message: "InvalidSignature" },
47
+ /**
48
+ * Nonce already used
49
+ */
50
+ 10: { message: "NonceUsed" },
51
+ /**
52
+ * Signature expired
53
+ */
54
+ 11: { message: "SignatureExpired" },
55
+ /**
56
+ * Invalid Valor ID
57
+ */
58
+ 12: { message: "InvalidValorId" },
59
+ /**
60
+ * Mint not authorized
61
+ */
62
+ 13: { message: "MintNotAuthorized" },
63
+ /**
64
+ * Badge not mintable
65
+ */
66
+ 14: { message: "BadgeNotMintable" },
67
+ /**
68
+ * Reentrancy detected
69
+ */
70
+ 15: { message: "ReentrancyDetected" }
71
+ };
72
+ export class Client extends ContractClient {
73
+ static async deploy(
74
+ /** Options for initializing a Client as well as for calling a method, with extras specific to deploying. */
75
+ options) {
76
+ return ContractClient.deploy(null, options);
77
+ }
78
+ constructor(options) {
79
+ super(new ContractSpec(["AAAAAAAAALtNaW50IGEgbmV3IHNvdWxib3VuZCBORlQgdG8gYW4gYWNjb3VudC4KClJlcXVpcmVzIGF1dGhvcml6YXRpb24gZnJvbSBhIHZhbGlkIG1pbnRlciBmb3IgdGhlIHNwZWNpZmljIGJhZGdlIGNhdGVnb3J5LgotIEdvdmVybmFuY2UvTGVhZGVyc2hpcC9UcmFjazogU2VlIFJCQUMgbWF0cml4Ci0gQ29tbXVuaXR5OiBBbnkgbWVtYmVyAAAAAARtaW50AAAAAwAAAAAAAAAGbWludGVyAAAAAAATAAAAAAAAAAlyZWNpcGllbnQAAAAAAAATAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAD6QAAAAYAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
80
+ "AAAAAAAAABVHZXQgdGhlIGNvbnRyYWN0IG5hbWUAAAAAAAAEbmFtZQAAAAAAAAABAAAAEA==",
81
+ "AAAAAAAAAJpSZXZva2UgKGJ1cm4pIGEgYmFkZ2UgdG9rZW4uCgpHb3Zlcm5vci1vbmx5LiBSZW1vdmVzIHRoZSB0b2tlbiwgcmVkdWNlcyB0aGUgdXNlcidzIGxldmVsIGJ5CnRoZSBiYWRnZSdzIHJhcml0eSB2YWx1ZS4gVXNlZCBmb3IgZ292ZXJuYW5jZS1kZWNpZGVkIHJlbW92YWwuAAAAAAAGcmV2b2tlAAAAAAABAAAAAAAAAAh0b2tlbl9pZAAAAAYAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
82
+ "AAAAAAAAABdHZXQgdGhlIGNvbnRyYWN0IHN5bWJvbAAAAAAGc3ltYm9sAAAAAAAAAAAAAQAAABA=",
83
+ "AAAAAAAAABdHZXQgdGhlIGZvdW5kZXIgYWRkcmVzcwAAAAAHZm91bmRlcgAAAAAAAAAAAQAAA+gAAAAT",
84
+ "AAAAAAAAAGZVcGdyYWRlIHRoZSBjb250cmFjdCB0byBhIG5ldyBXQVNNIGhhc2guCk9ubHkgY2FsbGFibGUgYnkgdGhlIGdvdmVybm9yIChyZXF1aXJlcyBnb3Zlcm5hbmNlIHByb3Bvc2FsKS4AAAAAAAd1cGdyYWRlAAAAAAEAAAAAAAAADW5ld193YXNtX2hhc2gAAAAAAAPuAAAAIAAAAAEAAAPpAAAD7QAAAAAAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
85
+ "AAAAAAAAACFHZXQgdGhlIGdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIZ292ZXJub3IAAAAAAAAAAQAAA+gAAAAT",
86
+ "AAAAAAAAAC9HZXQgdGhlIHJhdyBsZXZlbCBvZiBhbiBhY2NvdW50ICh3aXRob3V0IGRlY2F5KQAAAAAIbGV2ZWxfb2YAAAABAAAAAAAAAAdhY2NvdW50AAAAABMAAAABAAAABg==",
87
+ "AAAAAAAAABhHZXQgdGhlIG93bmVyIG9mIGEgdG9rZW4AAAAIb3duZXJfb2YAAAABAAAAAAAAAAh0b2tlbl9pZAAAAAYAAAABAAAD6AAAABM=",
88
+ "AAAAAAAAACFHZXQgdGhlIHRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIdHJlYXN1cnkAAAAAAAAAAQAAA+gAAAAT",
89
+ "AAAAAAAAACZHZXQgdGhlIGV4cGlyeSB0aW1lc3RhbXAgb2YgYW4gYWNjb3VudAAAAAAACWV4cGlyeV9vZgAAAAAAAAEAAAAAAAAAB2FjY291bnQAAAAAEwAAAAEAAAAG",
90
+ "AAAAAAAAALhHZXQgdGhlIGN1cnJlbnQgdm90aW5nIHBvd2VyIChNYW5hKSBvZiBhbiBhY2NvdW50CgpNYW5hID0gTUVNQkVSX0ZMT09SICsgYm9udXMgKGRlY2F5IGFwcGxpZXMgdG8gZXh0cmFfbGV2ZWwgb25seSkKUmVnaXN0ZXJlZCBhY2NvdW50cyBhbHdheXMgcmV0YWluIGF0IGxlYXN0IE1FTUJFUl9GTE9PUiB2b3RpbmcgcG93ZXIuAAAACWdldF92b3RlcwAAAAAAAAEAAAAAAAAAB2FjY291bnQAAAAAEwAAAAEAAAAG",
91
+ "AAAAAAAAAB5HZXQgdGhlIHJhcml0eSBvZiBhIHZhbG9yIHR5cGUAAAAAAAlyYXJpdHlfb2YAAAAAAAABAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAABg==",
92
+ "AAAAAAAAAHlDcmVhdGUgb3IgdXBkYXRlIGEgVmFsb3IgdHlwZSB3aXRoIHJhcml0eSBhbmQgbWV0YWRhdGEuCgpHb3Zlcm5vci1vbmx5LiBCYWRnZSB0eXBlIGNoYW5nZXMgcmVxdWlyZSBhIGdvdmVybmFuY2UgcHJvcG9zYWwuAAAAAAAACXNldF92YWxvcgAAAAAAAAMAAAAAAAAACHZhbG9yX2lkAAAABgAAAAAAAAAGcmFyaXR5AAAAAAAGAAAAAAAAAAhtZXRhZGF0YQAAABAAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
93
+ "AAAAAAAAAshJbml0aWFsaXplIHRoZSBWYWxvY3JhY3kgY29udHJhY3QuCgpObyBhZG1pbjogc2V0cyBhbGwgY29uZmlndXJhdGlvbiBhdCBvbmNlLiBSZWdpc3RlcnMgaW5pdGlhbCB2YWxvciB0eXBlcywKbWludHMgdGhlIEZvdW5kZXIgYmFkZ2UsIGFuZCBzdG9yZXMgdGhlIG1lbWJlciBiYWRnZSBJRCBmb3Igc2VsZi1yZWdpc3RyYXRpb24uCgojIEFyZ3VtZW50cwoqIGBmb3VuZGVyYCAtIEFkZHJlc3MgdGhhdCByZWNlaXZlcyB0aGUgcGVybWFuZW50IEZvdW5kZXIgYmFkZ2UKKiBgZ292ZXJub3JgIC0gR292ZXJub3IgY29udHJhY3QgYWRkcmVzcwoqIGB0cmVhc3VyeWAgLSBUcmVhc3VyeSBjb250cmFjdCBhZGRyZXNzCiogYG5hbWVgIC0gQ29udHJhY3QgbmFtZQoqIGBzeW1ib2xgIC0gQ29udHJhY3Qgc3ltYm9sCiogYG1lbWJlcl92YWxvcl9pZGAgLSBWYWxvciBJRCB1c2VkIGJ5IHNlbGZfcmVnaXN0ZXIoKSAodGhlIE1lbWJlciBiYWRnZSkKKiBgdmFsb3JfaWRzYCAtIExpc3Qgb2YgdmFsb3IgSURzIHRvIHJlZ2lzdGVyCiogYHZhbG9yX3Jhcml0aWVzYCAtIExpc3Qgb2YgcmFyaXRpZXMgKHBhcmFsbGVsIHRvIHZhbG9yX2lkcykKKiBgdmFsb3JfbWV0YWRhdGFzYCAtIExpc3Qgb2YgbWV0YWRhdGEgc3RyaW5ncyAocGFyYWxsZWwgdG8gdmFsb3JfaWRzKQoqIGBmb3VuZGVyX3ZhbG9yX2lkYCAtIFdoaWNoIHZhbG9yX2lkIGlzIHRoZSBGb3VuZGVyIGJhZGdlAAAACmluaXRpYWxpemUAAAAAAAkAAAAAAAAAB2ZvdW5kZXIAAAAAEwAAAAAAAAAIZ292ZXJub3IAAAATAAAAAAAAAAh0cmVhc3VyeQAAABMAAAAAAAAAD21lbWJlcl92YWxvcl9pZAAAAAAGAAAAAAAAAAl2YWxvcl9pZHMAAAAAAAPqAAAABgAAAAAAAAAOdmFsb3JfcmFyaXRpZXMAAAAAA+oAAAAGAAAAAAAAAA92YWxvcl9tZXRhZGF0YXMAAAAD6gAAABAAAAAAAAAAEGZvdW5kZXJfdmFsb3JfaWQAAAAGAAAAAAAAAAZzaWduZXIAAAAAA+4AAAAgAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
94
+ "AAAAAAAAAHFDaGVjayBpZiBhIG1lbWJlciBoYXMgY29tcGxldGVkIGlkZW50aXR5IHZlcmlmaWNhdGlvbiAoQURSLTAwMykuCgpSZXR1cm5zIGZhbHNlIGlmIHRoZSBhY2NvdW50IGlzIG5vdCByZWdpc3RlcmVkLgAAAAAAAAtpc192ZXJpZmllZAAAAAABAAAAAAAAAAdhY2NvdW50AAAAABMAAAABAAAAAQ==",
95
+ "AAAAAAAAACBHZXQgdGhlIG1ldGFkYXRhIG9mIGEgdmFsb3IgdHlwZQAAAAttZXRhZGF0YV9vZgAAAAABAAAAAAAAAAh2YWxvcl9pZAAAAAYAAAABAAAAEA==",
96
+ "AAAAAAAAACJHZXQgdGhlIHZhbG9yIElEIGxpbmtlZCB0byBhIHRva2VuAAAAAAALdmFsb3JfaWRfb2YAAAAAAQAAAAAAAAAIdG9rZW5faWQAAAAGAAAAAQAAA+gAAAAG",
97
+ "AAAAAAAAAKxTZXQgdGhlIHZlcmlmaWNhdGlvbiBzdGF0dXMgb2YgYSBtZW1iZXIgKEFEUi0wMDMpLgoKR292ZXJub3Itb25seS4gVXNlZCBhZnRlciBpZGVudGl0eSB2ZXJpZmljYXRpb24gaXMgY29tcGxldGUuClVudmVyaWZpZWQgbWVtYmVycyBjYW5ub3Qgd2l0aGRyYXcgZnVuZHMgZnJvbSB0aGUgdHJlYXN1cnkuAAAADHNldF92ZXJpZmllZAAAAAIAAAAAAAAABm1lbWJlcgAAAAAAEwAAAAAAAAAIdmVyaWZpZWQAAAABAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
98
+ "AAAAAAAAACFHZXQgdG90YWwgc3VwcGx5IG9mIG1pbnRlZCB0b2tlbnMAAAAAAAAMdG90YWxfc3VwcGx5AAAAAAAAAAEAAAAG",
99
+ "AAAAAAAAAGpNaW50IGEgbmV3IHNvdWxib3VuZCBORlQgdXNpbmcgYmFja2VuZCBzaWduYXR1cmUgKEd1YXJkaWFuKS4KClBheWxvYWQ6IGFjY291bnQgfCB2YWxvcl9pZCB8IG5vbmNlIHwgZXhwaXJ5AAAAAAANZ3VhcmRpYW5fbWludAAAAAAAAAUAAAAAAAAAB2FjY291bnQAAAAAEwAAAAAAAAAIdmFsb3JfaWQAAAAGAAAAAAAAAAlzaWduYXR1cmUAAAAAAAPuAAAAQAAAAAAAAAAFbm9uY2UAAAAAAAAGAAAAAAAAAAZleHBpcnkAAAAAAAYAAAABAAAD6QAAAAYAAAfQAAAADlZhbG9jcmFjeUVycm9yAAA=",
100
+ "AAAAAAAAAAAAAAANc2VsZl9yZWdpc3RlcgAAAAAAAAQAAAAAAAAABmNhbGxlcgAAAAAAEwAAAAAAAAAJc2lnbmF0dXJlAAAAAAAD7gAAAEAAAAAAAAAABW5vbmNlAAAAAAAABgAAAAAAAAAGZXhwaXJ5AAAAAAAGAAAAAQAAA+kAAAAGAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
101
+ "AAAAAAAAAWZDYWxjdWxhdGUgTWFuYSAodm90aW5nIHBvd2VyIHdpdGggTWVtYmVyIEZsb29yKQoKRm9ybXVsYTogTWFuYSA9IGZsb29yICsgYm9udXMKLSBmbG9vciA9IE1FTUJFUl9GTE9PUiAoZml4ZWQgY29uc3RhbnQsIGUuZy4gNSkKLSBleHRyYV9sZXZlbCA9IGxldmVsIC0gZmxvb3IKLSBib251cyA9IChleHRyYV9sZXZlbCAqIHRpbWVfcmVtYWluaW5nKSAvIFZBQ0FOQ1lfUEVSSU9ECgpJbmFjdGl2ZSBtZW1iZXJzIGRlY2F5IHRvIGV4YWN0bHkgTUVNQkVSX0ZMT09SIHJlZ2FyZGxlc3Mgb2YgdGhlaXIKYWNjdW11bGF0ZWQgbGV2ZWwuIExlZ2FjeSBzdGF0dXMgb2ZmZXJzIHplcm8gcHJvdGVjdGlvbiBhZ2FpbnN0IGluYWN0aXZpdHkuAAAAAAAOY2FsY3VsYXRlX21hbmEAAAAAAAQAAAAAAAAABWxldmVsAAAAAAAABgAAAAAAAAAPcGVybWFuZW50X2xldmVsAAAAAAYAAAAAAAAABmV4cGlyeQAAAAAABgAAAAAAAAAMY3VycmVudF90aW1lAAAABgAAAAEAAAAG",
102
+ "AAAAAAAAACxHZXQgdGhlIHZhY2FuY3kgcGVyaW9kICgxODAgZGF5cyBpbiBzZWNvbmRzKQAAAA52YWNhbmN5X3BlcmlvZAAAAAAAAAAAAAEAAAAG",
103
+ "AAAAAAAAAF1VcGRhdGUgdGhlIGdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MgKG1pZ3JhdGlvbiBwYXRoKS4KT25seSBjYWxsYWJsZSBieSB0aGUgY3VycmVudCBnb3Zlcm5vci4AAAAAAAAPdXBkYXRlX2dvdmVybm9yAAAAAAEAAAAAAAAADG5ld19nb3Zlcm5vcgAAABMAAAABAAAD6QAAA+0AAAAAAAAH0AAAAA5WYWxvY3JhY3lFcnJvcgAA",
104
+ "AAAAAAAAAExVcGRhdGUgdGhlIHRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MuCk9ubHkgY2FsbGFibGUgYnkgdGhlIGN1cnJlbnQgZ292ZXJub3IuAAAAD3VwZGF0ZV90cmVhc3VyeQAAAAABAAAAAAAAAAxuZXdfdHJlYXN1cnkAAAATAAAAAQAAA+kAAAPtAAAAAAAAB9AAAAAOVmFsb2NyYWN5RXJyb3IAAA==",
105
+ "AAAAAAAAAH9DaGVjayBpZiBhY2NvdW50IGhhcyBhbnkgYWN0aXZlIHZvdGluZyBwb3dlcgoKQW55IHJlZ2lzdGVyZWQgYWNjb3VudCAobGV2ZWwgPiAwKSBhbHdheXMgaGFzIGF0IGxlYXN0IE1FTUJFUl9GTE9PUiB2b3RpbmcgcG93ZXIuAAAAABBoYXNfdm90aW5nX3Bvd2VyAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAE=",
106
+ "AAAAAAAAACVHZXQgdGhlIHBlcm1hbmVudCBsZXZlbCBvZiBhbiBhY2NvdW50AAAAAAAAEnBlcm1hbmVudF9sZXZlbF9vZgAAAAAAAQAAAAAAAAAHYWNjb3VudAAAAAATAAAAAQAAAAY=",
107
+ "AAAAAQAAAC5WYWxvciB0eXBlIGRlZmluaXRpb24gd2l0aCByYXJpdHkgYW5kIG1ldGFkYXRhAAAAAAAAAAAABVZhbG9yAAAAAAAAAgAAAChNZXRhZGF0YSBzdHJpbmcgKGUuZy4sIGRlc2NyaXB0aW9uLCBVUkkpAAAACG1ldGFkYXRhAAAAEAAAAClUaGUgcmFyaXR5IG11bHRpcGxpZXIgZm9yIHRoaXMgdmFsb3IgdHlwZQAAAAAAAAZyYXJpdHkAAAAAAAY=",
108
+ "AAAAAQAAAC5Vc2VyIHN0YXRpc3RpY3MgaW5jbHVkaW5nIGxldmVsIGFuZCBleHBpcmF0aW9uAAAAAAAAAAAACVVzZXJTdGF0cwAAAAAAAAQAAAAnVGhlIGV4cGlyYXRpb24gdGltZXN0YW1wIChVbml4IHNlY29uZHMpAAAAAAZleHBpcnkAAAAAAAYAAAAgVGhlIGFjY3VtdWxhdGVkIGdvdmVybmFuY2UgbGV2ZWwAAAAFbGV2ZWwAAAAAAAAGAAAARlRoZSBwZXJtYW5lbnQgcG9ydGlvbiBvZiBsZXZlbCB0aGF0IG5ldmVyIGRlY2F5cyAoZS5nLiwgRm91bmRlciBiYWRnZSkAAAAAAA9wZXJtYW5lbnRfbGV2ZWwAAAAABgAAADZXaGV0aGVyIHRoZSB1c2VyIGhhcyB2ZXJpZmllZCB0aGVpciBpZGVudGl0eSAoQURSLTAwMykAAAAAAAh2ZXJpZmllZAAAAAE=",
109
+ "AAAABAAAAAAAAAAAAAAADlZhbG9jcmFjeUVycm9yAAAAAAAPAAAAJUNvbnRyYWN0IGhhcyBhbHJlYWR5IGJlZW4gaW5pdGlhbGl6ZWQAAAAAAAASQWxyZWFkeUluaXRpYWxpemVkAAAAAAABAAAAIUNvbnRyYWN0IGhhcyBub3QgYmVlbiBpbml0aWFsaXplZAAAAAAAAA5Ob3RJbml0aWFsaXplZAAAAAAAAgAAADtDYWxsZXIgaXMgbm90IGF1dGhvcml6ZWQgKG5vdCBhIG1lbWJlciBvciBub3QgdGhlIGdvdmVybm9yKQAAAAANTm90QXV0aG9yaXplZAAAAAAAAAMAAAAXVmFsb3IgSUQgZG9lcyBub3QgZXhpc3QAAAAAEE5vbkV4aXN0ZW50VmFsb3IAAAAEAAAAF1Rva2VuIElEIGRvZXMgbm90IGV4aXN0AAAAABBOb25FeGlzdGVudFRva2VuAAAABQAAABZBY2NvdW50IGRvZXMgbm90IGV4aXN0AAAAAAASTm9uRXhpc3RlbnRBY2NvdW50AAAAAAAGAAAALFRva2VuIGlzIHNvdWxib3VuZCBhbmQgY2Fubm90IGJlIHRyYW5zZmVycmVkAAAADlRva2VuU291bGJvdW5kAAAAAAAHAAAANVVzZXIgaGFzIGFscmVhZHkgc2VsZi1yZWdpc3RlcmVkIChoYXMgYSBNZW1iZXIgYmFkZ2UpAAAAAAAAEUFscmVhZHlSZWdpc3RlcmVkAAAAAAAACAAAABFJbnZhbGlkIHNpZ25hdHVyZQAAAAAAABBJbnZhbGlkU2lnbmF0dXJlAAAACQAAABJOb25jZSBhbHJlYWR5IHVzZWQAAAAAAAlOb25jZVVzZWQAAAAAAAAKAAAAEVNpZ25hdHVyZSBleHBpcmVkAAAAAAAAEFNpZ25hdHVyZUV4cGlyZWQAAAALAAAAEEludmFsaWQgVmFsb3IgSUQAAAAOSW52YWxpZFZhbG9ySWQAAAAAAAwAAAATTWludCBub3QgYXV0aG9yaXplZAAAAAARTWludE5vdEF1dGhvcml6ZWQAAAAAAAANAAAAEkJhZGdlIG5vdCBtaW50YWJsZQAAAAAAEEJhZGdlTm90TWludGFibGUAAAAOAAAAE1JlZW50cmFuY3kgZGV0ZWN0ZWQAAAAAElJlZW50cmFuY3lEZXRlY3RlZAAAAAAADw==",
110
+ "AAAAAgAAAB1TdG9yYWdlIGtleXMgZm9yIHRoZSBjb250cmFjdAAAAAAAAAAAAAAHRGF0YUtleQAAAAANAAAAAAAAAEpBZG1pbiBhZGRyZXNzIChrZXB0IGZvciBiYWNrd2FyZCBjb21wYXQgZHVyaW5nIG1pZ3JhdGlvbiwgd2lsbCBiZSByZW1vdmVkKQAAAAAABUFkbWluAAAAAAAAAAAAAClXaGV0aGVyIHRoZSBjb250cmFjdCBoYXMgYmVlbiBpbml0aWFsaXplZAAAAAAAAAtJbml0aWFsaXplZAAAAAAAAAAAMkZvdW5kZXIgYWRkcmVzcyAocmVjZWl2ZXMgcGVybWFuZW50IEZvdW5kZXIgYmFkZ2UpAAAAAAAHRm91bmRlcgAAAAAAAAAAGUdvdmVybm9yIGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIR292ZXJub3IAAAAAAAAAGVRyZWFzdXJ5IGNvbnRyYWN0IGFkZHJlc3MAAAAAAAAIVHJlYXN1cnkAAAAAAAAAFlRvdGFsIHN1cHBseSBvZiB0b2tlbnMAAAAAAAtUb3RhbFN1cHBseQAAAAAAAAAAOVRoZSB2YWxvcl9pZCB1c2VkIGJ5IHNlbGZfcmVnaXN0ZXIoKSBmb3IgdGhlIE1lbWJlciBiYWRnZQAAAAAAAA1NZW1iZXJWYWxvcklkAAAAAAAAAQAAABxUb2tlbiBJRCAtPiBWYWxvciBJRCBtYXBwaW5nAAAADFRva2VuVmFsb3JJZAAAAAEAAAAGAAAAAQAAAB5WYWxvciBJRCAtPiBWYWxvciBkYXRhIG1hcHBpbmcAAAAAAAlWYWxvckRhdGEAAAAAAAABAAAABgAAAAEAAAAcQWNjb3VudCAtPiBVc2VyU3RhdHMgbWFwcGluZwAAAAlVc2VyU3RhdHMAAAAAAAABAAAAEwAAAAEAAAAhVG9rZW4gSUQgLT4gT3duZXIgYWRkcmVzcyBtYXBwaW5nAAAAAAAAClRva2VuT3duZXIAAAAAAAEAAAAGAAAAAAAAAC1CYWNrZW5kIHB1YmxpYyBrZXkgZm9yIHNpZ25hdHVyZSB2ZXJpZmljYXRpb24AAAAAAAAGU2lnbmVyAAAAAAABAAAAOVVzZWQgbm9uY2VzIGZvciByZXBsYXkgcHJvdGVjdGlvbjogKEFkZHJlc3MsIHU2NCkgLT4gYm9vbAAAAAAAAAlVc2VkTm9uY2UAAAAAAAACAAAAEwAAAAY="]), options);
111
+ this.options = options;
112
+ }
113
+ }
114
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/generated/valocracy/src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAEhC,OAAO,EAEL,MAAM,IAAI,cAAc,EAIxB,IAAI,IAAI,YAAY,GACrB,MAAM,+BAA+B,CAAC;AAcvC,cAAc,sBAAsB,CAAA;AACpC,OAAO,KAAK,QAAQ,MAAM,+BAA+B,CAAA;AACzD,OAAO,KAAK,GAAG,MAAM,0BAA0B,CAAA;AAE/C,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,CAAC;IAClC,0BAA0B;IAC1B,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC;AAC1C,CAAC;AA2CD,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,oBAAoB,EAAC;IACjC;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,gBAAgB,EAAC;IAC7B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,eAAe,EAAC;IAC5B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,kBAAkB,EAAC;IAC/B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,kBAAkB,EAAC;IAC/B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,oBAAoB,EAAC;IACjC;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,gBAAgB,EAAC;IAC7B;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,mBAAmB,EAAC;IAChC;;OAEG;IACH,CAAC,EAAE,EAAC,OAAO,EAAC,kBAAkB,EAAC;IAC/B;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,WAAW,EAAC;IACzB;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,kBAAkB,EAAC;IAChC;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,gBAAgB,EAAC;IAC9B;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,mBAAmB,EAAC;IACjC;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,kBAAkB,EAAC;IAChC;;OAEG;IACH,EAAE,EAAE,EAAC,OAAO,EAAC,oBAAoB,EAAC;CACnC,CAAA;AAmoBD,MAAM,OAAO,MAAO,SAAQ,cAAc;IACxC,MAAM,CAAC,KAAK,CAAC,MAAM;IACjB,4GAA4G;IAC5G,OAQG;QAEH,OAAO,cAAc,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAC7C,CAAC;IACD,YAA4B,OAA8B;QACxD,KAAK,CACH,IAAI,YAAY,CAAC,CAAE,8ZAA8Z;YAC/a,0EAA0E;YAC1E,kUAAkU;YAClU,8EAA8E;YAC9E,kFAAkF;YAClF,8QAA8Q;YAC9Q,kGAAkG;YAClG,0IAA0I;YAC1I,8GAA8G;YAC9G,kGAAkG;YAClG,kIAAkI;YAClI,kUAAkU;YAClU,0HAA0H;YAC1H,kVAAkV;YAClV,00CAA00C;YAC10C,0OAA0O;YAC1O,0HAA0H;YAC1H,kIAAkI;YAClI,0XAA0X;YAC1X,kGAAkG;YAClG,8XAA8X;YAC9X,kNAAkN;YAClN,kpBAAkpB;YAClpB,kHAAkH;YAClH,kQAAkQ;YAClQ,0OAA0O;YAC1O,8PAA8P;YAC9P,8IAA8I;YAC9I,8QAA8Q;YAC9Q,8eAA8e;YAC9e,0sCAA0sC;YAC1sC,8uCAA8uC,CAAE,CAAC,EACnvC,OAAO,CACR,CAAA;QAnCyB,YAAO,GAAP,OAAO,CAAuB;IAoC1D,CAAC;CAEF"}
@@ -0,0 +1,5 @@
1
+ export * from './clients/index.js';
2
+ export * from './utils/index.js';
3
+ export * from './react/index.js';
4
+ export * from './wallet/index.js';
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from './clients/index.js';
2
+ export * from './utils/index.js';
3
+ export * from './react/index.js';
4
+ export * from './wallet/index.js';
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1,24 @@
1
+ export interface Proposal {
2
+ id: bigint;
3
+ proposer: string;
4
+ description: string;
5
+ votesFor: bigint;
6
+ votesAgainst: bigint;
7
+ startTime: bigint;
8
+ endTime: bigint;
9
+ executed: boolean;
10
+ }
11
+ export interface UseGovernorResult {
12
+ proposal: Proposal | null;
13
+ isLoading: boolean;
14
+ error: Error | null;
15
+ refetch: () => Promise<void>;
16
+ }
17
+ /**
18
+ * React hook to fetch Governor contract proposal data
19
+ *
20
+ * @param proposalId - The proposal ID to query (optional)
21
+ * @returns Object containing proposal data, loading state, and refetch function
22
+ */
23
+ export declare function useGovernor(proposalId?: bigint): UseGovernorResult;
24
+ //# sourceMappingURL=useGovernor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGovernor.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useGovernor.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;CAEnB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;;;GAKG;AAGH,wBAAgB,WAAW,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAsClE"}
@@ -0,0 +1,45 @@
1
+ import { useState, useEffect } from 'react';
2
+ import { useKarn } from '../providers/KarnProvider.js';
3
+ /**
4
+ * React hook to fetch Governor contract proposal data
5
+ *
6
+ * @param proposalId - The proposal ID to query (optional)
7
+ * @returns Object containing proposal data, loading state, and refetch function
8
+ */
9
+ export function useGovernor(proposalId) {
10
+ const { governor } = useKarn();
11
+ const [proposal, setProposal] = useState(null);
12
+ const [isLoading, setIsLoading] = useState(false);
13
+ const [error, setError] = useState(null);
14
+ const fetchData = async () => {
15
+ if (proposalId === undefined) {
16
+ setProposal(null);
17
+ setError(null);
18
+ return;
19
+ }
20
+ setIsLoading(true);
21
+ setError(null);
22
+ try {
23
+ const proposalData = await governor.getProposal(proposalId);
24
+ setProposal(proposalData);
25
+ }
26
+ catch (err) {
27
+ const error = err instanceof Error ? err : new Error('Failed to fetch proposal data');
28
+ setError(error);
29
+ console.error('useGovernor error:', error);
30
+ }
31
+ finally {
32
+ setIsLoading(false);
33
+ }
34
+ };
35
+ useEffect(() => {
36
+ fetchData();
37
+ }, [proposalId?.toString()]);
38
+ return {
39
+ proposal,
40
+ isLoading,
41
+ error,
42
+ refetch: fetchData,
43
+ };
44
+ }
45
+ //# sourceMappingURL=useGovernor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useGovernor.js","sourceRoot":"","sources":["../../../src/react/hooks/useGovernor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAqBvD;;;;;GAKG;AAGH,MAAM,UAAU,WAAW,CAAC,UAAmB;IAC7C,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/B,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,QAAQ,CAAkB,IAAI,CAAC,CAAC;IAChE,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;QAC3B,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;YAC7B,WAAW,CAAC,IAAI,CAAC,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,YAAY,GAAG,MAAM,QAAQ,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;YAC5D,WAAW,CAAC,YAAwB,CAAC,CAAC;QACxC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACtF,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAE7B,OAAO;QACL,QAAQ;QACR,SAAS;QACT,KAAK;QACL,OAAO,EAAE,SAAS;KACnB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * React hook for multi-wallet support
3
+ *
4
+ * Provides React-friendly interface to WalletManager with automatic state updates
5
+ */
6
+ import { WalletManager, WalletType, WalletState, WalletMetadata, WalletConnection, SignTransactionOptions } from '../../wallet/index.js';
7
+ export interface UseMultiWalletReturn {
8
+ /** Current wallet state */
9
+ state: WalletState;
10
+ /** List of available (installed) wallets */
11
+ availableWallets: WalletMetadata[];
12
+ /** List of all supported wallets (including unavailable) */
13
+ allWallets: WalletMetadata[];
14
+ /** Connect to a specific wallet */
15
+ connect: (walletType: WalletType) => Promise<WalletConnection>;
16
+ /** Disconnect from current wallet */
17
+ disconnect: () => Promise<void>;
18
+ /** Sign a transaction with current wallet */
19
+ signTransaction: (xdr: string, options?: SignTransactionOptions) => Promise<string>;
20
+ /** Sign a message (if supported) */
21
+ signMessage: (message: string) => Promise<string>;
22
+ /** Get current network (if supported) */
23
+ getNetwork: () => Promise<string>;
24
+ /** Get current address */
25
+ getAddress: () => Promise<string | null>;
26
+ /** Check if connected */
27
+ isConnected: () => Promise<boolean>;
28
+ /** Wallet manager instance (for advanced usage) */
29
+ manager: WalletManager;
30
+ }
31
+ /**
32
+ * Hook for multi-wallet support
33
+ */
34
+ export declare function useMultiWallet(): UseMultiWalletReturn;
35
+ //# sourceMappingURL=useMultiWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMultiWallet.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useMultiWallet.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,EACL,aAAa,EACb,UAAU,EACV,WAAW,EACX,cAAc,EACd,gBAAgB,EAEhB,sBAAsB,EAEvB,MAAM,uBAAuB,CAAC;AAE/B,MAAM,WAAW,oBAAoB;IACnC,2BAA2B;IAC3B,KAAK,EAAE,WAAW,CAAC;IAEnB,4CAA4C;IAC5C,gBAAgB,EAAE,cAAc,EAAE,CAAC;IAEnC,4DAA4D;IAC5D,UAAU,EAAE,cAAc,EAAE,CAAC;IAE7B,mCAAmC;IACnC,OAAO,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE/D,qCAAqC;IACrC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAEhC,6CAA6C;IAC7C,eAAe,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,sBAAsB,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpF,oCAAoC;IACpC,WAAW,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAElD,yCAAyC;IACzC,UAAU,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,CAAC;IAElC,0BAA0B;IAC1B,UAAU,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IAEzC,yBAAyB;IACzB,WAAW,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpC,mDAAmD;IACnD,OAAO,EAAE,aAAa,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,oBAAoB,CA8GrD"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * React hook for multi-wallet support
3
+ *
4
+ * Provides React-friendly interface to WalletManager with automatic state updates
5
+ */
6
+ import { useState, useEffect, useCallback, useRef } from 'react';
7
+ import { WalletManager, WalletEvent, } from '../../wallet/index.js';
8
+ /**
9
+ * Hook for multi-wallet support
10
+ */
11
+ export function useMultiWallet() {
12
+ const managerRef = useRef();
13
+ if (!managerRef.current) {
14
+ managerRef.current = new WalletManager();
15
+ }
16
+ const manager = managerRef.current;
17
+ const [state, setState] = useState(manager.getState());
18
+ const [availableWallets, setAvailableWallets] = useState([]);
19
+ const [allWallets] = useState(manager.getAllWallets());
20
+ useEffect(() => {
21
+ const handleConnect = () => setState(manager.getState());
22
+ const handleDisconnect = () => setState(manager.getState());
23
+ const handleAccountChanged = () => setState(manager.getState());
24
+ const handleNetworkChanged = () => setState(manager.getState());
25
+ manager.on(WalletEvent.CONNECT, handleConnect);
26
+ manager.on(WalletEvent.DISCONNECT, handleDisconnect);
27
+ manager.on(WalletEvent.ACCOUNT_CHANGED, handleAccountChanged);
28
+ manager.on(WalletEvent.NETWORK_CHANGED, handleNetworkChanged);
29
+ return () => {
30
+ manager.off(WalletEvent.CONNECT, handleConnect);
31
+ manager.off(WalletEvent.DISCONNECT, handleDisconnect);
32
+ manager.off(WalletEvent.ACCOUNT_CHANGED, handleAccountChanged);
33
+ manager.off(WalletEvent.NETWORK_CHANGED, handleNetworkChanged);
34
+ };
35
+ }, [manager]);
36
+ useEffect(() => {
37
+ let mounted = true;
38
+ async function loadAvailableWallets() {
39
+ const wallets = await manager.getAvailableWallets();
40
+ if (mounted) {
41
+ setAvailableWallets(wallets);
42
+ }
43
+ }
44
+ loadAvailableWallets();
45
+ return () => {
46
+ mounted = false;
47
+ };
48
+ }, [manager]);
49
+ const connect = useCallback(async (walletType) => {
50
+ const connection = await manager.connect(walletType);
51
+ setState(manager.getState());
52
+ return connection;
53
+ }, [manager]);
54
+ const disconnect = useCallback(async () => {
55
+ await manager.disconnect();
56
+ setState(manager.getState());
57
+ }, [manager]);
58
+ const signTransaction = useCallback(async (xdr, options) => {
59
+ return await manager.signTransaction(xdr, options);
60
+ }, [manager]);
61
+ const signMessage = useCallback(async (message) => {
62
+ return await manager.signMessage(message);
63
+ }, [manager]);
64
+ const getNetwork = useCallback(async () => {
65
+ return await manager.getNetwork();
66
+ }, [manager]);
67
+ const getAddress = useCallback(async () => {
68
+ return await manager.getAddress();
69
+ }, [manager]);
70
+ const isConnected = useCallback(async () => {
71
+ return await manager.isConnected();
72
+ }, [manager]);
73
+ return {
74
+ state,
75
+ availableWallets,
76
+ allWallets,
77
+ connect,
78
+ disconnect,
79
+ signTransaction,
80
+ signMessage,
81
+ getNetwork,
82
+ getAddress,
83
+ isConnected,
84
+ manager,
85
+ };
86
+ }
87
+ //# sourceMappingURL=useMultiWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useMultiWallet.js","sourceRoot":"","sources":["../../../src/react/hooks/useMultiWallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ export interface UseTreasuryResult {
2
+ claimableBalance: bigint | null;
3
+ isLoading: boolean;
4
+ error: Error | null;
5
+ refetch: () => Promise<void>;
6
+ }
7
+ /**
8
+ * React hook to fetch Treasury contract data for a member
9
+ *
10
+ * @param member - The member address to query (optional)
11
+ * @returns Object containing claimable balance, loading state, and refetch function
12
+ */
13
+ export declare function useTreasury(member?: string): UseTreasuryResult;
14
+ //# sourceMappingURL=useTreasury.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTreasury.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useTreasury.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;;;GAKG;AAGH,wBAAgB,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAsC9D"}
@@ -0,0 +1,45 @@
1
+ import { useState, useEffect } from 'react';
2
+ import { useKarn } from '../providers/KarnProvider.js';
3
+ /**
4
+ * React hook to fetch Treasury contract data for a member
5
+ *
6
+ * @param member - The member address to query (optional)
7
+ * @returns Object containing claimable balance, loading state, and refetch function
8
+ */
9
+ export function useTreasury(member) {
10
+ const { treasury } = useKarn();
11
+ const [claimableBalance, setClaimableBalance] = useState(null);
12
+ const [isLoading, setIsLoading] = useState(false);
13
+ const [error, setError] = useState(null);
14
+ const fetchData = async () => {
15
+ if (!member) {
16
+ setClaimableBalance(null);
17
+ setError(null);
18
+ return;
19
+ }
20
+ setIsLoading(true);
21
+ setError(null);
22
+ try {
23
+ const balance = await treasury.getClaimableBalance(member);
24
+ setClaimableBalance(balance);
25
+ }
26
+ catch (err) {
27
+ const error = err instanceof Error ? err : new Error('Failed to fetch treasury data');
28
+ setError(error);
29
+ console.error('useTreasury error:', error);
30
+ }
31
+ finally {
32
+ setIsLoading(false);
33
+ }
34
+ };
35
+ useEffect(() => {
36
+ fetchData();
37
+ }, [member]);
38
+ return {
39
+ claimableBalance,
40
+ isLoading,
41
+ error,
42
+ refetch: fetchData,
43
+ };
44
+ }
45
+ //# sourceMappingURL=useTreasury.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useTreasury.js","sourceRoot":"","sources":["../../../src/react/hooks/useTreasury.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AASvD;;;;;GAKG;AAGH,MAAM,UAAU,WAAW,CAAC,MAAe;IACzC,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;IAC/B,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,mBAAmB,CAAC,IAAI,CAAC,CAAC;YAC1B,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAC3D,mBAAmB,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAC;YACtF,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;IAEb,OAAO;QACL,gBAAgB;QAChB,SAAS;QACT,KAAK;QACL,OAAO,EAAE,SAAS;KACnB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,16 @@
1
+ export interface UseValocracyResult {
2
+ level: number | null;
3
+ mana: number | null;
4
+ isLoading: boolean;
5
+ error: Error | null;
6
+ refetch: () => Promise<void>;
7
+ }
8
+ /**
9
+ * React hook to fetch Valocracy contract data for an address
10
+ *
11
+ * @param address - The account address to query (optional)
12
+ * @returns Object containing level, mana, loading state, and refetch function
13
+ *
14
+ */
15
+ export declare function useValocracy(address?: string): UseValocracyResult;
16
+ //# sourceMappingURL=useValocracy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useValocracy.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useValocracy.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IACpB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,kBAAkB,CA+CjE"}
@@ -0,0 +1,54 @@
1
+ import { useState, useEffect } from 'react';
2
+ import { useKarn } from '../providers/KarnProvider.js';
3
+ /**
4
+ * React hook to fetch Valocracy contract data for an address
5
+ *
6
+ * @param address - The account address to query (optional)
7
+ * @returns Object containing level, mana, loading state, and refetch function
8
+ *
9
+ */
10
+ export function useValocracy(address) {
11
+ const { valocracy } = useKarn();
12
+ const [level, setLevel] = useState(null);
13
+ const [mana, setMana] = useState(null);
14
+ const [isLoading, setIsLoading] = useState(false);
15
+ const [error, setError] = useState(null);
16
+ const fetchData = async () => {
17
+ if (!address) {
18
+ setLevel(null);
19
+ setMana(null);
20
+ setError(null);
21
+ return;
22
+ }
23
+ setIsLoading(true);
24
+ setError(null);
25
+ try {
26
+ // Fetch level and mana in parallel
27
+ const [levelResult, manaResult] = await Promise.all([
28
+ valocracy.getLevel(address),
29
+ valocracy.getMana(address),
30
+ ]);
31
+ setLevel(levelResult);
32
+ setMana(manaResult);
33
+ }
34
+ catch (err) {
35
+ const error = err instanceof Error ? err : new Error('Failed to fetch Valocracy data');
36
+ setError(error);
37
+ console.error('useValocracy error:', error);
38
+ }
39
+ finally {
40
+ setIsLoading(false);
41
+ }
42
+ };
43
+ useEffect(() => {
44
+ fetchData();
45
+ }, [address]);
46
+ return {
47
+ level,
48
+ mana,
49
+ isLoading,
50
+ error,
51
+ refetch: fetchData,
52
+ };
53
+ }
54
+ //# sourceMappingURL=useValocracy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useValocracy.js","sourceRoot":"","sources":["../../../src/react/hooks/useValocracy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAUvD;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,MAAM,EAAE,SAAS,EAAE,GAAG,OAAO,EAAE,CAAC;IAChC,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,GAAG,QAAQ,CAAgB,IAAI,CAAC,CAAC;IACtD,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,GAAG,QAAQ,CAAU,KAAK,CAAC,CAAC;IAC3D,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAe,IAAI,CAAC,CAAC;IAEvD,MAAM,SAAS,GAAG,KAAK,IAAI,EAAE;QAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,CAAC;YACd,QAAQ,CAAC,IAAI,CAAC,CAAC;YACf,OAAO;QACT,CAAC;QAED,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,QAAQ,CAAC,IAAI,CAAC,CAAC;QAEf,IAAI,CAAC;YACH,mCAAmC;YACnC,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAClD,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC;gBAC3B,SAAS,CAAC,OAAO,CAAC,OAAO,CAAC;aAC3B,CAAC,CAAC;YAEH,QAAQ,CAAC,WAAW,CAAC,CAAC;YACtB,OAAO,CAAC,UAAU,CAAC,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;YACvF,QAAQ,CAAC,KAAK,CAAC,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;gBAAS,CAAC;YACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE;QACb,SAAS,EAAE,CAAC;IACd,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,OAAO;QACL,KAAK;QACL,IAAI;QACJ,SAAS;QACT,KAAK;QACL,OAAO,EAAE,SAAS;KACnB,CAAC;AACJ,CAAC"}
@@ -0,0 +1,13 @@
1
+ export declare const useWallet: () => {
2
+ connect: () => Promise<void>;
3
+ signTransaction: (transactionXdr: string, opts?: {
4
+ network?: string | undefined;
5
+ networkPassphrase?: string | undefined;
6
+ accountToSign?: string | undefined;
7
+ } | undefined) => Promise<string>;
8
+ isConnected: boolean;
9
+ address: string | null;
10
+ isConnecting: boolean;
11
+ error: string | null;
12
+ };
13
+ //# sourceMappingURL=useWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWallet.d.ts","sourceRoot":"","sources":["../../../src/react/hooks/useWallet.ts"],"names":[],"mappings":"AAYA,eAAO,MAAM,SAAS;;;eAXG,CAAC;yBAExB,CAAC;qBAAuC,CAAC;;iBAG5B,OAAO;aACX,MAAM,GAAG,IAAI;kBACR,OAAO;WACd,MAAM,GAAG,IAAI;CAkDrB,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { useState, useCallback, useEffect } from 'react';
2
+ import * as freighter from '@stellar/freighter-api';
3
+ // @ts-ignore
4
+ const { isConnected, requestAccess, signTransaction } = freighter;
5
+ export const useWallet = () => {
6
+ const [state, setState] = useState({
7
+ isConnected: false,
8
+ address: null,
9
+ isConnecting: false,
10
+ error: null,
11
+ });
12
+ const connect = useCallback(async () => {
13
+ setState(prev => ({ ...prev, isConnecting: true, error: null }));
14
+ try {
15
+ const allowed = await requestAccess();
16
+ if (allowed) {
17
+ const address = allowed;
18
+ if (address) {
19
+ setState({
20
+ isConnected: true,
21
+ address: address, // Type check: allowed is string
22
+ isConnecting: false,
23
+ error: null,
24
+ });
25
+ }
26
+ else {
27
+ throw new Error("Access denied");
28
+ }
29
+ }
30
+ else {
31
+ throw new Error("User denied access");
32
+ }
33
+ }
34
+ catch (err) {
35
+ setState(prev => ({ ...prev, isConnecting: false, error: err.message || "Failed to connect" }));
36
+ }
37
+ }, []);
38
+ // Check connection on mount
39
+ useEffect(() => {
40
+ isConnected().then(async (connected) => {
41
+ if (connected) {
42
+ }
43
+ });
44
+ }, []);
45
+ return {
46
+ ...state,
47
+ connect,
48
+ signTransaction, // Expose freighter sign
49
+ };
50
+ };
51
+ //# sourceMappingURL=useWallet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWallet.js","sourceRoot":"","sources":["../../../src/react/hooks/useWallet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AACzD,OAAO,KAAK,SAAS,MAAM,wBAAwB,CAAC;AACpD,aAAa;AACb,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,SAAS,CAAC;AASlE,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,EAAE;IAC5B,MAAM,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,QAAQ,CAAc;QAC9C,WAAW,EAAE,KAAK;QAClB,OAAO,EAAE,IAAI;QACb,YAAY,EAAE,KAAK;QACnB,KAAK,EAAE,IAAI;KACZ,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,IAAI,EAAE;QACrC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACjE,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,aAAa,EAAE,CAAC;YACtC,IAAI,OAAO,EAAE,CAAC;gBAEV,MAAM,OAAO,GAAG,OAAO,CAAC;gBACxB,IAAI,OAAO,EAAE,CAAC;oBACZ,QAAQ,CAAC;wBACP,WAAW,EAAE,IAAI;wBACjB,OAAO,EAAE,OAAO,EAAE,gCAAgC;wBAClD,YAAY,EAAE,KAAK;wBACnB,KAAK,EAAE,IAAI;qBACZ,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACL,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;gBACpC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,EAAE,GAAG,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,OAAO,IAAI,mBAAmB,EAAE,CAAC,CAAC,CAAC;QAClG,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,4BAA4B;IAC5B,SAAS,CAAC,GAAG,EAAE;QACb,WAAW,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,EAAE;YACrC,IAAI,SAAS,EAAE,CAAC;YAEhB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,GAAG,KAAK;QACR,OAAO;QACP,eAAe,EAAE,wBAAwB;KAC1C,CAAC;AACJ,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './providers/KarnProvider.js';
2
+ export * from './hooks/useValocracy.js';
3
+ export * from './hooks/useGovernor.js';
4
+ export * from './hooks/useTreasury.js';
5
+ export * from './hooks/useWallet.js';
6
+ export * from './hooks/useMultiWallet.js';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/react/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yBAAyB,CAAC;AACxC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC"}