@subly_fi/pay 0.2.0 → 0.3.0

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.
package/dist/withdraw.js CHANGED
@@ -1,8 +1,8 @@
1
- // src/client/agent-wallet-signer.ts
1
+ // ../../src/client/agent-wallet-signer.ts
2
2
  import { signBytes } from "@solana/kit";
3
3
  import bs584 from "bs58";
4
4
 
5
- // src/solana/tx.ts
5
+ // ../../src/solana/tx.ts
6
6
  import bs58 from "bs58";
7
7
  import {
8
8
  appendTransactionMessageInstructions,
@@ -17,7 +17,7 @@ import {
17
17
  setTransactionMessageLifetimeUsingBlockhash
18
18
  } from "@solana/kit";
19
19
 
20
- // src/lib/hash.ts
20
+ // ../../src/lib/hash.ts
21
21
  import { createHash } from "node:crypto";
22
22
  function sha256TaggedHex(data) {
23
23
  return `sha256-${createHash("sha256").update(data).digest("hex")}`;
@@ -42,7 +42,7 @@ function hashStableJson(value) {
42
42
  return sha256TaggedHex(stableStringify(value));
43
43
  }
44
44
 
45
- // src/solana/tx.ts
45
+ // ../../src/solana/tx.ts
46
46
  function decodeSerializedTransaction(serializedBase64) {
47
47
  return getTransactionDecoder().decode(Buffer.from(serializedBase64, "base64"));
48
48
  }
@@ -62,11 +62,11 @@ function signatureBase58ForSigner(transaction, signer2) {
62
62
  return bs58.encode(signature);
63
63
  }
64
64
 
65
- // src/client/transaction-intent-validator.ts
65
+ // ../../src/client/transaction-intent-validator.ts
66
66
  import bs583 from "bs58";
67
67
  import { getCompiledTransactionMessageDecoder } from "@solana/kit";
68
68
 
69
- // src/config/constants.ts
69
+ // ../../src/config/constants.ts
70
70
  var PAYMENT_SCHEME = "subly-yield-exact";
71
71
  var SOLANA_MAINNET_NETWORK = "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp";
72
72
  var SPL_TOKEN_PROGRAM_ID = "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA";
@@ -82,7 +82,7 @@ var SUBLY_VAULT = {
82
82
  };
83
83
  var USDC_DECIMALS = 6;
84
84
 
85
- // src/domain/request-binding.ts
85
+ // ../../src/domain/request-binding.ts
86
86
  function computeRequestBindingHash(fields) {
87
87
  return hashStableJson({
88
88
  sellerRequestId: fields.sellerRequestId,
@@ -97,7 +97,7 @@ function computeRequestBindingHash(fields) {
97
97
  });
98
98
  }
99
99
 
100
- // src/lib/associated-token-account.ts
100
+ // ../../src/lib/associated-token-account.ts
101
101
  import { createHash as createHash2 } from "node:crypto";
102
102
  import bs582 from "bs58";
103
103
  var PDA_MARKER = Buffer.from("ProgramDerivedAddress", "utf8");
@@ -189,7 +189,7 @@ function modPow(base, exponent, modulus) {
189
189
  return result;
190
190
  }
191
191
 
192
- // src/client/transaction-intent-validator.ts
192
+ // ../../src/client/transaction-intent-validator.ts
193
193
  var COMPUTE_BUDGET_PROGRAM_ID = "ComputeBudget111111111111111111111111111111";
194
194
  var SYSTEM_PROGRAM_ID = "11111111111111111111111111111111";
195
195
  var ASSOCIATED_TOKEN_PROGRAM_ID2 = "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL";
@@ -875,7 +875,7 @@ function readShortVec(bytes, startOffset) {
875
875
  return null;
876
876
  }
877
877
 
878
- // src/client/agent-wallet-signer.ts
878
+ // ../../src/client/agent-wallet-signer.ts
879
879
  var LocalKeypairAgentWalletSigner = class {
880
880
  validationMode = "structured_intent_transaction";
881
881
  keyPairSigner;
@@ -945,7 +945,7 @@ var LocalKeypairAgentWalletSigner = class {
945
945
  }
946
946
  };
947
947
 
948
- // src/api/wallet-auth.ts
948
+ // ../../src/api/wallet-auth.ts
949
949
  import { createHash as createHash3 } from "node:crypto";
950
950
  import bs585 from "bs58";
951
951
  import nacl from "tweetnacl";
@@ -963,7 +963,7 @@ function walletAuthMessage(params) {
963
963
  );
964
964
  }
965
965
 
966
- // src/client/wallet-auth-headers.ts
966
+ // ../../src/client/wallet-auth-headers.ts
967
967
  async function walletAuthHeaders(params) {
968
968
  const signedAtMs = String(Date.now());
969
969
  const message = walletAuthMessage({
@@ -979,7 +979,7 @@ async function walletAuthHeaders(params) {
979
979
  };
980
980
  }
981
981
 
982
- // src/client/lookup-tables.ts
982
+ // ../../src/client/lookup-tables.ts
983
983
  import { fetchAllMaybeAddressLookupTable } from "@solana-program/address-lookup-table";
984
984
  import { address, getCompiledTransactionMessageDecoder as getCompiledTransactionMessageDecoder2 } from "@solana/kit";
985
985
  function lookupTableAddressesForTransaction(serializedTransaction) {
@@ -1019,7 +1019,7 @@ async function fetchLookupTablesForTransaction(rpc2, serializedTransaction) {
1019
1019
  return result;
1020
1020
  }
1021
1021
 
1022
- // src/solana/keys.ts
1022
+ // ../../src/solana/keys.ts
1023
1023
  import { readFileSync } from "node:fs";
1024
1024
  import bs586 from "bs58";
1025
1025
  import {
@@ -1044,13 +1044,13 @@ async function loadKeyPairSigner(params) {
1044
1044
  throw new Error(`${label} keypair is not configured`);
1045
1045
  }
1046
1046
 
1047
- // src/solana/rpc.ts
1047
+ // ../../src/solana/rpc.ts
1048
1048
  import { createSolanaRpc } from "@solana/kit";
1049
1049
  function createRpc(url) {
1050
1050
  return createSolanaRpc(url);
1051
1051
  }
1052
1052
 
1053
- // demo/shared.ts
1053
+ // ../../demo/shared.ts
1054
1054
  function fail(message) {
1055
1055
  console.error(message);
1056
1056
  process.exit(1);
@@ -1062,7 +1062,7 @@ function formatRawUsdc(raw) {
1062
1062
  return `${whole}.${fraction}`;
1063
1063
  }
1064
1064
 
1065
- // demo/withdraw.ts
1065
+ // ../../demo/withdraw.ts
1066
1066
  var facilitatorBaseUrl = process.env.SUBLY_FACILITATOR_URL ?? "https://api.demo.sublyfi.com";
1067
1067
  var amountRawUsdc = process.argv[2];
1068
1068
  if (amountRawUsdc === void 0 || !/^[1-9]\d*$/.test(amountRawUsdc)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subly_fi/pay",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Subly client: pay for ANY standard x402 (HTTP 402) paid API from Kamino vault yield — the seller needs no Subly integration. Ships an MCP server and a one-shot pay/deposit CLI; non-custodial (signs locally with your own key).",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -15,20 +15,22 @@
15
15
  "README.md"
16
16
  ],
17
17
  "scripts": {
18
- "build": "node build.mjs"
18
+ "build": "node build.mjs",
19
+ "typecheck": "tsc -p tsconfig.json --noEmit"
19
20
  },
20
21
  "dependencies": {
21
22
  "@modelcontextprotocol/sdk": "^1.29.0",
22
- "@solana-program/address-lookup-table": "^0.7.0",
23
- "@solana/kit": "^2.3.0",
24
- "@solana/web3.js": "^1.98.4",
23
+ "@solana-program/address-lookup-table": "^0.10.0",
24
+ "@solana/kit": "^5.1.0",
25
+ "@x402/fetch": "^2.17.0",
26
+ "@x402/svm": "^2.17.0",
25
27
  "bs58": "^6.0.0",
26
28
  "tweetnacl": "^1.0.3",
27
- "x402-solana": "^2.0.4",
28
29
  "zod": "^4.1.13"
29
30
  },
30
31
  "devDependencies": {
31
- "esbuild": "^0.28.1"
32
+ "esbuild": "^0.28.1",
33
+ "typescript": "^5.9.3"
32
34
  },
33
35
  "publishConfig": {
34
36
  "access": "public"