PageSourceSearch

https://junis.ai/_next/static/chunks/5701-6768c80a7cafdc3a.js

js junis.ai collected 2026-10-05 15:37:55 UTC 16,931 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[5701],{5701:(e,t,a)=>{a.r(t),a.d(t,{PaymentDialog:()=>v});var r=a(95155),n=a(12115),s=a(97003),i=a(54679),o=a(83101),l=a(25016);let d=(0,o.F)("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"}},defaultVariants:{variant:"default"}}),c=n.forwardRef((e,t)=>{let{className:a,variant:n,...s}=e;return(0,r.jsx)("div",{ref:t,role:"alert",className:(0,l.cn)(d({variant:n}),a),...s})});c.displayName="Alert",n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)("h5",{ref:t,className:(0,l.cn)("mb-1 font-medium leading-none tracking-tight",a),...n})}).displayName="AlertTitle";let m=n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)("div",{ref:t,className:(0,l.cn)("text-sm [&_p]:leading-relaxed",a),...n})});m.displayName="AlertDescription";var u=a(75882),x=a(52056),h=a(93499),f=a(5917),g=a(6049),p=a(29081);function v(e){let{open:t,onClose:a,requirements:o,onPaymentSubmitted:l,onPaymentCancelled:d}=e,{isInstalled:v,isConnected:y,accounts:b,connect:w,switchToBaseNetwork:j,signEIP3009:N,signEIP3009X402:B,isBaseNetwork:k}=function(){let[e,t]=(0,n.useState)({isInstalled:!1,isConnected:!1,accounts:[],chainId:null,error:null});(0,n.useEffect)(()=>{let e=window.ethereum;return e&&e.isMetaMask&&(t(e=>({...e,isInstalled:!0})),a(),e.on("accountsChanged",r),e.on("chainChanged",s)),()=>{e&&(e.removeListener("accountsChanged",r),e.removeListener("chainChanged",s))}},[]);let a=async()=>{try{let e=window.ethereum,a=await e.request({method:"eth_accounts"}),r=await e.request({method:"eth_chainId"});t(e=>({...e,isConnected:a.length>0,accounts:a,chainId:r}))}catch(e){t(t=>({...t,error:e.message}))}},r=e=>{t(t=>({...t,accounts:e,isConnected:e.length>0}))},s=e=>{t(t=>({...t,chainId:e}))},i=async()=>{try{let e=window.ethereum;if(!e||!e.isMetaMask)throw Error("MetaMask is not installed. Please install MetaMask extension.");let a=await e.request({method:"eth_requestAccounts"}),r=await e.request({method:"eth_chainId"});return t(e=>({...e,isConnected:!0,accounts:a,chainId:r,error:null})),a}catch(e){throw t(t=>({...t,error:e.message})),e}},o=async function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0];try{let t=window.ethereum;await t.request({method:"wallet_switchEthereumChain",params:[{chainId:e?"0x2105":"0x14a34"}]})}catch(t){if(4902===t.code)try{await l(e)}catch(e){throw e}else throw t}},l=async function(){let e=!(arguments.length>0)||void 0===arguments[0]||arguments[0],t=window.ethereum;await t.request({method:"wallet_addEthereumChain",params:[e?{chainId:"0x2105",chainName:"Base Mainnet",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:["https://mainnet.base.org"],blockExplorerUrls:["https://basescan.org"]}:{chainId:"0x14a34",chainName:"Base Sepolia",nativeCurrency:{name:"ETH",symbol:"ETH",decimals:18},rpcUrls:["https://sepolia.base.org"],blockExplorerUrls:["https://sepolia.basescan.org"]}]})},d=async a=>{try{let t=window.ethereum;if(!e.isConnected||0===e.accounts.length)throw Error("MetaMask is not connected. Please connect your wallet first.");let r=e.accounts[0],n={name:"USD Coin",version:"2",chainId:"base-mainnet"===a.network?8453:84532,verifyingContract:a.asset},s={from:r,to:a.agent_wallet,value:a.total_amount,validAfter:a.valid_after,validBefore:a.valid_before,nonce:a.nonce},i=JSON.stringify({types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],TransferWithAuthorization:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"value",type:"uint256"},{name:"validAfter",type:"uint256"},{name:"validBefore",type:"uint256"},{name:"nonce",type:"bytes32"}]},primaryType:"TransferWithAuthorization",domain:n,message:s});return await t.request({method:"eth_signTypedData_v4",params:[r,i]})}catch(e){throw console.error("EIP-3009 signature error:",e),t(t=>({...t,error:e.message})),e}},c=async a=>{try{let t=window.ethereum;if(!e.isConnected||0===e.accounts.length)throw Error("MetaMask is not connected. Please connect your wallet first.");let r=e.accounts[0],n={name:a.extra.name,version:a.extra.version,chainId:a.chainId,verifyingContract:a.asset},s={from:r,to:a.payTo,value:a.maxAmountRequired,validAfter:a.validAfter,validBefore:a.validBefore,nonce:a.nonce},i=JSON.stringify({types:{EIP712Domain:[{name:"name",type:"string"},{name:"version",type:"string"},{name:"chainId",type:"uint256"},{name:"verifyingContract",type:"address"}],TransferWithAuthorization:[{name:"from",type:"address"},{name:"to",type:"address"},{name:"value",type:"uint256"},{name:"validAfter",type:"uint256"},{name:"validBefore",type:"uint256"},{name:"nonce",type:"bytes32"}]},primaryType:"TransferWithAuthorization",domain:n,message:s});return await t.request({method:"eth_signTypedData_v4",params:[r,i]})}catch(e){throw console.error("[AP2/x402] EIP-3009 signature error:",e),t(t=>({...t,error:e.message})),e}};return{...e,connect:i,switchToBaseNetwork:o,signEIP3009:d,signEIP3009X402:c,isBaseNetwork:function(){let t=!(arguments.length>0)||void 0===arguments[0]||arguments[0];return e.chainId===(t?"0x2105":"0x14a34")}}}
1(),[C,_]=(0,n.useState)(!1),[A,q]=(0,n.useState)(null),[M,E]=(0,n.useState)("connect"),F=()=>{_(!1),q(null),E("connect"),d&&d(),a()},I=()=>{d&&d(),a()};if(!o)return null;let P="amount"in o&&"wallets"in o,D="base-mainnet"===o.network,T=P?o.amount.total_usdc:parseFloat(o.total_amount)/1e6,z=P?o.amount.agent_usdc:parseFloat(o.agent_amount)/1e6,R=P?o.amount.company_usdc:parseFloat(o.company_amount)/1e6,S=P?o.message:o.description,U=o.agent_name||(()=>{let e=null==S?void 0:S.match(/Payment for (.+?) \(/);return e?e[1]:"Agent"})(),L=async()=>{_(!0),q(null);try{if(y||(E("connect"),await w()),k(D)||(E("network"),await j(D)),E("sign"),o&&"object"==typeof o&&"requirements"in o){let e=o.requirements;if(!e||!e.agent||!e.company)throw Error("Invalid x402 requirements: expected agent and company payment requirements");let t=e.agent,a=e.company,r={...t,nonce:e.agent_nonce,validAfter:e.valid_after,validBefore:e.valid_before,chainId:e.chain_id},n={...a,nonce:e.company_nonce,validAfter:e.valid_after,validBefore:e.valid_before,chainId:e.chain_id},s=await B(r),i=(0,g.b)(b[0]),d={from:i,to:t.payTo,value:t.maxAmountRequired,validAfter:e.valid_after,validBefore:e.valid_before,nonce:e.agent_nonce},c=await B(n),m={from:i,to:a.payTo,value:a.maxAmountRequired,validAfter:e.valid_after,validBefore:e.valid_before,nonce:e.company_nonce};l([{signature:s,authorizationData:d,payment_type:"agent_owner"},{signature:c,authorizationData:m,payment_type:"platform_fee"}])}else{let e=await N(o),t={from:(0,g.b)(b[0]),to:o.agent_wallet,value:o.total_amount,validAfter:o.valid_after,validBefore:o.valid_before,nonce:o.nonce};l(e,t)}E("done")}catch(e){console.error("[AP2/x402] Payment error:",e),q(e.message||"Payment failed. Please try again."),d&&d()}finally{_(!1)}};return v?(0,r.jsx)(i.lG,{open:t,onOpenChange:e=>{e||F()},children:(0,r.jsxs)(i.Cf,{className:"sm:max-w-lg",children:[(0,r.jsxs)(i.c7,{children:[(0,r.jsxs)(i.L3,{className:"flex items-center gap-2",children:[(0,r.jsx)(u.A,{className:"w-5 h-5 text-[#2BB3BB]"}),"Payment Required"]}),(0,r.jsx)(i.rr,{children:"Complete your payment to continue using this agent."})]}),(0,r.jsxs)("div",{className:"space-y-6 py-4",children:[(0,r.jsx)("div",{className:"bg-gradient-to-br from-[#F9B233]/10 via-[#B8D894]/10 to-[#2BB3BB]/10 rounded-xl p-6 border border-[#2BB3BB]/20",children:(0,r.jsxs)("div",{className:"space-y-4",children:[(0,r.jsxs)("div",{className:"flex justify-between items-center text-lg font-semibold",children:[(0,r.jsx)("span",{children:"Total Amount"}),(0,r.jsxs)("span",{className:"text-2xl bg-gradient-to-r from-[#F9B233] via-[#B8D894] to-[#2BB3BB] bg-clip-text text-transparent",children:[T.toFixed(6)," USDC"]})]}),(0,r.jsx)("div",{className:"h-px bg-gradient-to-r from-[#F9B233] via-[#B8D894] to-[#2BB3BB] opacity-30"}),(0,r.jsxs)("div",{className:"space-y-2 text-sm",children:[(0,r.jsxs)("div",{className:"flex justify-between text-gray-600 dark:text-gray-400",children:[(0,r.jsx)("span",{children:"Agent Owner (80%)"}),(0,r.jsxs)("span",{className:"font-medium",children:[z.toFixed(6)," USDC"]})]}),(0,r.jsxs)("div",{className:"flex justify-between text-gray-600 dark:text-gray-400",children:[(0,r.jsx)("span",{children:"Platform Fee (20%)"}),(0,r.jsxs)("span",{className:"font-medium",children:[R.toFixed(6)," USDC"]})]})]})]})}),(0,r.jsxs)("div",{className:"space-y-3",children:[(0,r.jsxs)("div",{className:"p-4 bg-gradient-to-br from-[#2BB3BB]/10 to-[#3FC1C9]/5 rounded-xl border border-[#2BB3BB]/20",children:[(0,r.jsx)("div",{className:"text-xs font-medium text-gray-500 dark:text-gray-400 mb-1",children:"Agent"}),(0,r.jsx)("div",{className:"text-base font-semibold text-[#2BB3BB] dark:text-[#3FC1C9]",children:U})]}),(0,r.jsx)("div",{className:"p-4 bg-gradient-to-br from-[#F9B233]/10 to-[#FCC85E]/5 rounded-xl border border-[#F9B233]/20",children:(0,r.jsxs)("div",{className:"flex items-center justify-between",children:[(0,r.jsxs)("div",{children:[(0,r.jsx)("div",{className:"text-xs font-medium text-gray-500 dark:text-gray-400 mb-1",children:"Network"}),(0,r.jsx)("div",{className:"text-base font-semibold text-[#F9B233] dark:text-[#FCC85E]",children:D?"Base Mainnet":"Base Sepolia (Testnet)"})]}),(0,r.jsx)("div",{className:"flex items-center gap-2",children:k(D)?(0,r.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 bg-green-500/10 rounded-lg border border-green-500/20",children:[(0,r.jsx)(f.A,{className:"w-4 h-4 text-green-600 dark:text-green-400"}),(0,r.jsx)("span",{className:"text-sm font-semibold text-green-600 dark:text-green-400",children:"Connected"})]}):(0,r.jsxs)("div",{className:"flex items-center gap-1.5 px-3 py-1.5 bg-amber-500/10 rounded-lg border border-amber-500/20",children:[(0,r.jsx)(x.A,{className:"w-4 h-4 text-amber-600 dar
1k:text-amber-400"}),(0,r.jsx)("span",{className:"text-sm font-semibold text-amber-600 dark:text-amber-400",children:"Awaiting Connection"})]})})]})})]}),A&&(0,r.jsxs)(c,{variant:"destructive",children:[(0,r.jsx)(x.A,{className:"h-4 w-4"}),(0,r.jsx)(m,{children:A})]}),C&&(0,r.jsx)("div",{className:"space-y-2",children:(0,r.jsxs)("div",{className:"flex items-center gap-2 text-sm text-gray-600 dark:text-gray-400",children:[(0,r.jsx)(p.y$,{size:"sm",tone:"current"}),(0,r.jsxs)("span",{children:["connect"===M&&"Connecting to MetaMask...","network"===M&&"Switching to Base network...","sign"===M&&"Waiting for signature...","done"===M&&"Processing payment..."]})]})}),(0,r.jsxs)("div",{className:"flex gap-3",children:[(0,r.jsx)(s.$,{variant:"outline",onClick:F,disabled:C,className:"flex-1",children:"Cancel"}),(0,r.jsx)(s.$,{onClick:L,disabled:C,className:"flex-1 bg-gradient-to-r from-[#2BB3BB] to-[#3FC1C9] hover:from-[#3FC1C9] hover:to-[#2BB3BB] text-white font-semibold",children:C?(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(p.y$,{size:"sm",tone:"current",className:"mr-2"}),"Processing..."]}):(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)(u.A,{className:"w-4 h-4 mr-2"}),"Pay with MetaMask"]})})]}),(0,r.jsxs)("div",{className:"text-xs text-center text-gray-500 dark:text-gray-400",children:[(0,r.jsx)("p",{children:"You will be prompted to sign a transaction in MetaMask."}),(0,r.jsx)("p",{className:"mt-1",children:"No login required - just approve the signature."})]})]})]})}):(0,r.jsx)(i.lG,{open:t,onOpenChange:e=>{e||I()},children:(0,r.jsxs)(i.Cf,{className:"sm:max-w-md",children:[(0,r.jsxs)(i.c7,{children:[(0,r.jsxs)(i.L3,{className:"flex items-center gap-2",children:[(0,r.jsx)(u.A,{className:"w-5 h-5"}),"MetaMask Required"]}),(0,r.jsx)(i.rr,{children:"Please install MetaMask browser extension to make payments"})]}),(0,r.jsxs)("div",{className:"space-y-4 py-4",children:[(0,r.jsxs)(c,{children:[(0,r.jsx)(x.A,{className:"h-4 w-4"}),(0,r.jsx)(m,{children:"MetaMask is not detected in your browser. Please install it to continue."})]}),(0,r.jsxs)(s.$,{onClick:()=>window.open("https://metamask.io/download/","_blank"),className:"w-full",children:[(0,r.jsx)(h.A,{className:"w-4 h-4 mr-2"}),"Download MetaMask"]}),(0,r.jsx)(s.$,{variant:"outline",onClick:I,className:"w-full",children:"Cancel"})]})]})})}},54679:(e,t,a)=>{a.d(t,{Cf:()=>m,Es:()=>x,L3:()=>h,c7:()=>u,lG:()=>l,rr:()=>f});var r=a(95155),n=a(12115),s=a(93409),i=a(31719),o=a(25016);let l=s.bL;s.l9;let d=s.ZL;s.bm;let c=n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)(s.hJ,{ref:t,className:(0,o.cn)("fixed top-0 left-0 right-0 bottom-0 z-[9998] bg-black/90 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",a),...n})});c.displayName=s.hJ.displayName;let m=n.forwardRef((e,t)=>{let{className:a,children:n,...l}=e;return(0,r.jsxs)(d,{children:[(0,r.jsx)(c,{}),(0,r.jsxs)(s.UC,{ref:t,className:(0,o.cn)("fixed left-[50%] top-[50%] z-[9999] grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-white p-6 shadow-lg duration-200 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-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",a),...l,children:[n,(0,r.jsxs)(s.bm,{className:"absolute right-4 top-4 roun
1ded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[(0,r.jsx)(i.MKb,{className:"h-4 w-4"}),(0,r.jsx)("span",{className:"sr-only",children:"Close"})]})]})]})});m.displayName=s.UC.displayName;let u=e=>{let{className:t,...a}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col space-y-1.5 text-center sm:text-left",t),...a})};u.displayName="DialogHeader";let x=e=>{let{className:t,...a}=e;return(0,r.jsx)("div",{className:(0,o.cn)("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",t),...a})};x.displayName="DialogFooter";let h=n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)(s.hE,{ref:t,className:(0,o.cn)("text-lg font-semibold leading-none tracking-tight",a),...n})});h.displayName=s.hE.displayName;let f=n.forwardRef((e,t)=>{let{className:a,...n}=e;return(0,r.jsx)(s.VY,{ref:t,className:(0,o.cn)("text-sm text-muted-foreground",a),...n})});f.displayName=s.VY.displayName},97003:(e,t,a)=>{a.d(t,{$:()=>d,r:()=>l});var r=a(95155),n=a(12115),s=a(32467),i=a(83101),o=a(25016);let l=(0,i.F)("inline-flex items-center justify-center gap-2 whitespace-nowrap font-semibold cursor-pointer transition-[color,background-color,border-color,box-shadow,transform,opacity,filter] duration-200 focus-visible:outline-none focus-visible:ring-4 disabled:pointer-events-none disabled:opacity-50 disabled:cursor-default [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-junis-turquoise hover:bg-junis-turquoise-dark text-white shadow-lg hover:shadow-xl hover:scale-105 focus:ring-junis-turquoise/30 rounded-xl",secondary:"bg-junis-orange hover:bg-junis-orange-dark text-white shadow-lg hover:shadow-xl hover:scale-105 focus:ring-junis-orange/30 rounded-xl",accent:"bg-junis-lime hover:bg-junis-lime-dark text-white shadow-lg hover:shadow-xl hover:scale-105 focus:ring-junis-lime/30 rounded-xl",gradient:"bg-gradient-junis-full hover:shadow-2xl hover:scale-105 text-white focus:ring-junis-turquoise/30 relative overflow-hidden rounded-xl before:absolute before:inset-0 before:bg-gradient-to-r before:from-transparent before:via-white/20 before:to-transparent before:translate-x-[-200%] hover:before:translate-x-[200%] before:transition-transform before:duration-700",destructive:"bg-red-500 text-white shadow-sm hover:bg-red-600 rounded-md",outline:"border-2 border-junis-turquoise text-junis-turquoise hover:bg-junis-turquoise hover:text-white rounded-md",ghost:"hover:bg-junis-turquoise/10 text-junis-turquoise-dark hover:text-junis-turquoise rounded-md",link:"text-junis-turquoise underline-offset-4 hover:underline"},size:{default:"h-10 px-6 py-2 text-sm",sm:"h-8 px-4 py-1.5 text-xs rounded-lg",lg:"h-12 px-8 py-3 text-base rounded-xl",xl:"h-14 px-10 py-4 text-lg rounded-2xl",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),d=n.forwardRef((e,t)=>{let{className:a,variant:n,size:i,asChild:d=!1,...c}=e,m=d?s.DX:"button";return(0,r.jsx)(m,{className:(0,o.cn)(l({variant:n,size:i,className:a})),ref:t,...c})});d.displayName="Button"}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.