import{_ as b,a as x}from"./BejTbr-_.js";import{_ as C}from"./DXD0G-3-.js";import{_ as $}from"./CNK_bECE.js";import{f as A,g as L}from"./D8R-iDld.js";import{p as N}from"./DIwk0fRR.js";import{b as h,a as d,z as B,o,f as l,F as S,A as T,j as u,L as E,h as m,u as r,t as f,J as M,H as z,I as D,g as j}from"./D6hDfX2G.js";import{c as q}from"./BkWCVY0-.js";import{u as F}from"./CgsK-w3L.js";import{u as H}from"./BQsh0kJG.js";/*!
* Copyright (c) 2024 Launch Bagz
* All rights reserved.
*/const R={class:"tokens-list"},V={key:0},I={key:1,class:"skeleton skeleton--text"},J={key:2},O=h({__name:"List",props:{contracts:{type:Array,required:!0}},setup(_){const s=d([]),i=d({}),p=_;return B(async()=>{const a=p.contracts.map(async({contract:t})=>{i.value[t]=!0;try{return await A({code:t,table:"stat",limit:1e3})}finally{i.value[t]=!1}}),n=await Promise.all(a);for(let t=0;t<n.length;t++){const e=n[t].rows.map(c=>N(c.scope));s.value.push(e.join(", "))}}),(a,n)=>{const t=$;return o(),l("div",R,[(o(!0),l(S,null,T(_.contracts,(e,c)=>(o(),u(t,{key:`contract-${c}`,to:`/dash/contract/${e.contract}`},{default:E(()=>[n[0]||(n[0]=m("svg",{role:"presentation",focusable:"false","aria-hidden":"true"},[m("use",{"xlink:href":"#binary"})],-1)),r(s)[c]?(o(),l("p",V,f(r(s)[c]),1)):r(i)[e.contract]?(o(),l("span",I)):(o(),l("p",J,"No tokens")),m("small",null,f(e.contract),1)]),_:2},1032,["to"]))),128))])}}}),P={class:"page--dash-overview page-creator"},G={class:"overview-contracts"},st=h({__name:"index",async setup(_){let s,i;const p={title:"Token Contracts",description:"Creating a token requires deploying a token contract.  A token contract allows you to create multiple tokens. Although we recommend using one contract per token unless the tokens are related.",path:"/dash/contract/new",button:"Deploy token contract"},a=F(),n=M(),{contracts:t}=q(),{data:e,pending:c}=([s,i]=z(async()=>H(`token-contracts-created-${a.value}`,async()=>a.value?(await L({code:t.bagzregistry,scope:a.value,table:"dashboard",limit:1e3})).rows:void 0,{watch:[a,n],server:!1,lazy:!0})),s=await s,i(),s);return D({title:"Contract"}),(y,K)=>{const g=b,k=C,v=O,w=x;return o(),l("main",P,[j(g,{data:p}),m("section",G,[r(c)?(o(),u(k,{key:0,height:40,message:"Loading contracts..."})):r(e)&&r(e).length?(o(),u(v,{key:1,contracts:r(e)},null,8,["contracts"])):(o(),u(w,{key:2,height:40,message:"No contracts added yet."}))])])}}});export{st as default};
