Security News
New Python Packaging Proposal Aims to Solve Phantom Dependency Problem with SBOMs
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools oft miss.
@dailymotion/vmap
Advanced tools
Parse a VMAP XML document to Javascript object. Complies with VMAP 1.0.1 spec.
Install with npm
npm install vmap
Provide the VMAP
constructor an XML in order to have a parsed version of it.
Access VMAP
properties using the APIs documented below.
import VMAP from '@dailymotion/vmap';
// Fetch VMAP as XML
const xhr = new XMLHttpRequest();
xhr.open('GET', vmapURL);
xhr.send();
xhr.onreadystatechange = function() {
if (xhr.readyState === xhr.DONE) {
if (xhr.status === 200) {
// Get a parsed VMAP object
const vmap = new VMAP(xhr.responseXML);
}
}
};
version
: The VMAP version (should be 1.0).adBreaks
: An array of VMAPAdBreak
objects.extensions
: An array of Object
with
children
: Object
containing all this extension children and their name as the keyattribute
: Object
containing all this extension attributes and their name as the keyvalue
: Object
parsed from CDATA or as a fallback all of the text nodes of this extension concatenatedProvides information about an ad break.
timeOffset
: Represents the timing of the ad break.breakType
: Identifies whether the ad break allows "linear", "nonlinear" or "display" ads.breakId
: An optional string identifier for the ad break.repeatAfter
: An option used to distribute ad breaks equally spaced apart from one another along a linear timeline.adSource
: A VMAPAdSource
object.trackingEvents
: An array of Object
with tracking URLs
event
: The name of the event to track for the element. Can be one of breakStart, breakEnd or error.uri
: The URI of the tracker.extensions
: An array of Object
with
children
: Object
containing all this extension children and their name as the keyattribute
: Object
containing all this extension attributes and their name as the keyvalue
: Object
parsed from CDATA or as a fallback all of the text nodes of this extension concatenatedtrack(event, errorCode)
: Call the trackers for the given event with an option error code parameter for error
events.Provides the player with either an inline ad response or a reference to an ad response.
id
: Ad identifier for the ad source.allowMultipleAds
: Indicates whether a VAST ad pod or multple buffet of ads can be served into an ad break.followRedirects
: Indicates whether the video player should honor the redirects within an ad response.vastAdData
: Contains an embedded VAST response.adTagURI
: Contains a URI to the VAST.customData
: Contains custom ad data.The library is 100% written in JavaScript and the source code uses modern features like modules
, classes
, ecc... . Make sure your environment supports these features, or transpile the library when bundling your project.
We provide several pre-bundled versions of the library (see dist
directory)
A pre-bundled version of VMAP-jsis available: vmap-js.js
.
You can add the script directly to your page and access the library through the VMAP
constructor.
<script src="dist/vmap-js.js"></script>
var vmap = new VMAP(vmapXML);
A pre-bundled version for node is available too: vmap-js-node.js
.
const VMAP = require('@dailymotion/vmap')
const vmap = new VMAP(vmapXML);
Install dependencies with:
npm install
The project is bundled using Rollup. Build with:
npm run-script build
Run tests with:
npm test
FAQs
Javascript VMAP Parser
We found that @dailymotion/vmap demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
PEP 770 proposes adding SBOM support to Python packages to improve transparency and catch hidden non-Python dependencies that security tools oft miss.
Security News
Socket CEO Feross Aboukhadijeh discusses open source security challenges, including zero-day attacks and supply chain risks, on the Cyber Security Council podcast.
Security News
Research
Socket researchers uncover how threat actors weaponize Out-of-Band Application Security Testing (OAST) techniques across the npm, PyPI, and RubyGems ecosystems to exfiltrate sensitive data.