@prisma/cli-dev
Version:
Dev CLI for Prisma
4 lines (3 loc) • 1.44 kB
JavaScript
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
import{a}from"./chunk-XOIFSEIB.js";import{ServerState as i}from"@prisma/dev/internal/state";import{defineCommand as m}from"citty";function o(t,n=t){return`\x1B]8;;${t.toString()}\x07${n.toString()}\x1B]8;;\x07`}import{consola as c}from"consola";import u from"table-layout";var l={...a},p={description:"List available servers",name:"ls"},U=m({args:l,meta:p,run:async t=>{let n=await i.scan({debug:t.args.debug}),e=new u([{name:s("name"),status:s("status"),urls:s("urls")},...n.map(r=>({name:r.name,status:r.status,urls:g(r)}))]);c.log(e.toString())}});function s(t){return`\x1B[1m${t}\x1B[0m`}function g(t){if(t.status!=="running")return"";let n=f(t),e=S(t),r=d(t);return[n?`${s("DATABASE_URL")}: ${n}`:null,e?`${s("TCP")}: ${e}`:null,r?`${s("Terminal")}: ${r}`:null].filter(Boolean).join(`
`)}function f(t){let{url:n}=t.exports?.ppg||{};if(!n)return"";let e=new URL(n),r=e.searchParams.get("api_key");return e.searchParams.set("api_key",`${r.slice(0,4)}...${r.slice(-4)}`),o(n,e)}function S(t){let{connectionString:n,prismaORMConnectionString:e}=t.exports?.database||{};if(!e&&!n)return"";let r=new URL(e||n);return o(r,`${r.protocol}//...@${r.host}/...`)}function d(t){let{connectionString:n,terminalCommand:e}=t.exports?.database||{};if(!n||!e)return"";let r=new URL(n);return o(e,`...psql -h ${r.hostname} -p ${r.port} ...`)}export{U as ListCommand};