Your IP : 216.73.216.43


Current Path : /home/deltalab/PMS/sms-connector/graphql/schemas/
Upload File :
Current File : //home/deltalab/PMS/sms-connector/graphql/schemas/manifest.schema.js

const { shipmentManifestTC }  = require('../types/shipment.type');
const { adapter }             = require('../../adapters/shippypro-adapter');

shipmentManifestTC.addResolver({
  kind: 'mutation',
  name: 'createManifest',
  type: shipmentManifestTC,
  args: {
    shipmentId: 'String!'
  },
  resolve: ({ args }) => {
    console.log(`creating manifest for shipment id ${args.shipmentId}`);
    return adapter.createManifestAsync(args.shipmentId);
  }
});

shipmentManifestTC.addResolver({
  kind: 'query',
  name: 'getManifest',
  type: shipmentManifestTC,
  args: {
    manifestId: 'Int!'
  },
  resolve: ({ args }) => {
    console.log(`getting manifest for manifest id ${args.manifestId}`);
    return adapter.getManifestAsync(args.manifestId);
  }
});

// QUERIES =============================
const manifestQueries = {
  getManifest: shipmentManifestTC.getResolver('getManifest'),
};

// MUTATIONS =============================
const manifestMutations = {
  createManifest: shipmentManifestTC.getResolver('createManifest'),
};

// EXPORTS ==================================================
module.exports = { 
  manifestQueries, 
  manifestMutations,
};