UNPKG

n8n-nodes-dataforseo

Version:

DataForSEO is an SEO and marketing data provider, empowering businesses with invaluable insights via APIs and databases.

120 lines 5.43 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.getAppStoreBulkAppMetrics = getAppStoreBulkAppMetrics; exports.getAppStoreKeywordsForApp = getAppStoreKeywordsForApp; exports.getAppStoreAppCompetitors = getAppStoreAppCompetitors; exports.getAppStoreAppIntersection = getAppStoreAppIntersection; const n8n_workflow_1 = require("n8n-workflow"); const generalFunctions_1 = require("../../../functions/generalFunctions"); const dataForSeoRequest_1 = require("../../../functions/dataForSeoRequest"); async function getAppStoreBulkAppMetrics(ef, i) { const ids = ef.getNodeParameter('app_ids', i); const parsedIds = (0, generalFunctions_1.parseMultiOptionItems)(ids); const params = { url: '/dataforseo_labs/apple/bulk_app_metrics/live', body: [{ app_ids: parsedIds.length ? parsedIds : null, location_name: ef.getNodeParameter('location_name', i), language_name: ef.getNodeParameter('language_name', i) }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getAppStoreKeywordsForApp(ef, i) { const orderBy = ef.getNodeParameter('order_by', i); const parsedOrderBy = (0, generalFunctions_1.parseOrderByString)(orderBy); if (parsedOrderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const params = { url: '/dataforseo_labs/apple/keywords_for_app/live', body: [{ app_id: ef.getNodeParameter('app_id', i), location_name: ef.getNodeParameter('location_name', i) || null, language_name: ef.getNodeParameter('language_name', i) || null, filters: parsedFilters.length ? parsedFilters : null, order_by: parsedOrderBy.length ? parsedOrderBy : null, limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getAppStoreAppCompetitors(ef, i) { const orderBy = ef.getNodeParameter('order_by', i); const parsedOrderBy = (0, generalFunctions_1.parseOrderByString)(orderBy); if (parsedOrderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const params = { url: '/dataforseo_labs/apple/app_competitors/live', body: [{ app_id: ef.getNodeParameter('app_id', i), location_name: ef.getNodeParameter('location_name', i) || null, language_name: ef.getNodeParameter('language_name', i) || null, filters: parsedFilters.length ? parsedFilters : null, order_by: parsedOrderBy.length ? parsedOrderBy : null, limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } async function getAppStoreAppIntersection(ef, i) { const orderBy = ef.getNodeParameter('order_by', i); const parsedOrderBy = (0, generalFunctions_1.parseOrderByString)(orderBy); if (parsedOrderBy.length > 3) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "You can set no more than three sorting rules"); } const filters = ef.getNodeParameter('filters', i); let parsedFilters = []; try { parsedFilters = (0, generalFunctions_1.parseFilters)(filters); } catch (e) { throw new n8n_workflow_1.NodeOperationError(ef.getNode(), "Invalid Filters value"); } const ids = ef.getNodeParameter('app_ids_20', i); const values = ids.values; let parsedIds = {}; let index; for (const key in values) { index = parseInt(key) + 1; Object.defineProperty(parsedIds, index.toString(), { value: values[key]['value'], writable: true, enumerable: true, configurable: true }); } const params = { url: '/dataforseo_labs/apple/app_intersection/live', body: [{ app_ids: parsedIds, location_name: ef.getNodeParameter('location_name', i) || null, language_name: ef.getNodeParameter('language_name', i) || null, filters: parsedFilters.length ? parsedFilters : null, order_by: parsedOrderBy.length ? parsedOrderBy : null, limit: ef.getNodeParameter('limit', i) || null, offset: ef.getNodeParameter('offset', i) || null }] }; return (0, dataForSeoRequest_1.dataForSeoRequest)(ef, params); } //# sourceMappingURL=app_store.js.map