@pocketagent/paw 1.0.6 → 1.0.7

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.
@@ -1 +1 @@
1
- {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,WAAW,SAqGpB,CAAC"}
1
+ {"version":3,"file":"swap.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/swap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,eAAO,MAAM,WAAW,SAmJpB,CAAC"}
@@ -44,7 +44,7 @@ exports.swapCommand = new commander_1.Command('swap')
44
44
  .requiredOption('--agent-id <id>', 'Agent identifier')
45
45
  .requiredOption('--from <token>', 'Input token (SOL, USDC, USDT, BONK or mint address)')
46
46
  .requiredOption('--to <token>', 'Output token (SOL, USDC, USDT, BONK or mint address)')
47
- .requiredOption('--amount <amount>', 'Amount to swap')
47
+ .requiredOption('--amount <amount>', 'Amount to swap (e.g., 0.5 or 50%)')
48
48
  .option('--network <network>', 'Network to use (devnet, mainnet-beta)', 'mainnet-beta')
49
49
  .option('--slippage <bps>', 'Slippage tolerance in basis points (default: 50, meme coins: 500-1000)', '50')
50
50
  .option('--priority-fee <lamports>', 'Priority fee in lamports for faster execution (default: auto)')
@@ -71,24 +71,65 @@ exports.swapCommand = new commander_1.Command('swap')
71
71
  // Resolve token addresses
72
72
  const inputMint = client_1.JupiterClient.TOKENS[options.from] || options.from;
73
73
  const outputMint = client_1.JupiterClient.TOKENS[options.to] || options.to;
74
- // Convert amount to smallest unit
75
- let amount;
76
- if (options.from === 'SOL') {
77
- amount = Math.floor(parseFloat(options.amount) * web3_js_1.LAMPORTS_PER_SOL);
74
+ // Load keypair to get wallet address
75
+ const keypair = await manager_1.WalletManager.loadKeypairAuto(options.agentId);
76
+ const connection = solana_1.SolanaClient.getConnection(options.network);
77
+ // Check if amount is percentage
78
+ const isPercentage = options.amount.toString().endsWith('%');
79
+ let actualAmount;
80
+ let amountInSmallestUnit;
81
+ if (isPercentage) {
82
+ // Get percentage value
83
+ const percentage = parseFloat(options.amount.replace('%', ''));
84
+ if (percentage <= 0 || percentage > 100) {
85
+ throw new Error('Percentage must be between 0 and 100');
86
+ }
87
+ console.log(`\nšŸ’° Calculating ${percentage}% of ${options.from} balance...`);
88
+ // Get balance
89
+ let balance;
90
+ if (options.from === 'SOL') {
91
+ const lamports = await connection.getBalance(keypair.publicKey);
92
+ balance = lamports / web3_js_1.LAMPORTS_PER_SOL;
93
+ actualAmount = ((balance * percentage) / 100).toFixed(6);
94
+ amountInSmallestUnit = Math.floor(parseFloat(actualAmount) * web3_js_1.LAMPORTS_PER_SOL);
95
+ }
96
+ else {
97
+ // Get SPL token balance
98
+ const { getAccount, getAssociatedTokenAddress } = await Promise.resolve().then(() => __importStar(require('@solana/spl-token')));
99
+ const { PublicKey } = await Promise.resolve().then(() => __importStar(require('@solana/web3.js')));
100
+ const mintPubkey = new PublicKey(inputMint);
101
+ const tokenAccount = await getAssociatedTokenAddress(mintPubkey, keypair.publicKey);
102
+ try {
103
+ const accountInfo = await getAccount(connection, tokenAccount);
104
+ const inputTokenInfo = await client_1.JupiterClient.findToken(options.from);
105
+ const decimals = inputTokenInfo ? inputTokenInfo.decimals : 6;
106
+ balance = Number(accountInfo.amount) / Math.pow(10, decimals);
107
+ actualAmount = ((balance * percentage) / 100).toFixed(decimals);
108
+ amountInSmallestUnit = Math.floor(parseFloat(actualAmount) * Math.pow(10, decimals));
109
+ }
110
+ catch (error) {
111
+ throw new Error(`No ${options.from} balance found`);
112
+ }
113
+ }
114
+ console.log(` Balance: ${balance.toFixed(6)} ${options.from}`);
115
+ console.log(` Swapping: ${actualAmount} ${options.from} (${percentage}%)`);
78
116
  }
79
117
  else {
80
- // Fetch the actual decimals from the token API
81
- const inputTokenInfo = await client_1.JupiterClient.findToken(options.from);
82
- const decimals = inputTokenInfo ? inputTokenInfo.decimals : 6;
83
- // Multiply by the correct decimal precision
84
- amount = Math.floor(parseFloat(options.amount) * Math.pow(10, decimals));
118
+ // Use exact amount
119
+ actualAmount = options.amount;
120
+ if (options.from === 'SOL') {
121
+ amountInSmallestUnit = Math.floor(parseFloat(actualAmount) * web3_js_1.LAMPORTS_PER_SOL);
122
+ }
123
+ else {
124
+ const inputTokenInfo = await client_1.JupiterClient.findToken(options.from);
125
+ const decimals = inputTokenInfo ? inputTokenInfo.decimals : 6;
126
+ amountInSmallestUnit = Math.floor(parseFloat(actualAmount) * Math.pow(10, decimals));
127
+ }
85
128
  }
86
129
  console.log('\nFetching quote from Jupiter...');
87
- // Load keypair first to get public key
88
- const keypair = await manager_1.WalletManager.loadKeypairAuto(options.agentId);
89
130
  // Load referral config if available
90
131
  const referralConfig = client_1.JupiterClient.loadReferralConfig();
91
- const quote = await client_1.JupiterClient.getQuote(inputMint, outputMint, amount, parseInt(slippage.toString()), {
132
+ const quote = await client_1.JupiterClient.getQuote(inputMint, outputMint, amountInSmallestUnit, parseInt(slippage.toString()), {
92
133
  userPublicKey: keypair.publicKey.toBase58(),
93
134
  referralAccount: referralConfig?.referralAccount,
94
135
  referralFee: referralConfig?.referralFee,
@@ -98,7 +139,7 @@ exports.swapCommand = new commander_1.Command('swap')
98
139
  ? (parseInt(quote.outAmount) / web3_js_1.LAMPORTS_PER_SOL).toFixed(6)
99
140
  : (parseInt(quote.outAmount) / 1e6).toFixed(6);
100
141
  console.log('\nšŸ“Š Quote:');
101
- console.log('Input: ', options.amount, options.from);
142
+ console.log('Input: ', actualAmount, options.from);
102
143
  console.log('Output: ', outAmount, options.to);
103
144
  console.log('Price Impact:', quote.priceImpactPct, '%');
104
145
  console.log('Slippage:', slippage, 'bps', `(${(parseInt(slippage.toString()) / 100).toFixed(1)}%)`);
@@ -1 +1 @@
1
- {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/cli/commands/swap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"swap.js","sourceRoot":"","sources":["../../../src/cli/commands/swap.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,21 @@
1
1
  /**
2
2
  * Generate a unique key based on machine identity
3
3
  * This key is consistent for the same machine but different across machines
4
+ *
5
+ * Version 2: Removed hostname for container compatibility
6
+ * Supports legacy v1 wallets (with hostname) via automatic fallback
4
7
  */
5
8
  export declare class MachineIdentity {
6
9
  /**
7
- * Get a machine-specific encryption key
8
- * Uses hostname, username, platform, and architecture
10
+ * Get a machine-specific encryption key (v2 - no hostname)
11
+ * Uses username, platform, architecture, and home directory
9
12
  */
10
13
  static getMachineKey(): string;
14
+ /**
15
+ * Get legacy machine key (v1 - with hostname)
16
+ * Used for backward compatibility with existing wallets
17
+ */
18
+ private static getLegacyMachineKey;
11
19
  /**
12
20
  * Encrypt data with machine-specific key
13
21
  * Data can only be decrypted on the same machine
@@ -15,12 +23,22 @@ export declare class MachineIdentity {
15
23
  static encrypt(data: string): string;
16
24
  /**
17
25
  * Decrypt data with machine-specific key
18
- * Only works on the same machine where it was encrypted
26
+ * Supports automatic fallback to legacy format (v1 with hostname)
27
+ * Auto-migrates legacy wallets on successful decrypt
19
28
  */
20
29
  static decrypt(encryptedData: string): string;
30
+ /**
31
+ * Internal decrypt helper
32
+ */
33
+ private static decryptWithKey;
21
34
  /**
22
35
  * Check if data can be decrypted on this machine
23
36
  */
24
37
  static canDecrypt(encryptedData: string): boolean;
38
+ /**
39
+ * Check if data can be decrypted with v2 key (no hostname)
40
+ * Used to detect legacy wallets that need migration
41
+ */
42
+ static canDecryptWithV2(encryptedData: string): boolean;
25
43
  }
26
44
  //# sourceMappingURL=machine-identity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"machine-identity.d.ts","sourceRoot":"","sources":["../../../src/core/crypto/machine-identity.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,qBAAa,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,aAAa,IAAI,MAAM;IAkB9B;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAiBpC;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAwB7C;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;CAQlD"}
1
+ {"version":3,"file":"machine-identity.d.ts","sourceRoot":"","sources":["../../../src/core/crypto/machine-identity.ts"],"names":[],"mappings":"AAGA;;;;;;GAMG;AACH,qBAAa,eAAe;IAC1B;;;OAGG;IACH,MAAM,CAAC,aAAa,IAAI,MAAM;IAe9B;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAgBlC;;;OAGG;IACH,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAiBpC;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM;IAgB7C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAuB7B;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;IASjD;;;OAGG;IACH,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO;CAQxD"}
@@ -9,23 +9,41 @@ const os_1 = __importDefault(require("os"));
9
9
  /**
10
10
  * Generate a unique key based on machine identity
11
11
  * This key is consistent for the same machine but different across machines
12
+ *
13
+ * Version 2: Removed hostname for container compatibility
14
+ * Supports legacy v1 wallets (with hostname) via automatic fallback
12
15
  */
13
16
  class MachineIdentity {
14
17
  /**
15
- * Get a machine-specific encryption key
16
- * Uses hostname, username, platform, and architecture
18
+ * Get a machine-specific encryption key (v2 - no hostname)
19
+ * Uses username, platform, architecture, and home directory
17
20
  */
18
21
  static getMachineKey() {
19
- // Combine machine-specific data
22
+ // v2: Removed hostname for container compatibility
20
23
  const machineData = [
21
- os_1.default.hostname(), // Computer name
22
24
  os_1.default.userInfo().username, // User name
23
25
  os_1.default.platform(), // OS (darwin, linux, win32)
24
26
  os_1.default.arch(), // CPU architecture (x64, arm64)
25
27
  os_1.default.homedir(), // Home directory path
26
28
  ].join('|');
27
- // Hash to create consistent 256-bit key
28
- // This is unique per machine - no additional salt needed
29
+ return crypto_1.default
30
+ .createHash('sha256')
31
+ .update(machineData)
32
+ .digest('hex');
33
+ }
34
+ /**
35
+ * Get legacy machine key (v1 - with hostname)
36
+ * Used for backward compatibility with existing wallets
37
+ */
38
+ static getLegacyMachineKey() {
39
+ // v1: Original method with hostname
40
+ const machineData = [
41
+ os_1.default.hostname(), // Computer name (causes container issues)
42
+ os_1.default.userInfo().username, // User name
43
+ os_1.default.platform(), // OS (darwin, linux, win32)
44
+ os_1.default.arch(), // CPU architecture (x64, arm64)
45
+ os_1.default.homedir(), // Home directory path
46
+ ].join('|');
29
47
  return crypto_1.default
30
48
  .createHash('sha256')
31
49
  .update(machineData)
@@ -50,10 +68,30 @@ class MachineIdentity {
50
68
  }
51
69
  /**
52
70
  * Decrypt data with machine-specific key
53
- * Only works on the same machine where it was encrypted
71
+ * Supports automatic fallback to legacy format (v1 with hostname)
72
+ * Auto-migrates legacy wallets on successful decrypt
54
73
  */
55
74
  static decrypt(encryptedData) {
56
- const machineKey = MachineIdentity.getMachineKey();
75
+ // Try v2 (no hostname) first
76
+ try {
77
+ return this.decryptWithKey(encryptedData, this.getMachineKey());
78
+ }
79
+ catch (error) {
80
+ // Fallback to v1 (with hostname) for legacy wallets
81
+ try {
82
+ const decrypted = this.decryptWithKey(encryptedData, this.getLegacyMachineKey());
83
+ return decrypted;
84
+ }
85
+ catch (legacyError) {
86
+ // Neither worked - throw original error
87
+ throw new Error('Failed to decrypt data. Wallet may be from a different machine.');
88
+ }
89
+ }
90
+ }
91
+ /**
92
+ * Internal decrypt helper
93
+ */
94
+ static decryptWithKey(encryptedData, machineKey) {
57
95
  const algorithm = 'aes-256-cbc';
58
96
  // Split IV and encrypted data
59
97
  const parts = encryptedData.split(':');
@@ -82,6 +120,19 @@ class MachineIdentity {
82
120
  return false;
83
121
  }
84
122
  }
123
+ /**
124
+ * Check if data can be decrypted with v2 key (no hostname)
125
+ * Used to detect legacy wallets that need migration
126
+ */
127
+ static canDecryptWithV2(encryptedData) {
128
+ try {
129
+ this.decryptWithKey(encryptedData, this.getMachineKey());
130
+ return true;
131
+ }
132
+ catch {
133
+ return false;
134
+ }
135
+ }
85
136
  }
86
137
  exports.MachineIdentity = MachineIdentity;
87
138
  //# sourceMappingURL=machine-identity.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"machine-identity.js","sourceRoot":"","sources":["../../../src/core/crypto/machine-identity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"machine-identity.js","sourceRoot":"","sources":["../../../src/core/crypto/machine-identity.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,7 @@ export declare class FileSystemStorage {
58
58
  /**
59
59
  * Load passphrase (decrypt with machine-specific key)
60
60
  * Only works on the same machine where it was saved
61
+ * Auto-migrates legacy wallets (v1 with hostname) to new format (v2 without hostname)
61
62
  */
62
63
  static loadPassphrase(agentId: string): Promise<string>;
63
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../src/core/storage/filesystem.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAGhC;IAEF;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI9C;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIjD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7C;;OAEG;WACU,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAStD;;OAEG;WACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3D;;OAEG;WACU,WAAW,CACtB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,IAAI,CAAC;IAehB;;OAEG;WACU,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAapE;;OAEG;WACU,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE;;OAEG;WACU,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMtD;;OAEG;WACU,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD;;OAEG;WACU,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAS5C;;;OAGG;WACU,cAAc,CACzB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC;IAWhB;;;OAGG;WACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAU7D;;OAEG;WACU,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAQ9D"}
1
+ {"version":3,"file":"filesystem.d.ts","sourceRoot":"","sources":["../../../src/core/storage/filesystem.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAmC;IAClE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAGhC;IAEF;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI3C;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI9C;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAIjD;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAI7C;;OAEG;WACU,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAStD;;OAEG;WACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3D;;OAEG;WACU,WAAW,CACtB,OAAO,EAAE,MAAM,EACf,gBAAgB,EAAE,gBAAgB,GACjC,OAAO,CAAC,IAAI,CAAC;IAehB;;OAEG;WACU,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAapE;;OAEG;WACU,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAMpE;;OAEG;WACU,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAMtD;;OAEG;WACU,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKxD;;OAEG;WACU,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAS5C;;;OAGG;WACU,cAAc,CACzB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC;IAWhB;;;;OAIG;WACU,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsB7D;;OAEG;WACU,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAQ9D"}
@@ -162,13 +162,23 @@ class FileSystemStorage {
162
162
  /**
163
163
  * Load passphrase (decrypt with machine-specific key)
164
164
  * Only works on the same machine where it was saved
165
+ * Auto-migrates legacy wallets (v1 with hostname) to new format (v2 without hostname)
165
166
  */
166
167
  static async loadPassphrase(agentId) {
167
168
  const { MachineIdentity } = await Promise.resolve().then(() => __importStar(require('../crypto/machine-identity')));
168
169
  const passphrasePath = FileSystemStorage.getPassphrasePath(agentId);
169
170
  const encrypted = await promises_1.default.readFile(passphrasePath, 'utf-8');
170
- // Decrypt with machine-specific key
171
- return MachineIdentity.decrypt(encrypted);
171
+ // Decrypt with machine-specific key (supports v1 fallback)
172
+ const passphrase = MachineIdentity.decrypt(encrypted);
173
+ // Check if this was a legacy wallet (v1) by trying to decrypt with v2 key
174
+ const isLegacy = !MachineIdentity.canDecryptWithV2(encrypted);
175
+ if (isLegacy) {
176
+ // Auto-migrate: Re-encrypt with v2 (no hostname) and save
177
+ console.log('šŸ“Ÿ Wallet migrated to v2 (hostname-independent)');
178
+ const newEncrypted = MachineIdentity.encrypt(passphrase);
179
+ await promises_1.default.writeFile(passphrasePath, newEncrypted, { mode: 0o600 });
180
+ }
181
+ return passphrase;
172
182
  }
173
183
  /**
174
184
  * Check if passphrase file exists
@@ -1 +1 @@
1
- {"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/core/storage/filesystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filesystem.js","sourceRoot":"","sources":["../../../src/core/storage/filesystem.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2DAA6B;AAC7B,gDAAwB;AACxB,4CAAoB;AAGpB,MAAa,iBAAiB;IAO5B;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,OAAe;QAChC,OAAO,cAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,cAAc,CAAC,OAAe;QACnC,OAAO,cAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAe;QACtC,OAAO,cAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAe;QAClC,OAAO,cAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAe;QACjC,IAAI,CAAC;YACH,MAAM,kBAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAe;QACzC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,kBAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CACtB,OAAe,EACf,gBAAkC;QAElC,MAAM,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAEhD,4CAA4C;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;YACzB,gBAAgB,CAAC,IAAI;YACrB,gBAAgB,CAAC,EAAE;YACnB,gBAAgB,CAAC,SAAS;YAC1B,gBAAgB,CAAC,OAAO;SACzB,CAAC,CAAC;QAEH,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9D,MAAM,kBAAE,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,4BAA4B;IACtF,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAe;QACtC,MAAM,WAAW,GAAG,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAE5C,qBAAqB;QACrB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC/B,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;QAC9B,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC;QAE7C,OAAO,EAAE,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAe,EAAE,MAAW;QAClD,MAAM,iBAAiB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAChD,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,kBAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,OAAe;QACrC,MAAM,UAAU,GAAG,iBAAiB,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAC5D,MAAM,IAAI,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,OAAe;QACtC,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QACxD,MAAM,kBAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,UAAU;QACrB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,kBAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;YAC9D,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,MAAM,CAAC,KAAK,CAAC,cAAc,CACzB,OAAe,EACf,UAAkB;QAElB,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,4BAA4B,GAAC,CAAC;QAEvE,+CAA+C;QAC/C,MAAM,SAAS,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAEtD,4BAA4B;QAC5B,MAAM,cAAc,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAc,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IACjE,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,OAAe;QACzC,MAAM,EAAE,eAAe,EAAE,GAAG,wDAAa,4BAA4B,GAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,MAAM,kBAAE,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE7D,2DAA2D;QAC3D,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAEtD,0EAA0E;QAC1E,MAAM,QAAQ,GAAG,CAAC,eAAe,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAE9D,IAAI,QAAQ,EAAE,CAAC;YACb,0DAA0D;YAC1D,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;YAC/D,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YACzD,MAAM,kBAAE,CAAC,SAAS,CAAC,cAAc,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,OAAe;QACxC,IAAI,CAAC;YACH,MAAM,kBAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;;AAzLH,8CA0LC;AAzLyB,yBAAO,GAAG,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,MAAM,CAAC,CAAC;AAC1C,4BAAU,GAAG,cAAI,CAAC,IAAI,CAC5C,iBAAiB,CAAC,OAAO,EACzB,QAAQ,CACT,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pocketagent/paw",
3
- "version": "1.0.6",
3
+ "version": "1.0.7",
4
4
  "description": "PocketAgent Wallet - agentic wallet for AI agents on Solana šŸ“Ÿ",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",