import{M as l,N as I,P}from"./chunk-UZ7U322K.js";import{Z as M,ea as N}from"./chunk-IRH6IGFT.js";import{a as w}from"./chunk-5JCREGSD.js";import{z as g}from"./chunk-2HZMOK4U.js";import{a as D}from"./chunk-5C7HDTHJ.js";import{D as _,P as h,u as b}from"./chunk-E24W34C4.js";import{b as m,d as p,g as y}from"./chunk-ELIH6GCC.js";import{Nb as F}from"./chunk-EYDNSYYE.js";import{j as E}from"./chunk-JCNRQYRP.js";import{g as d}from"./chunk-VKWPEFWQ.js";d();d();async function u(t,e,r){let i=r.clientName===M.AppManagement,s;r.supportsStoreSearch&&(s=async a=>r.devStoresForOrg(e.id,a));let o=await l({onSearchForStoresByName:s,...t,showDomainOnPrompt:i});if(!o){if(b({body:await r.getCreateDevStoreLink(e)}),await h(5),!await P(e))throw new m;let f=await k(e.id,r);o=await u({stores:f,hasMorePages:!1},e,r)}let n=await c(o,e.id,r,"prompt-first");for(;!n;){if(o=await l({stores:[o],hasMorePages:!1,showDomainOnPrompt:i}),!o)throw new m;n=await c(o,e.id,r,"prompt-first")}return o}async function k(t,e){let s=[];return await _([{title:"Fetching organization data",task:async()=>{for(let n=0;n<10;n++){let{stores:a}=await e.devStoresForOrg(t);if(a.length>0){s=a;return}await h(3)}}}]),s}async function c(t,e,r,i){if(t.transferDisabled||E())return!0;if(!t.transferDisabled&&!t.convertableToPartnerTest)throw new p(`The store you specified (${t.shopDomain}) is not a dev store`,"Run dev --reset and select an eligible dev store.");switch(i){case"prompt-first":return await I()?(await x(t,e,r),!0):!1;case"never":throw new p("The store you specified is not transfer-disabled","Try running 'dev --reset' and selecting a different store, or choosing to convert this one.")}}async function x(t,e,r){let i={input:{organizationID:parseInt(e,10),shopId:t.shopId}},s=await r.convertToTransferDisabledStore(i);if(!s.convertDevToTestStore.convertedToTestStore){let o=s.convertDevToTestStore.userErrors.map(n=>n.message).join(", ");throw new y(`Error converting store ${t.shopDomain} to a transfer-disabled store: ${o}`,"This store might not be compatible with draft apps, please try a different store")}F(`Converted ${t.shopDomain} to a transfer-disabled store`)}async function X({appContextResult:t,storeFqdn:e,forceReselectStore:r,storeTypes:i=["APP_DEVELOPMENT"]}){let{app:s,organization:o,developerPlatformClient:n}=t,a,f=s.configuration.build?.dev_store_url,S=s.hiddenConfig.dev_store_url,T=f??S,v=e??(r?void 0:T),O=i.length===1&&i[0]==="APP_DEVELOPMENT";if(v)a=await N(o,v,n,i),O&&await c(a,o.id,n,"never");else{let A=await n.devStoresForOrg(o.id);a=await u(A,o,n)}return a.shopDomain=g(a.shopDomain),await C(a,r),(a.shopDomain!==T||!S)&&await s.updateHiddenConfig({dev_store_url:a.shopDomain}),await n.ensureUserAccessToStore(o.id,a),a}async function C(t,e){await w.addPublicMetadata(()=>({cmd_app_reset_used:e,store_fqdn_hash:D(t.shopDomain),store_domain:t.shopDomain})),await w.addSensitiveMetadata(()=>({store_fqdn:t.shopDomain}))}export{X as a};
