@cgignite/ignite-sf-commerce
Version:
Salesforce Commerce connector for Ignite
37 lines (32 loc) • 1.4 kB
JavaScript
const { getOrdersData } = require('../helpers/orders');
const { extractToken } = require('../helpers/functions');
module.exports = function (RED) {
function orders(config) {
RED.nodes.createNode(this, config);
var node = this;
this.on('input', function (msg) {
var baseURI = 'https://{shortCode}.api.commercecloud.salesforce.com/checkout/orders/{version}';
reqHeaders = extractToken(msg)
ordersInfo = {
ApiURL: baseURI + config.endpoint,
reqHeaders: msg.reqHeaders ? msg.reqHeaders : reqHeaders,
reqParams: msg.reqParams ? msg.reqParams : {},
reqBody: msg.payload ? msg.payload : {},
shortCode: msg.commerceCloudConfig.shortCode,
version: msg.commerceCloudConfig.version,
organizationId: msg.commerceCloudConfig.organizationId,
method: config.method,
endpoint: config.endpoint,
orderNo: config.orderNo,
shipmentId: config.shipmentId,
paymentInstrumentId: config.paymentInstrumentId
}
getOrdersData(ordersInfo)
.then(response => {
msg.payload = response
node.send(msg)
});
});
}
RED.nodes.registerType("orders", orders);
};