@adv-ui/boros-tcf
Version:
Adevinta GDPR - Transparency and Consent Framework - API
93 lines (75 loc) • 3.6 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.TcfApiV2 = void 0;
var _ioc = require("../core/ioc/ioc");
var _PingUseCase = require("./services/ping/PingUseCase");
var _GetVendorListUseCase = require("./services/vendorlist/GetVendorListUseCase");
var _GetTCDataUseCase = require("./services/tcdata/GetTCDataUseCase");
var _AddEventListenerUseCase = require("./services/event/AddEventListenerUseCase");
var _RemoveEventListenerUseCase = require("./services/event/RemoveEventListenerUseCase");
/* eslint-disable standard/no-callback-literal */
/**
* TCF Api Facade for the Version 2
*/
var TcfApiV2 = /*#__PURE__*/function () {
/**
* @param {Object} param
* @param {PingUseCase} param.pingUseCase
* @param {GetVendorListUseCase} param.getVendorListUseCase
* @param {AddEventListenerUseCase} param.addEventListenerUseCase
* @param {RemoveEventListenerUseCase} param.removeEventListener
* @param {GetTCDataUseCase} param.getTCDataUseCase
*/
function TcfApiV2(_temp) {
var _ref = _temp === void 0 ? {} : _temp,
_ref$pingUseCase = _ref.pingUseCase,
pingUseCase = _ref$pingUseCase === void 0 ? (0, _ioc.inject)(_PingUseCase.PingUseCase) : _ref$pingUseCase,
_ref$getVendorListUse = _ref.getVendorListUseCase,
getVendorListUseCase = _ref$getVendorListUse === void 0 ? (0, _ioc.inject)(_GetVendorListUseCase.GetVendorListUseCase) : _ref$getVendorListUse,
_ref$addEventListener = _ref.addEventListenerUseCase,
addEventListenerUseCase = _ref$addEventListener === void 0 ? (0, _ioc.inject)(_AddEventListenerUseCase.AddEventListenerUseCase) : _ref$addEventListener,
_ref$removeEventListe = _ref.removeEventListenerUseCase,
removeEventListenerUseCase = _ref$removeEventListe === void 0 ? (0, _ioc.inject)(_RemoveEventListenerUseCase.RemoveEventListenerUseCase) : _ref$removeEventListe,
_ref$getTCDataUseCase = _ref.getTCDataUseCase,
getTCDataUseCase = _ref$getTCDataUseCase === void 0 ? (0, _ioc.inject)(_GetTCDataUseCase.GetTCDataUseCase) : _ref$getTCDataUseCase;
this._pingUseCase = pingUseCase;
this._getVendorListUseCase = getVendorListUseCase;
this._getTCDataUseCase = getTCDataUseCase;
this._addEventListenerUseCase = addEventListenerUseCase;
this._removeEventListenerUseCase = removeEventListenerUseCase;
}
var _proto = TcfApiV2.prototype;
_proto.getTCData = function getTCData(callback, vendorIds) {
typeof callback === 'function' && callback(this._getTCDataUseCase.execute({
vendorIds: vendorIds
}), true);
};
_proto.ping = function ping(callback) {
typeof callback === 'function' && callback(this._pingUseCase.execute(), true);
};
_proto.addEventListener = function addEventListener(callback) {
this._addEventListenerUseCase.execute({
callback: callback
});
};
_proto.removeEventListener = function removeEventListener(callback, listenerId) {
this._removeEventListenerUseCase.execute({
callback: callback,
listenerId: listenerId
});
};
_proto.getVendorList = function getVendorList(callback, vendorListVersion) {
return this._getVendorListUseCase.execute({
vendorListVersion: vendorListVersion
}).then(function (vendorList) {
return typeof callback === 'function' && callback(vendorList, true);
})["catch"](function (error) {
console.log('Error obtaining the vendor list', error);
typeof callback === 'function' && callback(null, false);
});
};
return TcfApiV2;
}();
exports.TcfApiV2 = TcfApiV2;