UNPKG

@cedros/pay-react

Version:

React frontend library for Cedros Pay - unified Stripe and Solana x402 payments

2 lines (1 loc) 6.54 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=require("vitest"),c=require("react/jsx-runtime"),p=require("../CedrosContext-DbndTsTA.js"),y={clusterApiUrl:n.vi.fn(()=>"https://api.devnet.solana.com"),Connection:class{async getLatestBlockhash(){return{blockhash:"mockedBlockhash123",lastValidBlockHeight:1e6}}async getBalance(){return 1e9}async getSignatureStatus(){return{value:{confirmationStatus:"confirmed"}}}async getAccountInfo(){return{data:new Uint8Array,executable:!1,lamports:1e6,owner:new Uint8Array(32),rentEpoch:0}}async sendRawTransaction(){return"mockedSignature123"}async confirmTransaction(){return{value:{err:null}}}},SystemProgram:{transfer:n.vi.fn(()=>({keys:[],programId:{},data:new Uint8Array}))},Transaction:class{recentBlockhash;feePayer;instructions=[];add(t){return this.instructions.push(t),this}serialize(){return new Uint8Array([1,2,3,4,5])}},LAMPORTS_PER_SOL:1e9,PublicKey:class{constructor(t){this.value=t}toString(){return typeof this.value=="string"?this.value:"mockPublicKey123"}toBase58(){return this.toString()}toBytes(){return new Uint8Array(32)}}},f={getAssociatedTokenAddress:n.vi.fn(async()=>({toBase58:()=>"mockTokenAddress123"})),createTransferInstruction:n.vi.fn(()=>({keys:[],programId:{},data:new Uint8Array})),TOKEN_PROGRAM_ID:"mockTokenProgramId"},v={ConnectionProvider:({children:e})=>e,WalletProvider:({children:e})=>e,useWallet:()=>({connected:!1,connecting:!1,connect:n.vi.fn(),disconnect:n.vi.fn(),publicKey:null,signTransaction:n.vi.fn(),signAllTransactions:n.vi.fn(),select:n.vi.fn()})},S={PhantomWalletAdapter:class{},SolflareWalletAdapter:class{},BackpackWalletAdapter:class{}},h={loadStripe:n.vi.fn(async()=>({redirectToCheckout:n.vi.fn(async e=>({error:null})),confirmCardPayment:n.vi.fn(async()=>({paymentIntent:{id:"pi_mock123",status:"succeeded"},error:null}))}))};function P(e=!0,t="mockWallet123"){return{connected:e,connecting:!1,connect:n.vi.fn().mockResolvedValue(void 0),disconnect:n.vi.fn().mockResolvedValue(void 0),publicKey:e?{toBase58:()=>t,toString:()=>t}:null,signTransaction:n.vi.fn().mockResolvedValue({signature:new Uint8Array(64),serialize:()=>new Uint8Array([1,2,3])}),signAllTransactions:n.vi.fn().mockResolvedValue([]),select:n.vi.fn()}}function g(e={}){const{redirectSuccess:t=!0}=e,o=e.sessionId??"cs_test_mock123";return{redirectToCheckout:n.vi.fn().mockResolvedValue({error:t?null:{message:"Mock redirect error"}}),confirmCardPayment:n.vi.fn().mockResolvedValue({paymentIntent:{id:"pi_mock123",status:"succeeded"},error:null}),_sessionId:o}}function A(e){return n.vi.fn(t=>{for(const[o,r]of Object.entries(e))if(t.includes(o))return Promise.resolve({ok:r.status>=200&&r.status<300,status:r.status,json:async()=>r.body,text:async()=>JSON.stringify(r.body),headers:new Map(Object.entries(r.headers||{}))});return Promise.resolve({ok:!1,status:404,json:async()=>({error:"Not found"}),text:async()=>JSON.stringify({error:"Not found"}),headers:new Map})})}function i(e={}){return function({children:o}){const r={stripePublicKey:e.stripePublicKey??"pk_test_mock_key_for_testing",serverUrl:e.serverUrl??"http://localhost:8080",solanaCluster:e.solanaCluster??"devnet",solanaEndpoint:e.solanaEndpoint,theme:e.theme??"light",themeOverrides:e.themeOverrides,unstyled:!1,tokenMint:void 0,dangerouslyAllowUnknownMint:!0,logLevel:4};return c.jsx(p.CedrosProvider,{config:r,children:o})}}function T(){return i({stripePublicKey:"pk_test_minimal",serverUrl:"http://localhost:8080",solanaCluster:"devnet"})}function w(e={}){return e.connected,e.publicKey,e.connecting,function({children:o}){return c.jsx(c.Fragment,{children:o})}}function M(e="cs_test_mock123"){return{success:!0,transactionId:e,error:void 0}}function W(e="Payment failed"){return{success:!1,transactionId:void 0,error:e}}function b(e={}){const{scheme:t="solana-spl-transfer",network:o="mainnet-beta",maxAmountRequired:r="1000000",resource:s="test-resource",description:a="Test Payment",mimeType:l="application/json",payTo:u="mockRecipient123",maxTimeoutSeconds:m=300,asset:k="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",extra:d={recipientTokenAccount:"mockTokenAccount123",decimals:6,tokenSymbol:"USDC",memo:"test-payment"}}=e;return{scheme:t,network:o,maxAmountRequired:r,resource:s,description:a,mimeType:l,payTo:u,maxTimeoutSeconds:m,asset:k,extra:d}}function C(e={}){const{success:t=!0,error:o=null,txHash:r="mockSignature123",networkId:s="mainnet-beta",metadata:a}=e;return{success:t,error:o,txHash:r,networkId:s,metadata:a}}async function x(){return new Promise(e=>setTimeout(e,0))}async function R(e){return new Promise(t=>setTimeout(t,e))}function _(e,t={}){const{maxAmountRequired:o="1000000",asset:r="EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",payTo:s="mockRecipient123"}=t;return{ok:!1,status:402,json:async()=>({x402Version:0,error:"payment required",accepts:[{scheme:"solana-spl-transfer",network:"mainnet-beta",maxAmountRequired:o,resource:e,description:"Payment required",mimeType:"application/json",payTo:s,maxTimeoutSeconds:300,asset:r,extra:{recipientTokenAccount:"mockTokenAccount123",decimals:6,tokenSymbol:"USDC",memo:`${e}:${Date.now()}`}}]}),headers:new Map([["content-type","application/json"]])}}function U(e=!0){const t=e?{success:!0,error:null,txHash:"mockSignature123",networkId:"mainnet-beta"}:{success:!1,error:"Payment verification failed",txHash:null,networkId:null};return{ok:e,status:e?200:402,json:async()=>t,headers:new Map([["x-payment-response",JSON.stringify(t)]])}}function j(e="cs_test_mock123"){return{ok:!0,status:200,json:async()=>({sessionId:e,url:`https://checkout.stripe.com/pay/${e}`})}}function I(e="mockWallet123"){return{publicKey:{toBase58:()=>e,toString:()=>e}}}function q(){return{signature:new Uint8Array(64).fill(1),serialize:()=>new Uint8Array([1,2,3,4,5])}}function B(e){return n.vi.fn(e)}async function O(){return new Promise(e=>setImmediate(e))}exports.createMinimalMockProvider=T;exports.createMockCedrosProvider=i;exports.createMockFetch=A;exports.createMockStripe=g;exports.createMockWallet=P;exports.createSpy=B;exports.flushPromises=O;exports.mockPaymentFailure=W;exports.mockPaymentSuccess=M;exports.mockQuoteResponse=_;exports.mockSettlement=C;exports.mockSignTransaction=q;exports.mockSolanaWeb3=y;exports.mockSplToken=f;exports.mockStripeJs=h;exports.mockStripeSessionResponse=j;exports.mockVerifyResponse=U;exports.mockWalletAdapter=v;exports.mockWalletAdapterWallets=S;exports.mockWalletConnect=I;exports.mockWalletProvider=w;exports.mockX402Quote=b;exports.wait=R;exports.waitForNextTick=x;