UNPKG

mk9-prebid

Version:

Header Bidding Management Library

62 lines (57 loc) 1.83 kB
import { uspDataHandler } from '../src/adapterManager.js'; import { submodule } from '../src/hook.js'; import * as ajax from '../src/ajax.js' import * as utils from '../src/utils.js'; export const graphUrl = 'https://rtga.tapad.com/v1/graph'; export const tapadIdSubmodule = { name: 'tapadId', /** * decode the stored id value for passing to bid requests * @function * @returns {{tapadId: string} | undefined} */ decode(id) { return { tapadId: id }; }, /* * @function * @summary initiate Real Time Graph * @param {SubmoduleParams} [configParams] * @param {ConsentData} [consentData] * @returns {IdResponse }} */ getId(config) { const uspData = uspDataHandler.getConsentData(); if (uspData && uspData !== '1---') { return { id: undefined }; } const configParams = config.params || {}; if (configParams.companyId == null || isNaN(Number(configParams.companyId))) { utils.logMessage('Please provide a valid Company Id. Contact prebid@tapad.com for assistance.'); } return { callback: (complete) => { ajax.ajaxBuilder(10000)( `${graphUrl}?company_id=${configParams.companyId}&tapad_id_type=TAPAD_ID`, { success: (response) => { const responseJson = JSON.parse(response); if (responseJson.hasOwnProperty('tapadId')) { complete(responseJson.tapadId); } }, error: (_, e) => { if (e.status === 404) { complete(undefined); } if (e.status === 403) { utils.logMessage('Invalid Company Id. Contact prebid@tapad.com for assistance.'); } } } ); } } } } submodule('userId', tapadIdSubmodule);