aptos-x402 2.0.1 → 2.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 (257) hide show
  1. package/README.md +58 -22
  2. package/dist/components/ui/button.d.ts +11 -0
  3. package/dist/components/ui/button.d.ts.map +1 -0
  4. package/dist/components/ui/button.jsx +34 -0
  5. package/dist/components/ui/button.jsx.map +1 -0
  6. package/dist/components/ui/select.d.ts +16 -0
  7. package/dist/components/ui/select.d.ts.map +1 -0
  8. package/dist/components/ui/select.jsx +62 -0
  9. package/dist/components/ui/select.jsx.map +1 -0
  10. package/dist/lib/aptos-utils.d.ts.map +1 -0
  11. package/dist/lib/aptos-utils.js.map +1 -0
  12. package/dist/lib/arc8004/chain/index.d.ts +10 -0
  13. package/dist/lib/arc8004/chain/index.d.ts.map +1 -0
  14. package/dist/lib/arc8004/chain/index.js +9 -0
  15. package/dist/lib/arc8004/chain/index.js.map +1 -0
  16. package/dist/lib/arc8004/chain/types.d.ts +190 -0
  17. package/dist/lib/arc8004/chain/types.d.ts.map +1 -0
  18. package/dist/lib/arc8004/chain/types.js +278 -0
  19. package/dist/lib/arc8004/chain/types.js.map +1 -0
  20. package/dist/lib/arc8004/identity/agent-card.d.ts.map +1 -0
  21. package/dist/lib/arc8004/identity/agent-card.js.map +1 -0
  22. package/dist/lib/arc8004/identity/index.d.ts.map +1 -0
  23. package/dist/lib/arc8004/identity/index.js.map +1 -0
  24. package/dist/lib/arc8004/identity/registry.d.ts.map +1 -0
  25. package/dist/{arc8004 → lib/arc8004}/identity/registry.js +2 -2
  26. package/dist/lib/arc8004/identity/registry.js.map +1 -0
  27. package/dist/lib/arc8004/index.d.ts +49 -0
  28. package/dist/lib/arc8004/index.d.ts.map +1 -0
  29. package/dist/lib/arc8004/index.js +54 -0
  30. package/dist/lib/arc8004/index.js.map +1 -0
  31. package/dist/lib/arc8004/reputation/index.d.ts.map +1 -0
  32. package/dist/lib/arc8004/reputation/index.js.map +1 -0
  33. package/dist/lib/arc8004/reputation/registry.d.ts.map +1 -0
  34. package/dist/{arc8004 → lib/arc8004}/reputation/registry.js +2 -2
  35. package/dist/lib/arc8004/reputation/registry.js.map +1 -0
  36. package/dist/lib/arc8004/reputation/scoring.d.ts.map +1 -0
  37. package/dist/lib/arc8004/reputation/scoring.js.map +1 -0
  38. package/dist/lib/arc8004/storage/index.d.ts +44 -0
  39. package/dist/lib/arc8004/storage/index.d.ts.map +1 -0
  40. package/dist/lib/arc8004/storage/index.js +76 -0
  41. package/dist/lib/arc8004/storage/index.js.map +1 -0
  42. package/dist/lib/arc8004/storage/memory.d.ts +114 -0
  43. package/dist/lib/arc8004/storage/memory.d.ts.map +1 -0
  44. package/dist/lib/arc8004/storage/memory.js +458 -0
  45. package/dist/lib/arc8004/storage/memory.js.map +1 -0
  46. package/dist/lib/arc8004/storage/postgres.d.ts +93 -0
  47. package/dist/lib/arc8004/storage/postgres.d.ts.map +1 -0
  48. package/dist/lib/arc8004/storage/postgres.js +637 -0
  49. package/dist/lib/arc8004/storage/postgres.js.map +1 -0
  50. package/dist/lib/arc8004/storage/types.d.ts +201 -0
  51. package/dist/lib/arc8004/storage/types.d.ts.map +1 -0
  52. package/dist/lib/arc8004/storage/types.js +12 -0
  53. package/dist/lib/arc8004/storage/types.js.map +1 -0
  54. package/dist/{arc8004 → lib/arc8004}/types.d.ts +88 -5
  55. package/dist/lib/arc8004/types.d.ts.map +1 -0
  56. package/dist/lib/arc8004/types.js +75 -0
  57. package/dist/lib/arc8004/types.js.map +1 -0
  58. package/dist/lib/arc8004/validation/index.d.ts.map +1 -0
  59. package/dist/lib/arc8004/validation/index.js.map +1 -0
  60. package/dist/lib/arc8004/validation/registry.d.ts.map +1 -0
  61. package/dist/{arc8004 → lib/arc8004}/validation/registry.js +2 -2
  62. package/dist/lib/arc8004/validation/registry.js.map +1 -0
  63. package/dist/lib/db/index.d.ts.map +1 -0
  64. package/dist/lib/db/index.js.map +1 -0
  65. package/dist/lib/db/schema.d.ts.map +1 -0
  66. package/dist/lib/db/schema.js.map +1 -0
  67. package/dist/lib/facilitator-client.d.ts.map +1 -0
  68. package/dist/lib/facilitator-client.js.map +1 -0
  69. package/dist/lib/index.d.ts.map +1 -0
  70. package/dist/lib/index.js.map +1 -0
  71. package/dist/lib/utils.d.ts.map +1 -0
  72. package/dist/lib/utils.js.map +1 -0
  73. package/dist/lib/x402-axios.d.ts.map +1 -0
  74. package/dist/lib/x402-axios.js.map +1 -0
  75. package/dist/lib/x402-middleware.d.ts.map +1 -0
  76. package/dist/lib/x402-middleware.js.map +1 -0
  77. package/dist/lib/x402-protocol-types.d.ts.map +1 -0
  78. package/dist/lib/x402-protocol-types.js.map +1 -0
  79. package/dist/lib/x402-types.d.ts.map +1 -0
  80. package/dist/{x402-types.js.map → lib/x402-types.js.map} +1 -1
  81. package/dist/src/arc8004/client.d.ts +313 -0
  82. package/dist/src/arc8004/client.d.ts.map +1 -0
  83. package/dist/src/arc8004/client.js +586 -0
  84. package/dist/src/arc8004/client.js.map +1 -0
  85. package/dist/src/arc8004/index.d.ts +54 -0
  86. package/dist/src/arc8004/index.d.ts.map +1 -0
  87. package/dist/src/arc8004/index.js +57 -0
  88. package/dist/src/arc8004/index.js.map +1 -0
  89. package/dist/src/components/ui/shadcn-io/code-block/index.d.ts +67 -0
  90. package/dist/src/components/ui/shadcn-io/code-block/index.d.ts.map +1 -0
  91. package/dist/src/components/ui/shadcn-io/code-block/index.jsx +227 -0
  92. package/dist/src/components/ui/shadcn-io/code-block/index.jsx.map +1 -0
  93. package/dist/src/components/ui/shadcn-io/code-block/server.d.ts +10 -0
  94. package/dist/src/components/ui/shadcn-io/code-block/server.d.ts.map +1 -0
  95. package/dist/src/components/ui/shadcn-io/code-block/server.jsx +34 -0
  96. package/dist/src/components/ui/shadcn-io/code-block/server.jsx.map +1 -0
  97. package/dist/src/index.d.ts +14 -0
  98. package/dist/src/index.d.ts.map +1 -0
  99. package/dist/src/index.js +23 -0
  100. package/dist/src/index.js.map +1 -0
  101. package/dist/src/server/index.d.ts +8 -0
  102. package/dist/src/server/index.d.ts.map +1 -0
  103. package/dist/src/server/index.js +8 -0
  104. package/dist/src/server/index.js.map +1 -0
  105. package/dist/src/server/next.d.ts +44 -0
  106. package/dist/src/server/next.d.ts.map +1 -0
  107. package/dist/src/server/next.js +220 -0
  108. package/dist/src/server/next.js.map +1 -0
  109. package/dist/src/types/config.d.ts +43 -0
  110. package/dist/src/types/config.d.ts.map +1 -0
  111. package/dist/src/types/config.js +6 -0
  112. package/dist/src/types/config.js.map +1 -0
  113. package/dist/src/types/index.d.ts +9 -0
  114. package/dist/src/types/index.d.ts.map +1 -0
  115. package/dist/src/types/index.js +7 -0
  116. package/dist/src/types/index.js.map +1 -0
  117. package/dist/src/types/protocol.d.ts +119 -0
  118. package/dist/src/types/protocol.d.ts.map +1 -0
  119. package/dist/src/types/protocol.js +12 -0
  120. package/dist/src/types/protocol.js.map +1 -0
  121. package/dist/tsconfig.sdk.tsbuildinfo +1 -0
  122. package/package.json +12 -10
  123. package/dist/agent/data-extractor.d.ts +0 -13
  124. package/dist/agent/data-extractor.d.ts.map +0 -1
  125. package/dist/agent/data-extractor.js +0 -191
  126. package/dist/agent/data-extractor.js.map +0 -1
  127. package/dist/agent/executor.d.ts +0 -27
  128. package/dist/agent/executor.d.ts.map +0 -1
  129. package/dist/agent/executor.js +0 -245
  130. package/dist/agent/executor.js.map +0 -1
  131. package/dist/agent/gemini-interpreter.d.ts +0 -10
  132. package/dist/agent/gemini-interpreter.d.ts.map +0 -1
  133. package/dist/agent/gemini-interpreter.js +0 -142
  134. package/dist/agent/gemini-interpreter.js.map +0 -1
  135. package/dist/agent/github-models.d.ts +0 -30
  136. package/dist/agent/github-models.d.ts.map +0 -1
  137. package/dist/agent/github-models.js +0 -114
  138. package/dist/agent/github-models.js.map +0 -1
  139. package/dist/agent/llm-chat.d.ts +0 -16
  140. package/dist/agent/llm-chat.d.ts.map +0 -1
  141. package/dist/agent/llm-chat.js +0 -181
  142. package/dist/agent/llm-chat.js.map +0 -1
  143. package/dist/agent/wallet.d.ts +0 -32
  144. package/dist/agent/wallet.d.ts.map +0 -1
  145. package/dist/agent/wallet.js +0 -92
  146. package/dist/agent/wallet.js.map +0 -1
  147. package/dist/aptos-utils.d.ts.map +0 -1
  148. package/dist/aptos-utils.js.map +0 -1
  149. package/dist/arc8004/identity/agent-card.d.ts.map +0 -1
  150. package/dist/arc8004/identity/agent-card.js.map +0 -1
  151. package/dist/arc8004/identity/index.d.ts.map +0 -1
  152. package/dist/arc8004/identity/index.js.map +0 -1
  153. package/dist/arc8004/identity/registry.d.ts.map +0 -1
  154. package/dist/arc8004/identity/registry.js.map +0 -1
  155. package/dist/arc8004/index.d.ts +0 -21
  156. package/dist/arc8004/index.d.ts.map +0 -1
  157. package/dist/arc8004/index.js +0 -26
  158. package/dist/arc8004/index.js.map +0 -1
  159. package/dist/arc8004/reputation/index.d.ts.map +0 -1
  160. package/dist/arc8004/reputation/index.js.map +0 -1
  161. package/dist/arc8004/reputation/registry.d.ts.map +0 -1
  162. package/dist/arc8004/reputation/registry.js.map +0 -1
  163. package/dist/arc8004/reputation/scoring.d.ts.map +0 -1
  164. package/dist/arc8004/reputation/scoring.js.map +0 -1
  165. package/dist/arc8004/types.d.ts.map +0 -1
  166. package/dist/arc8004/types.js +0 -36
  167. package/dist/arc8004/types.js.map +0 -1
  168. package/dist/arc8004/validation/index.d.ts.map +0 -1
  169. package/dist/arc8004/validation/index.js.map +0 -1
  170. package/dist/arc8004/validation/registry.d.ts.map +0 -1
  171. package/dist/arc8004/validation/registry.js.map +0 -1
  172. package/dist/db/index.d.ts.map +0 -1
  173. package/dist/db/index.js.map +0 -1
  174. package/dist/db/schema.d.ts.map +0 -1
  175. package/dist/db/schema.js.map +0 -1
  176. package/dist/facilitator-client.d.ts.map +0 -1
  177. package/dist/facilitator-client.js.map +0 -1
  178. package/dist/index.d.ts.map +0 -1
  179. package/dist/index.js.map +0 -1
  180. package/dist/services/agent-summary.d.ts +0 -24
  181. package/dist/services/agent-summary.d.ts.map +0 -1
  182. package/dist/services/agent-summary.js +0 -90
  183. package/dist/services/agent-summary.js.map +0 -1
  184. package/dist/storage/agents.d.ts +0 -36
  185. package/dist/storage/agents.d.ts.map +0 -1
  186. package/dist/storage/agents.js +0 -111
  187. package/dist/storage/agents.js.map +0 -1
  188. package/dist/storage/apis.d.ts +0 -20
  189. package/dist/storage/apis.d.ts.map +0 -1
  190. package/dist/storage/apis.js +0 -131
  191. package/dist/storage/apis.js.map +0 -1
  192. package/dist/storage/chats.d.ts +0 -44
  193. package/dist/storage/chats.d.ts.map +0 -1
  194. package/dist/storage/chats.js +0 -103
  195. package/dist/storage/chats.js.map +0 -1
  196. package/dist/storage/user-wallets.d.ts +0 -20
  197. package/dist/storage/user-wallets.d.ts.map +0 -1
  198. package/dist/storage/user-wallets.js +0 -52
  199. package/dist/storage/user-wallets.js.map +0 -1
  200. package/dist/utils/agent-symbols.d.ts +0 -20
  201. package/dist/utils/agent-symbols.d.ts.map +0 -1
  202. package/dist/utils/agent-symbols.js +0 -86
  203. package/dist/utils/agent-symbols.js.map +0 -1
  204. package/dist/utils/db-retry.d.ts +0 -9
  205. package/dist/utils/db-retry.d.ts.map +0 -1
  206. package/dist/utils/db-retry.js +0 -25
  207. package/dist/utils/db-retry.js.map +0 -1
  208. package/dist/utils/server-user-id.d.ts +0 -2
  209. package/dist/utils/server-user-id.d.ts.map +0 -1
  210. package/dist/utils/server-user-id.js +0 -9
  211. package/dist/utils/server-user-id.js.map +0 -1
  212. package/dist/utils/user-id.d.ts +0 -21
  213. package/dist/utils/user-id.d.ts.map +0 -1
  214. package/dist/utils/user-id.js +0 -102
  215. package/dist/utils/user-id.js.map +0 -1
  216. package/dist/utils.d.ts.map +0 -1
  217. package/dist/utils.js.map +0 -1
  218. package/dist/x402-axios.d.ts.map +0 -1
  219. package/dist/x402-axios.js.map +0 -1
  220. package/dist/x402-middleware.d.ts.map +0 -1
  221. package/dist/x402-middleware.js.map +0 -1
  222. package/dist/x402-protocol-types.d.ts.map +0 -1
  223. package/dist/x402-protocol-types.js.map +0 -1
  224. package/dist/x402-types.d.ts.map +0 -1
  225. /package/dist/{aptos-utils.d.ts → lib/aptos-utils.d.ts} +0 -0
  226. /package/dist/{aptos-utils.js → lib/aptos-utils.js} +0 -0
  227. /package/dist/{arc8004 → lib/arc8004}/identity/agent-card.d.ts +0 -0
  228. /package/dist/{arc8004 → lib/arc8004}/identity/agent-card.js +0 -0
  229. /package/dist/{arc8004 → lib/arc8004}/identity/index.d.ts +0 -0
  230. /package/dist/{arc8004 → lib/arc8004}/identity/index.js +0 -0
  231. /package/dist/{arc8004 → lib/arc8004}/identity/registry.d.ts +0 -0
  232. /package/dist/{arc8004 → lib/arc8004}/reputation/index.d.ts +0 -0
  233. /package/dist/{arc8004 → lib/arc8004}/reputation/index.js +0 -0
  234. /package/dist/{arc8004 → lib/arc8004}/reputation/registry.d.ts +0 -0
  235. /package/dist/{arc8004 → lib/arc8004}/reputation/scoring.d.ts +0 -0
  236. /package/dist/{arc8004 → lib/arc8004}/reputation/scoring.js +0 -0
  237. /package/dist/{arc8004 → lib/arc8004}/validation/index.d.ts +0 -0
  238. /package/dist/{arc8004 → lib/arc8004}/validation/index.js +0 -0
  239. /package/dist/{arc8004 → lib/arc8004}/validation/registry.d.ts +0 -0
  240. /package/dist/{db → lib/db}/index.d.ts +0 -0
  241. /package/dist/{db → lib/db}/index.js +0 -0
  242. /package/dist/{db → lib/db}/schema.d.ts +0 -0
  243. /package/dist/{db → lib/db}/schema.js +0 -0
  244. /package/dist/{facilitator-client.d.ts → lib/facilitator-client.d.ts} +0 -0
  245. /package/dist/{facilitator-client.js → lib/facilitator-client.js} +0 -0
  246. /package/dist/{index.d.ts → lib/index.d.ts} +0 -0
  247. /package/dist/{index.js → lib/index.js} +0 -0
  248. /package/dist/{utils.d.ts → lib/utils.d.ts} +0 -0
  249. /package/dist/{utils.js → lib/utils.js} +0 -0
  250. /package/dist/{x402-axios.d.ts → lib/x402-axios.d.ts} +0 -0
  251. /package/dist/{x402-axios.js → lib/x402-axios.js} +0 -0
  252. /package/dist/{x402-middleware.d.ts → lib/x402-middleware.d.ts} +0 -0
  253. /package/dist/{x402-middleware.js → lib/x402-middleware.js} +0 -0
  254. /package/dist/{x402-protocol-types.d.ts → lib/x402-protocol-types.d.ts} +0 -0
  255. /package/dist/{x402-protocol-types.js → lib/x402-protocol-types.js} +0 -0
  256. /package/dist/{x402-types.d.ts → lib/x402-types.d.ts} +0 -0
  257. /package/dist/{x402-types.js → lib/x402-types.js} +0 -0
package/README.md CHANGED
@@ -460,42 +460,78 @@ ARC-8004 provides identity, reputation, and validation for AI agents on Aptos. I
460
460
  | **Identity Registry** | Agent Cards with metadata, capabilities, and verification status |
461
461
  | **Reputation Registry** | Trust scores based on feedback from interactions |
462
462
  | **Validation Registry** | Task completion verification before payments |
463
+ | **Flexible Storage** | Memory (default), PostgreSQL, or custom backends |
464
+ | **Optional On-Chain** | Enable NFT minting and attestations when needed |
463
465
 
464
- ### Quick Start
466
+ ### Quick Start (v2.0 - Recommended)
465
467
 
466
468
  ```typescript
467
- import {
468
- IdentityRegistry,
469
- ReputationRegistry,
470
- createAgentCard,
471
- getTrustLevelLabel
472
- } from 'aptos-x402';
473
-
474
- // Register agent identity
475
- const identity = new IdentityRegistry();
476
- await identity.registerIdentity({
469
+ import { createARC8004Client } from 'aptos-x402/arc8004';
470
+
471
+ // Create client - works with zero config (memory storage)
472
+ const client = await createARC8004Client();
473
+
474
+ // Register an agent identity
475
+ const { identity } = await client.identity.register({
477
476
  agentId: 'my-agent',
478
- agentCard: createAgentCard({
477
+ agentCard: {
479
478
  name: 'WeatherBot',
480
479
  description: 'Provides weather data',
481
- ownerAddress: '0x...',
482
- ownerPublicKey: '0x...',
480
+ version: '1.0.0',
483
481
  capabilities: ['payment', 'data-fetch'],
484
- }),
482
+ protocols: ['x402'],
483
+ supportedNetworks: ['aptos-testnet'],
484
+ owner: { address: '0x...', publicKey: '0x...' },
485
+ },
485
486
  });
486
487
 
487
488
  // Submit feedback after payment
488
- const reputation = new ReputationRegistry();
489
- await reputation.submitFeedback({
489
+ await client.reputation.submitFeedback({
490
490
  agentId: 'my-agent',
491
491
  clientAddress: '0xclient',
492
492
  overallScore: 5,
493
493
  paymentHash: '0xPAYMENT_TX',
494
+ feedback: { comment: 'Fast response!' },
495
+ });
496
+
497
+ // Get reputation
498
+ const rep = await client.reputation.getReputation('my-agent');
499
+ console.log('Trust Level:', rep?.trustLevel); // "excellent"
500
+ ```
501
+
502
+ ### Storage Options
503
+
504
+ ```typescript
505
+ // Memory (default) - No database required
506
+ const client = await createARC8004Client({
507
+ config: { storageType: 'memory', skipAgentValidation: true },
494
508
  });
495
509
 
496
- // Get trust score
497
- const score = await reputation.getReputation('my-agent');
498
- console.log(getTrustLevelLabel(score.trustLevel)); // "Excellent"
510
+ // Database - PostgreSQL with Drizzle ORM
511
+ const client = await createARC8004Client({
512
+ config: { storageType: 'database' },
513
+ });
514
+
515
+ // Custom - Bring your own storage
516
+ const client = await createARC8004Client({
517
+ config: { storageType: 'custom' },
518
+ storage: { identity: myStorage, reputation: myRepStorage, validation: myValStorage },
519
+ });
520
+ ```
521
+
522
+ ### On-Chain Integration (Optional)
523
+
524
+ ```typescript
525
+ import { createARC8004Client, AptosOnChainProvider } from 'aptos-x402/arc8004';
526
+
527
+ const client = await createARC8004Client({
528
+ config: {
529
+ storageType: 'memory',
530
+ moduleAddress: '0xYOUR_CONTRACT',
531
+ network: 'aptos-testnet',
532
+ },
533
+ onChain: new AptosOnChainProvider('aptos-testnet', '0xYOUR_CONTRACT'),
534
+ });
499
535
  ```
500
536
 
501
537
  ### Configuration
@@ -508,13 +544,13 @@ ARC8004_ONCHAIN_ENABLED=false # DB-only mode (recommended)
508
544
 
509
545
  For on-chain NFT minting (optional):
510
546
  ```bash
511
- ARC8004_MODULE_ADDRESS=0xa4d7e1f47887dc6b84743297164fdd63deaa872329f8617be1d4c87375d39323
547
+ ARC8004_MODULE_ADDRESS=0xa6cfe253f864c0eca623058c7ec2e80c645c5b0a5745c853e7082ee4daad077f
512
548
  ARC8004_ONCHAIN_ENABLED=true
513
549
  ```
514
550
 
515
551
  ### Documentation
516
552
 
517
- - [ARC-8004 Integration Guide](./docs/guides/arc8004.md) - Full SDK usage
553
+ - [ARC-8004 Integration Guide](./docs/guides/arc8004-integration.md) - Full SDK usage (NEW)
518
554
  - [ARC-8004 Core Concepts](./docs/core-concepts/arc8004.md) - Architecture overview
519
555
  - [ARC-8004 Use Cases](./docs/guides/arc8004-use-cases.md) - Practical examples
520
556
  - [Self-Hosting Guide](./docs/guides/arc8004-self-hosting.md) - Deploy your own contracts
@@ -0,0 +1,11 @@
1
+ import * as React from "react";
2
+ import { type VariantProps } from "class-variance-authority";
3
+ declare const buttonVariants: (props?: ({
4
+ variant?: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null | undefined;
5
+ size?: "default" | "sm" | "lg" | "icon" | "icon-sm" | "icon-lg" | null | undefined;
6
+ } & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
7
+ declare function Button({ className, variant, size, asChild, ...props }: React.ComponentProps<"button"> & VariantProps<typeof buttonVariants> & {
8
+ asChild?: boolean;
9
+ }): React.JSX.Element;
10
+ export { Button, buttonVariants };
11
+ //# sourceMappingURL=button.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../components/ui/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;mFA8BnB,CAAA;AAED,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,qBAUF;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,34 @@
1
+ import * as React from "react";
2
+ import { Slot } from "@radix-ui/react-slot";
3
+ import { cva } from "class-variance-authority";
4
+ import { cn } from "@/lib/utils";
5
+ const buttonVariants = cva("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", {
6
+ variants: {
7
+ variant: {
8
+ default: "bg-primary text-primary-foreground hover:bg-primary/90",
9
+ destructive: "bg-destructive text-white hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
10
+ outline: "border bg-background shadow-xs hover:bg-accent hover:text-accent-foreground dark:bg-input/30 dark:border-input dark:hover:bg-input/50",
11
+ secondary: "bg-secondary text-secondary-foreground hover:bg-secondary/80",
12
+ ghost: "hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",
13
+ link: "text-primary underline-offset-4 hover:underline",
14
+ },
15
+ size: {
16
+ default: "h-9 px-4 py-2 has-[>svg]:px-3",
17
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
18
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
19
+ icon: "size-9",
20
+ "icon-sm": "size-8",
21
+ "icon-lg": "size-10",
22
+ },
23
+ },
24
+ defaultVariants: {
25
+ variant: "default",
26
+ size: "default",
27
+ },
28
+ });
29
+ function Button({ className, variant, size, asChild = false, ...props }) {
30
+ const Comp = asChild ? Slot : "button";
31
+ return (<Comp data-slot="button" className={cn(buttonVariants({ variant, size, className }))} {...props}/>);
32
+ }
33
+ export { Button, buttonVariants };
34
+ //# sourceMappingURL=button.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"button.jsx","sourceRoot":"","sources":["../../../components/ui/button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AAEjE,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAA;AAEhC,MAAM,cAAc,GAAG,GAAG,CACxB,6bAA6b,EAC7b;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,wDAAwD;YACjE,WAAW,EACT,mJAAmJ;YACrJ,OAAO,EACL,uIAAuI;YACzI,SAAS,EACP,8DAA8D;YAChE,KAAK,EACH,sEAAsE;YACxE,IAAI,EAAE,iDAAiD;SACxD;QACD,IAAI,EAAE;YACJ,OAAO,EAAE,+BAA+B;YACxC,EAAE,EAAE,+CAA+C;YACnD,EAAE,EAAE,sCAAsC;YAC1C,IAAI,EAAE,QAAQ;YACd,SAAS,EAAE,QAAQ;YACnB,SAAS,EAAE,SAAS;SACrB;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,SAAS;QAClB,IAAI,EAAE,SAAS;KAChB;CACF,CACF,CAAA;AAED,SAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAO,GAAG,KAAK,EACf,GAAG,KAAK,EAIP;IACD,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAA;IAEtC,OAAO,CACL,CAAC,IAAI,CACH,SAAS,CAAC,QAAQ,CAClB,SAAS,CAAC,CAAC,EAAE,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,CAC5D,IAAI,KAAK,CAAC,EACV,CACH,CAAA;AACH,CAAC;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
@@ -0,0 +1,16 @@
1
+ import * as React from "react";
2
+ import * as SelectPrimitive from "@radix-ui/react-select";
3
+ declare function Select({ ...props }: React.ComponentProps<typeof SelectPrimitive.Root>): React.JSX.Element;
4
+ declare function SelectGroup({ ...props }: React.ComponentProps<typeof SelectPrimitive.Group>): React.JSX.Element;
5
+ declare function SelectValue({ ...props }: React.ComponentProps<typeof SelectPrimitive.Value>): React.JSX.Element;
6
+ declare function SelectTrigger({ className, size, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Trigger> & {
7
+ size?: "sm" | "default";
8
+ }): React.JSX.Element;
9
+ declare function SelectContent({ className, children, position, align, ...props }: React.ComponentProps<typeof SelectPrimitive.Content>): React.JSX.Element;
10
+ declare function SelectLabel({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Label>): React.JSX.Element;
11
+ declare function SelectItem({ className, children, ...props }: React.ComponentProps<typeof SelectPrimitive.Item>): React.JSX.Element;
12
+ declare function SelectSeparator({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.Separator>): React.JSX.Element;
13
+ declare function SelectScrollUpButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollUpButton>): React.JSX.Element;
14
+ declare function SelectScrollDownButton({ className, ...props }: React.ComponentProps<typeof SelectPrimitive.ScrollDownButton>): React.JSX.Element;
15
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };
16
+ //# sourceMappingURL=select.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.d.ts","sourceRoot":"","sources":["../../../components/ui/select.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AAKzD,iBAAS,MAAM,CAAC,EACd,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,qBAEnD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,qBAEpD;AAED,iBAAS,WAAW,CAAC,EACnB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,qBAEpD;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,IAAgB,EAChB,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,GAAG;IACxD,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;CACxB,qBAiBA;AAED,iBAAS,aAAa,CAAC,EACrB,SAAS,EACT,QAAQ,EACR,QAAmB,EACnB,KAAgB,EAChB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,OAAO,CAAC,qBA6BtD;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,KAAK,CAAC,qBAQpD;AAED,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,qBAkBnD;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,SAAS,CAAC,qBAQxD;AAED,iBAAS,oBAAoB,CAAC,EAC5B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,cAAc,CAAC,qBAa7D;AAED,iBAAS,sBAAsB,CAAC,EAC9B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,gBAAgB,CAAC,qBAa/D;AAED,OAAO,EACL,MAAM,EACN,aAAa,EACb,WAAW,EACX,UAAU,EACV,WAAW,EACX,sBAAsB,EACtB,oBAAoB,EACpB,eAAe,EACf,aAAa,EACb,WAAW,GACZ,CAAA"}
@@ -0,0 +1,62 @@
1
+ import * as React from "react";
2
+ import * as SelectPrimitive from "@radix-ui/react-select";
3
+ import { CheckIcon, ChevronDownIcon, ChevronUpIcon } from "lucide-react";
4
+ import { cn } from "@/lib/utils";
5
+ function Select({ ...props }) {
6
+ return <SelectPrimitive.Root data-slot="select" {...props}/>;
7
+ }
8
+ function SelectGroup({ ...props }) {
9
+ return <SelectPrimitive.Group data-slot="select-group" {...props}/>;
10
+ }
11
+ function SelectValue({ ...props }) {
12
+ return <SelectPrimitive.Value data-slot="select-value" {...props}/>;
13
+ }
14
+ function SelectTrigger({ className, size = "default", children, ...props }) {
15
+ return (<SelectPrimitive.Trigger data-slot="select-trigger" data-size={size} className={cn("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", className)} {...props}>
16
+ {children}
17
+ <SelectPrimitive.Icon asChild>
18
+ <ChevronDownIcon className="size-4 opacity-50"/>
19
+ </SelectPrimitive.Icon>
20
+ </SelectPrimitive.Trigger>);
21
+ }
22
+ function SelectContent({ className, children, position = "popper", align = "center", ...props }) {
23
+ return (<SelectPrimitive.Portal>
24
+ <SelectPrimitive.Content data-slot="select-content" className={cn("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border shadow-md", position === "popper" &&
25
+ "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", className)} position={position} align={align} {...props}>
26
+ <SelectScrollUpButton />
27
+ <SelectPrimitive.Viewport className={cn("p-1", position === "popper" &&
28
+ "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1")}>
29
+ {children}
30
+ </SelectPrimitive.Viewport>
31
+ <SelectScrollDownButton />
32
+ </SelectPrimitive.Content>
33
+ </SelectPrimitive.Portal>);
34
+ }
35
+ function SelectLabel({ className, ...props }) {
36
+ return (<SelectPrimitive.Label data-slot="select-label" className={cn("text-muted-foreground px-2 py-1.5 text-xs", className)} {...props}/>);
37
+ }
38
+ function SelectItem({ className, children, ...props }) {
39
+ return (<SelectPrimitive.Item data-slot="select-item" className={cn("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2", className)} {...props}>
40
+ <span className="absolute right-2 flex size-3.5 items-center justify-center">
41
+ <SelectPrimitive.ItemIndicator>
42
+ <CheckIcon className="size-4"/>
43
+ </SelectPrimitive.ItemIndicator>
44
+ </span>
45
+ <SelectPrimitive.ItemText>{children}</SelectPrimitive.ItemText>
46
+ </SelectPrimitive.Item>);
47
+ }
48
+ function SelectSeparator({ className, ...props }) {
49
+ return (<SelectPrimitive.Separator data-slot="select-separator" className={cn("bg-border pointer-events-none -mx-1 my-1 h-px", className)} {...props}/>);
50
+ }
51
+ function SelectScrollUpButton({ className, ...props }) {
52
+ return (<SelectPrimitive.ScrollUpButton data-slot="select-scroll-up-button" className={cn("flex cursor-default items-center justify-center py-1", className)} {...props}>
53
+ <ChevronUpIcon className="size-4"/>
54
+ </SelectPrimitive.ScrollUpButton>);
55
+ }
56
+ function SelectScrollDownButton({ className, ...props }) {
57
+ return (<SelectPrimitive.ScrollDownButton data-slot="select-scroll-down-button" className={cn("flex cursor-default items-center justify-center py-1", className)} {...props}>
58
+ <ChevronDownIcon className="size-4"/>
59
+ </SelectPrimitive.ScrollDownButton>);
60
+ }
61
+ export { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, };
62
+ //# sourceMappingURL=select.jsx.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select.jsx","sourceRoot":"","sources":["../../../components/ui/select.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aptos-utils.d.ts","sourceRoot":"","sources":["../../lib/aptos-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EAGL,OAAO,EAIR,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,GAAG,EAAE,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,GAAE,MAAkB,GAAG,KAAK,CAyCjE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAKvE;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,OAAO,EACf,gBAAgB,EAAE,MAAM,EACxB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAejB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,MAAM,EACvB,iBAAiB,CAAC,EAAE,MAAM,EAC1B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CAwClB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,OAAO,CAAC,CAUlB;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,MAAM,CAAC,CAUjB"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aptos-utils.js","sourceRoot":"","sources":["../../lib/aptos-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,WAAW,EACX,OAAO,EACP,OAAO,EACP,iBAAiB,GAGlB,MAAM,oBAAoB,CAAC;AAuB5B;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,UAAkB,SAAS;IACxD,yDAAyD;IACzD,IAAI,YAAqB,CAAC;IAE1B,IAAI,OAAO,KAAK,eAAe,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QACzD,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;SAAM,IAAI,OAAO,KAAK,eAAe,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;QAChE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;SAAM,IAAI,OAAO,KAAK,cAAc,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QAC9D,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAChC,CAAC;SAAM,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxC,2CAA2C;QAC3C,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,WAAW,EAAa,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,YAAY,GAAG,OAAO,CAAC,WAAW,EAAa,CAAC;IAClD,CAAC;IAED,uDAAuD;IACvD,IAAI,MAAmB,CAAC;IACxB,IAAI,MAA0B,CAAC;IAE/B,oDAAoD;IACpD,IAAI,YAAY,KAAK,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;QAC3E,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC9C,CAAC;SAAM,IAAI,YAAY,KAAK,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,CAAC;QAClF,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;IAC9C,CAAC;SAAM,IAAI,YAAY,KAAK,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,CAAC;QAChF,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;IAC7C,CAAC;IAED,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,GAAG,IAAI,WAAW,CAAC;YACvB,OAAO,EAAE,YAAY;YACrB,QAAQ,EAAE,MAAM;SACjB,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,uCAAuC;QACvC,MAAM,GAAG,IAAI,WAAW,CAAC,EAAE,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC;IACtD,CAAC;IAED,OAAO,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,wBAAwB,CAAC,aAAqB;IAC5D,gCAAgC;IAChC,MAAM,QAAQ,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IAClD,MAAM,UAAU,GAAG,IAAI,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IACnD,OAAO,OAAO,CAAC,cAAc,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;AAChD,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,KAAY,EACZ,MAAe,EACf,gBAAwB,EACxB,MAAc;IAEd,MAAM,WAAW,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC;QACvD,MAAM,EAAE,MAAM,CAAC,cAAc;QAC7B,IAAI,EAAE;YACJ,QAAQ,EAAE,8BAA8B;YACxC,iBAAiB,EAAE,CAAC,gBAAgB,EAAE,MAAM,CAAC;SAC9C;KACF,CAAC,CAAC;IAEH,MAAM,YAAY,GAAG,MAAM,KAAK,CAAC,wBAAwB,CAAC;QACxD,MAAM,EAAE,MAAM;QACd,WAAW;KACZ,CAAC,CAAC;IAEH,OAAO,YAAY,CAAC,IAAI,CAAC;AAC3B,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAY,EACZ,eAAuB,EACvB,cAAuB,EACvB,iBAA0B,EAC1B,cAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,WAAW,CAAC,oBAAoB,CAAC;YACvD,eAAe;SAChB,CAAC,CAAC;QAEH,mDAAmD;QACnD,IAAI,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC;YACxC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,wDAAwD;QACxD,IAAI,CAAC,cAAc,IAAI,CAAC,iBAAiB,IAAI,CAAC,cAAc,EAAE,CAAC;YAC7D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,iDAAiD;QACjD,MAAM,OAAO,GAAI,GAAW,CAAC,OAAO,CAAC;QAErC,IAAI,OAAO,EAAE,QAAQ,KAAK,8BAA8B,EAAE,CAAC;YACzD,MAAM,IAAI,GAAG,OAAO,CAAC,SAAS,CAAC;YAE/B,IAAI,iBAAiB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,iBAAiB,EAAE,CAAC;gBACvD,OAAO,KAAK,CAAC;YACf,CAAC;YAED,IAAI,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,cAAc,EAAE,CAAC;gBACjD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,IAAI,cAAc,IAAK,GAAW,CAAC,MAAM,KAAK,cAAc,EAAE,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAY,EACZ,eAAuB;IAEvB,IAAI,CAAC;QACH,MAAM,KAAK,CAAC,kBAAkB,CAAC;YAC7B,eAAe;SAChB,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACvD,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,KAAY,EACZ,cAAsB;IAEtB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,mBAAmB,CAAC;YAC9C,cAAc;SACf,CAAC,CAAC;QACH,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAAC;QACvD,OAAO,GAAG,CAAC;IACb,CAAC;AACH,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * ARC-8004 On-Chain Module
3
+ *
4
+ * Provides on-chain provider abstraction for blockchain operations
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ export type { OnChainProvider, MintIdentityResult, VerifyIdentityResult, AttestationResult, OnChainAgentScore, } from './types';
9
+ export { NullOnChainProvider, AptosOnChainProvider, createOnChainProvider, } from './types';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../lib/arc8004/chain/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,YAAY,EACV,eAAe,EACf,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,SAAS,CAAC;AAEjB,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * ARC-8004 On-Chain Module
3
+ *
4
+ * Provides on-chain provider abstraction for blockchain operations
5
+ *
6
+ * @packageDocumentation
7
+ */
8
+ export { NullOnChainProvider, AptosOnChainProvider, createOnChainProvider, } from './types';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../lib/arc8004/chain/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAUH,OAAO,EACL,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,GACtB,MAAM,SAAS,CAAC"}
@@ -0,0 +1,190 @@
1
+ /**
2
+ * ARC-8004 On-Chain Provider Interface
3
+ *
4
+ * Abstracts blockchain operations for ARC-8004, allowing:
5
+ * - Null implementation for off-chain only mode
6
+ * - Aptos implementation for full on-chain support
7
+ * - Custom implementations for other blockchains
8
+ *
9
+ * @packageDocumentation
10
+ */
11
+ import type { Account } from '@aptos-labs/ts-sdk';
12
+ import type { AgentCard } from '../types';
13
+ /**
14
+ * Result of minting an identity NFT on-chain
15
+ */
16
+ export interface MintIdentityResult {
17
+ /** On-chain token address */
18
+ tokenAddress: string;
19
+ /** Transaction hash */
20
+ txHash: string;
21
+ }
22
+ /**
23
+ * Result of verifying an identity on-chain
24
+ */
25
+ export interface VerifyIdentityResult {
26
+ /** Transaction hash */
27
+ txHash: string;
28
+ }
29
+ /**
30
+ * Result of creating an on-chain attestation
31
+ */
32
+ export interface AttestationResult {
33
+ /** Attestation/transaction hash */
34
+ attestationHash: string;
35
+ }
36
+ /**
37
+ * On-chain agent score data
38
+ */
39
+ export interface OnChainAgentScore {
40
+ /** Total sum of all scores received */
41
+ totalScore: number;
42
+ /** Number of feedback submissions */
43
+ feedbackCount: number;
44
+ /** Average score scaled by 100 (e.g., 450 = 4.50) */
45
+ averageScoreScaled: number;
46
+ /** Computed trust level (0-5) */
47
+ trustLevel: number;
48
+ /** Last update timestamp (unix seconds) */
49
+ lastUpdated: number;
50
+ }
51
+ /**
52
+ * Interface for on-chain operations
53
+ * Implement this interface to provide custom blockchain integration
54
+ */
55
+ export interface OnChainProvider {
56
+ /**
57
+ * Whether on-chain operations are enabled
58
+ */
59
+ readonly enabled: boolean;
60
+ /**
61
+ * Mint an agent identity NFT on-chain
62
+ *
63
+ * @param agentId - Unique agent identifier
64
+ * @param agentCard - Agent metadata
65
+ * @param signer - Account to sign the transaction
66
+ * @returns Token address and transaction hash
67
+ */
68
+ mintIdentity(agentId: string, agentCard: AgentCard, signer: Account): Promise<MintIdentityResult>;
69
+ /**
70
+ * Verify an agent identity on-chain
71
+ *
72
+ * @param tokenAddress - On-chain token address
73
+ * @param signer - Admin account to sign verification
74
+ * @returns Transaction hash
75
+ */
76
+ verifyIdentity(tokenAddress: string, signer: Account): Promise<VerifyIdentityResult>;
77
+ /**
78
+ * Create an on-chain feedback attestation
79
+ *
80
+ * @param agentId - Agent receiving feedback
81
+ * @param clientAddress - Address of client giving feedback
82
+ * @param score - Overall score (1-5)
83
+ * @param paymentHash - Optional related payment hash
84
+ * @param signer - Account to sign the transaction
85
+ * @returns Attestation hash
86
+ */
87
+ attestFeedback(agentId: string, clientAddress: string, score: number, paymentHash: string | undefined, signer: Account): Promise<AttestationResult>;
88
+ /**
89
+ * Submit a task validation on-chain
90
+ *
91
+ * @param taskId - Task identifier
92
+ * @param agentId - Agent that performed the task
93
+ * @param validatorId - Validator identifier
94
+ * @param proof - Optional cryptographic proof
95
+ * @param signer - Account to sign the transaction
96
+ * @returns Attestation hash
97
+ */
98
+ submitValidation(taskId: string, agentId: string, validatorId: string, proof: string | undefined, signer: Account): Promise<AttestationResult>;
99
+ /**
100
+ * Check if an identity exists on-chain
101
+ *
102
+ * @param tokenAddress - Token address to check
103
+ * @returns Whether the identity exists
104
+ */
105
+ identityExists(tokenAddress: string): Promise<boolean>;
106
+ /**
107
+ * Get account balance (for checking if account can pay fees)
108
+ *
109
+ * @param address - Account address
110
+ * @returns Balance in native units (e.g., octas for Aptos)
111
+ */
112
+ getAccountBalance(address: string): Promise<bigint>;
113
+ /**
114
+ * Get aggregated agent score from on-chain
115
+ *
116
+ * @param agentId - Agent identifier
117
+ * @returns On-chain agent score data or null if not found
118
+ */
119
+ getAgentScore(agentId: string): Promise<OnChainAgentScore | null>;
120
+ /**
121
+ * Check if an agent has any on-chain reputation
122
+ *
123
+ * @param agentId - Agent identifier
124
+ * @returns Whether the agent has on-chain reputation data
125
+ */
126
+ hasOnChainReputation(agentId: string): Promise<boolean>;
127
+ }
128
+ /**
129
+ * Null implementation of OnChainProvider
130
+ * Used when on-chain operations are disabled
131
+ * All operations return empty results or throw appropriate errors
132
+ */
133
+ export declare class NullOnChainProvider implements OnChainProvider {
134
+ readonly enabled = false;
135
+ mintIdentity(): Promise<MintIdentityResult>;
136
+ verifyIdentity(): Promise<VerifyIdentityResult>;
137
+ attestFeedback(): Promise<AttestationResult>;
138
+ submitValidation(): Promise<AttestationResult>;
139
+ identityExists(): Promise<boolean>;
140
+ getAccountBalance(): Promise<bigint>;
141
+ getAgentScore(): Promise<OnChainAgentScore | null>;
142
+ hasOnChainReputation(): Promise<boolean>;
143
+ }
144
+ /**
145
+ * Aptos blockchain implementation of OnChainProvider
146
+ */
147
+ export declare class AptosOnChainProvider implements OnChainProvider {
148
+ private aptos;
149
+ readonly enabled = true;
150
+ private moduleAddress;
151
+ constructor(aptos: import('@aptos-labs/ts-sdk').Aptos, moduleAddress: string);
152
+ mintIdentity(agentId: string, agentCard: AgentCard, signer: Account): Promise<MintIdentityResult>;
153
+ verifyIdentity(tokenAddress: string, signer: Account): Promise<VerifyIdentityResult>;
154
+ attestFeedback(agentId: string, clientAddress: string, score: number, paymentHash: string | undefined, signer: Account): Promise<AttestationResult>;
155
+ submitValidation(taskId: string, agentId: string, validatorId: string, proof: string | undefined, signer: Account): Promise<AttestationResult>;
156
+ identityExists(tokenAddress: string): Promise<boolean>;
157
+ getAccountBalance(address: string): Promise<bigint>;
158
+ getAgentScore(agentId: string): Promise<OnChainAgentScore | null>;
159
+ hasOnChainReputation(agentId: string): Promise<boolean>;
160
+ /**
161
+ * Extract token address from mint transaction events
162
+ */
163
+ private extractTokenAddressFromTx;
164
+ }
165
+ /**
166
+ * Create an on-chain provider based on configuration
167
+ *
168
+ * @param config - Configuration options
169
+ * @returns OnChainProvider instance
170
+ *
171
+ * @example Disabled (null provider)
172
+ * ```typescript
173
+ * const provider = createOnChainProvider({ enabled: false });
174
+ * ```
175
+ *
176
+ * @example Aptos provider
177
+ * ```typescript
178
+ * const provider = createOnChainProvider({
179
+ * enabled: true,
180
+ * moduleAddress: '0x...',
181
+ * network: 'testnet',
182
+ * });
183
+ * ```
184
+ */
185
+ export declare function createOnChainProvider(config: {
186
+ enabled: boolean;
187
+ moduleAddress?: string;
188
+ network?: string;
189
+ }): OnChainProvider;
190
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../lib/arc8004/chain/types.ts"],"names":[],"mappings":"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"}