UNPKG

iab-vast-parser

Version:

Parses IAB VAST tags into iab-vast-model objects.

58 lines (41 loc) 2.06 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); var _iabVastModel = require('iab-vast-model'); var _resource = require('./resource'); var _resource2 = _interopRequireDefault(_resource); var _click = require('./click'); var _click2 = _interopRequireDefault(_click); var _iconClicks = require('./icon-clicks'); var _iconClicks2 = _interopRequireDefault(_iconClicks); var _hasValue = require('../util/has-value'); var _hasValue2 = _interopRequireDefault(_hasValue); var _isNonEmptyArray = require('../util/is-non-empty-array'); var _isNonEmptyArray2 = _interopRequireDefault(_isNonEmptyArray); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } var parsePosition = function parsePosition(str, allowed) { return str == null ? str : allowed.indexOf(str) < 0 ? parseInt(str, 0) : str; }; exports.default = function ($icon) { var icon = new _iabVastModel.Icon(); icon.program = $icon.program; icon.width = $icon.width; icon.height = $icon.height; icon.xPosition = parsePosition($icon.xPosition, ['left', 'right']); icon.yPosition = parsePosition($icon.yPosition, ['top', 'bottom']); icon.duration = $icon.duration; icon.offset = $icon.offset; icon.apiFramework = $icon.apiFramework; icon.pxratio = $icon.pxratio; icon.resources = (0, _resource2.default)($icon); if ($icon.iconClicks != null && ((0, _hasValue2.default)($icon.iconClicks.iconClickThrough) || (0, _isNonEmptyArray2.default)($icon.iconClicks.iconClickTracking))) { icon.clicks = (0, _iconClicks2.default)($icon.iconClicks); } if ($icon.iconViewTracking != null) { var _icon$viewTrackings; (_icon$viewTrackings = icon.viewTrackings).push.apply(_icon$viewTrackings, _toConsumableArray($icon.iconViewTracking.filter(_hasValue2.default).map(_click2.default))); } return icon; };