UNPKG

@ecomplus/utils

Version:

JS utility functions to E-Com Plus (not only) related apps

60 lines (56 loc) 2.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; require("core-js/modules/es.object.to-string.js"); require("core-js/modules/web.dom-collections.for-each.js"); require("core-js/modules/es.symbol.js"); require("core-js/modules/es.symbol.description.js"); require("core-js/modules/es.symbol.iterator.js"); require("core-js/modules/es.array.iterator.js"); require("core-js/modules/es.string.iterator.js"); require("core-js/modules/web.dom-collections.iterator.js"); function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); } /** * @method * @memberof ecomUtils * @name recommendedIds * @description Returns array of product IDs from Graphs API response. * @param {Object.<string, *>|Array} result - Recommend/related products response body * @returns {Array} * * @example // Full Graphs API response samples: // https://developers.e-com.plus/docs/api/#/graphs/products/recommended const result = { results: [ { columns: [], data: [] } ] } result.results[0].data.push( { row: [ 'a00000000000000000000001' ], meta: [ null ] }, { row: [ 'a00000000000000000000002' ], meta: [ null ] }, { row: [ 'a00000000000000000000006' ], meta: [ null ] } ) ecomUtils.recommendedIds(result) // => [ 'a00000000000000000000001', 'a00000000000000000000002', 'a00000000000000000000006' ] */ var recommendedIds = function recommendedIds(result) { var data; if (_typeof(result) === 'object' && result !== null) { if (Array.isArray(result)) { data = result; } else if (result.results && result.results[0]) { // Neo4j response body data = result.results[0].data; } } // setup ids list var ids = []; if (Array.isArray(data)) { // map ids array from Neo4j data list data.forEach(function (_ref) { var row = _ref.row; ids.push(row[0]); }); } return ids; }; var _default = exports.default = recommendedIds;