UNPKG

@shopify/cli

Version:

A CLI tool to build for the Shopify platform

19 lines (16 loc) 3.58 kB
import{Da as b,Ea as k,Fa as E,G as v,Ga as A,Ha as I,Ia as L,Ja as x,Ua as s,Wa as B,Xa as O}from"./chunk-JXW374CL.js";import"./chunk-TYZXGSHO.js";import"./chunk-7QIOUDCX.js";import"./chunk-7MUKLZOL.js";import"./chunk-VBUZWRUL.js";import"./chunk-5Y7GIF2W.js";import"./chunk-XONFGLJQ.js";import"./chunk-4LNCYIS3.js";import"./chunk-L2MGAEV3.js";import"./chunk-PRKBO42R.js";import"./chunk-ZSBA6VIC.js";import"./chunk-F2QU6WWX.js";import"./chunk-XULPJ6UG.js";import"./chunk-3TNEIDOD.js";import"./chunk-MHWV5RQV.js";import"./chunk-XOTA6JTZ.js";import"./chunk-MOA33ZFO.js";import"./chunk-JUVAGMIH.js";import{v as w}from"./chunk-6G6TMKXF.js";import"./chunk-P6XE4MH5.js";import"./chunk-KLMDWDT2.js";import"./chunk-5CH3B62S.js";import"./chunk-QUTQDXSL.js";import"./chunk-WSDN25F5.js";import{d as R}from"./chunk-M56NDIMD.js";import"./chunk-PD5ZHJWI.js";import"./chunk-LDGAHMS7.js";import"./chunk-ZR76GGZ6.js";import"./chunk-EENHXSWU.js";import"./chunk-FUOIGXI4.js";import"./chunk-6M3ZYNGO.js";import"./chunk-QYR5VPQA.js";import"./chunk-OBEWZXOQ.js";import{Ka as g,Sb as q,ma as y,tb as N}from"./chunk-N5PQPIBF.js";import"./chunk-CERXUPGC.js";import"./chunk-T4M5CWAO.js";import"./chunk-PRVQAHWI.js";import"./chunk-YTNDFQJT.js";import"./chunk-ULQG3XQS.js";import{f as h,i as f}from"./chunk-IU2ZQ6TE.js";import"./chunk-PIBY5DDZ.js";import{g as p}from"./chunk-VPRTJUIN.js";p();import{createRequire as C}from"node:module";async function ee({root:c,appPort:D,inspectorPort:P,assetsPort:S,debug:U=!1,watch:W=!1,buildPathWorkerFile:$,buildPathClient:M,env:l}){let{createMiniOxygen:F,Response:u}=await v("@shopify/mini-oxygen",c).catch(L);k({Response:u});async function _(){let r=C(import.meta.url).resolve("@shopify/hydrogen/customer-account.schema.json");return new u(g(r),{headers:{"Content-Type":"application/json"}})}let t="hydrogen",o=h(c,$),m=()=>y(o).catch(e=>{throw new R(`Could not read worker file. `+e.stack,"Did you build the project?")}),i=F({debug:U,port:D,host:"localhost",liveReload:W,requestHook:x,inspectorPort:P,inspectWorkerName:t,assets:{port:S,directory:M},workers:[{name:"hydrogen:middleware",modules:!0,script:`export default { fetch: (request, env) => { const url = new URL(request.url); if (url.hostname.endsWith('${s.ORIGINAL}')) { url.hostname = url.hostname.replace( '${s.ORIGINAL}', '${s.REBRANDED}', ); } return url.pathname === '${I}' ? env.profiler.fetch(url, request) : url.pathname === '/graphiql/customer-account.schema.json' ? env.assets.fetch(url, request) : env.next.fetch(url, request) } }`,serviceBindings:{profiler:A,assets:_,next:t}},{name:t,modulesRoot:f(o),modules:[{type:"ESModule",path:o,contents:await m()}],bindings:{...l},serviceBindings:{[b]:E({transformLocation:()=>o})}}]}),{workerUrl:a,inspectorUrl:d}=await i.ready;return{port:Number(a.port),listeningAt:a.origin,reload(e){return i.reload(async({workers:r})=>{let n=r.find(({name:j})=>j===t);return Array.isArray(n.modules)&&n.modules[0]&&(n.modules[0].contents=await m()),e&&(n.bindings={...e?.env??l}),{workers:r}})},showBanner(e){q();let r=[];e?.host&&r.push({body:O(e.host)}),d&&r.push({body:{warn:B(Number(d.port))}}),w({headline:`${e?.headlinePrefix??""}MiniOxygen (Worker Runtime) ${e?.mode??"development"} server running.`,body:[`View ${e?.appName?N.cyan(e?.appName):"Hydrogen"} app:`,{link:{url:e?.host||a.origin}}],customSections:r}),console.log("")},async close(){await i.dispose()}}}export{ee as startWorkerdServer};