@cgignite/ignite-sf-commerce
Version:
Salesforce Commerce connector for Ignite
35 lines (30 loc) • 1.35 kB
JavaScript
const { getShopperProductsData } = require('../helpers/shopperProducts');
const { extractToken } = require('../helpers/functions');
module.exports = function (RED) {
function shopperProducts(config) {
RED.nodes.createNode(this, config);
var node = this;
this.on('input', function (msg) {
var baseURI = 'https://{shortCode}.api.commercecloud.salesforce.com/product/shopper-products/{version}';
reqHeaders = extractToken(msg)
shopperProductsInfo = {
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,
id: config.id
}
getShopperProductsData(shopperProductsInfo)
.then(response => {
msg.payload = response
node.send(msg)
});
});
}
RED.nodes.registerType("shopperProducts", shopperProducts);
};