← back to Shopify Sample Shipping

gf-poll.mjs

9 lines

import {query} from './query.mjs';
for(let i=0;i<30;i++){
  const b=(await query(`{currentBulkOperation{id status errorCode objectCount url}}`)).currentBulkOperation;
  process.stdout.write(`\r[${i}] ${b.status} objs=${b.objectCount||0}   `);
  if(b.status==='COMPLETED'){console.log('\nURL_READY');console.log(b.url);break;}
  if(['FAILED','CANCELED'].includes(b.status)){console.log('\n'+b.status,b.errorCode);break;}
  await new Promise(r=>setTimeout(r,8000));
}