videojs / vtt.js

A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js

Home Page:http://dev.w3.org/html5/webvtt/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

The license disappeared from NPM

moenodedev opened this issue · comments

Was the license intentionally removed from NPM? Was this done by a member of your team?

Running npm update with a project that includes video.js 7.20.3 changes package-lock.json.

diff --git package-lock.json package-lock.json
--- package-lock.json
+++ package-lock.json
       "version": "0.15.4",
       "resolved": "https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.4.tgz",
       "integrity": "sha512-r6IhM325fcLb1D6pgsMkTQT1PpFdUdYZa1iqk7wJEu+QlibBwATPfPc9Bg8Jiym0GE5yP1AG2rMLu+QMVWkYtA==",
-      "license": "Apache-2.0",
       "dependencies": {
         "global": "^4.3.1"
       }

I'm not sure why the package-lock changed. The license seems to still be in the package.json of the published package see https://unpkg.com/videojs-vtt.js@0.15.4/package.json

https://registry.npmjs.org/videojs-vtt.js shows the package was modified 8 days ago on October 18.

    "time": {
        "modified": "2022-10-18T01:29:33.987Z",
        "created": "2015-12-09T22:55:06.033Z",
        "0.12.1": "2015-12-09T22:55:06.033Z",
        "0.12.2-0": "2017-02-21T20:14:06.058Z",
        "0.12.2": "2017-02-23T19:45:39.201Z",
        "0.12.3": "2017-03-22T16:02:27.411Z",
        "0.12.4": "2017-04-27T21:43:41.725Z",
        "0.12.5": "2017-08-31T20:58:04.273Z",
        "0.12.6": "2018-02-13T20:00:03.380Z",
        "0.14.0": "2018-04-10T17:52:04.015Z",
        "0.14.1": "2018-04-10T19:41:36.723Z",
        "0.15.0": "2019-11-26T18:24:54.367Z",
        "0.15.1": "2019-11-26T19:01:25.238Z",
        "0.15.2": "2019-11-26T19:13:49.346Z",
        "0.15.3": "2021-04-13T17:48:56.898Z",
        "0.15.4": "2022-08-17T16:05:36.731Z"
    },
Snaphot of https://registry.npmjs.org/videojs-vtt.js

{"_id":"videojs-vtt.js","_rev":"42-cb4d2590a7a8d6c1d0ae637490a24dce","name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","dist-tags":{"latest":"0.15.4","beta":"0.12.2-0"},"versions":{"0.12.1":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.1","repository":{"type":"git","url":"git+https://github.com/mozilla/vtt.js.git"},"homepage":"https://github.com/mozilla/vtt.js","devDependencies":{"grunt":"0.4.1","grunt-cli":"0.1.9","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-contrib-concat":"0.4.0","mocha":"1.20.1","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","underscore":"1.6.0","optimist":"0.6.1","dive":"0.3.1","async":"0.9.0","grunt-bump":"0.0.14","json-stable-stringify":"1.0.0","node-vtt":"1.1.7","text-encoding":"0.1.0","grunt-mocha-test":"0.11.0"},"main":"lib/index.js","files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/mozilla/vtt.js/blob/master/LICENSE"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"8ea664e257ec7b5c092f58ac989e3134ff536a7a","bugs":{"url":"https://github.com/mozilla/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.1","_shasum":"e313896ca8e838c1b2e16df8775c56981ae19f3a","_from":".","_npmVersion":"2.13.4","_nodeVersion":"0.10.39","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"maintainers":[{"name":"gkatsev","email":"me@gkatsev.com"}],"dist":{"shasum":"e313896ca8e838c1b2e16df8775c56981ae19f3a","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.1.tgz","integrity":"sha512-e6yi9lpoPx52sMuz5r8wb43DFLUf45vZY4gHw5EpIzXacnal8hG1ajZI/U6iBeYcb3sjznLg8kURfPAnAxfbKA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCFJp3cHi4ThyXaK7lqSdYEiR5dxv/NezuMSiowzQs1PAIhANsdX+HQ9jVJp7k7yZc/lFRrAAbmw+ca6IGYo4awV75c"}]},"directories":{}},"0.12.2-0":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.2-0","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"grunt":"0.4.1","grunt-cli":"0.1.9","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-contrib-concat":"0.4.0","mocha":"1.20.1","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","underscore":"1.6.0","optimist":"0.6.1","dive":"0.3.1","async":"0.9.0","grunt-bump":"0.0.14","json-stable-stringify":"1.0.0","node-vtt":"1.1.7","text-encoding":"0.1.0","grunt-mocha-test":"0.11.0"},"main":"lib/browser-index.js","files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"bc2b66e1af3bcb994306f605b41f20bf05414cba","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.2-0","_shasum":"cc31b081ff8a838c0296b06a6925e97c530506b9","_from":".","_npmVersion":"2.15.6","_nodeVersion":"4.4.3","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"shasum":"cc31b081ff8a838c0296b06a6925e97c530506b9","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.2-0.tgz","integrity":"sha512-QmBx+eKX8iqrpLe+ttLNBu+D62FH5UA+kPit/SZNkqDqMsSdj2zmIs9B80wgRWJV3TY19ID4ri0KR3lYxSLGww==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDdsLVGfLC85SC0/6cw5ZzQfqS+YXkd91rEL/P+gauiWQIgAiZY73vZYnNe2IUTwp6+84X4mf2gcfEccODGl3c7hjQ="}]},"maintainers":[{"name":"gkatsev","email":"me@gkatsev.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/videojs-vtt.js-0.12.2-0.tgz_1487708045142_0.098791578784585"},"directories":{}},"0.12.2":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.2","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"grunt":"0.4.1","grunt-cli":"0.1.9","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-contrib-concat":"0.4.0","mocha":"1.20.1","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","underscore":"1.6.0","optimist":"0.6.1","dive":"0.3.1","async":"0.9.0","grunt-bump":"0.0.14","json-stable-stringify":"1.0.0","node-vtt":"1.1.7","text-encoding":"0.1.0","grunt-mocha-test":"0.11.0"},"main":"lib/browser-index.js","files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"00e9847329ac7251295bb0d3d34cdd5679aa9b04","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.2","_shasum":"9e577ca6912265ed6934f79657bcd9fca336943a","_from":".","_npmVersion":"2.15.6","_nodeVersion":"4.4.3","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"shasum":"9e577ca6912265ed6934f79657bcd9fca336943a","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.2.tgz","integrity":"sha512-ciep7snMjAJfIa3RH3Ks7zLpXibWMCfI8FMc8gem4Mg0ol3YRtK0eHs6D8XKB5oRApima2S0pB8yQZQuaPE3vw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFtMvPdG8noA16PxF4VY9wVYocdLsfsaW21V0/TK186MAiEA3sU2Kkd/zIVr+PDqMrLuMBJDTI2LFZinkXg8hZ4wOSU="}]},"maintainers":[{"name":"gkatsev","email":"me@gkatsev.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/videojs-vtt.js-0.12.2.tgz_1487879138403_0.8016150200273842"},"directories":{}},"0.12.3":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.3","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"grunt":"0.4.1","grunt-cli":"0.1.9","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-contrib-concat":"0.4.0","mocha":"1.20.1","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","underscore":"1.6.0","optimist":"0.6.1","dive":"0.3.1","async":"0.9.0","grunt-bump":"0.0.14","json-stable-stringify":"1.0.0","node-vtt":"1.1.7","text-encoding":"0.1.0","grunt-mocha-test":"0.11.0"},"main":"lib/browser-index.js","files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"bbcad98cb55811d2413b3f8aa46b1cb58741fa36","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.3","_shasum":"5ec6606844544790a795e8e396e3f2ab3649a2d6","_from":".","_npmVersion":"2.15.6","_nodeVersion":"4.4.3","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"shasum":"5ec6606844544790a795e8e396e3f2ab3649a2d6","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.3.tgz","integrity":"sha512-B7pn1ZFMvbHT/QlhefLa0PL5DpdwsyuNYpYrFMrCC8LxzPe30c7zMHKOpK92DRDmrfRZX86dNQDj7i6dMdr4PQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFybTgYRZVklta7UgC9lP33EgOIF3jvCdZgbjtoCSTr+AiEA4IBFc6lPzS2p77suH+ya9iGDS4V0QbVc85caEEXZy08="}]},"maintainers":[{"name":"gkatsev","email":"me@gkatsev.com"}],"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/videojs-vtt.js-0.12.3.tgz_1490198545178_0.8099364163354039"},"directories":{}},"0.12.4":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.4","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"browserify -s vttjs . -o dist/vtt.js","postbuild":"npm run minify","minify":"grunt uglify:dist","test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"dependencies":{"global":"^4.3.1"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"3be41c69a4f1c5bddcdf4d4caf01aecac01bf293","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.4","_shasum":"38f2499e31efb3fa93590ddad4cb663275a4b161","_from":".","_npmVersion":"2.15.6","_nodeVersion":"4.4.3","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"shasum":"38f2499e31efb3fa93590ddad4cb663275a4b161","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.4.tgz","integrity":"sha512-JQ5eozH5SLOL5xI8ALb1aWf9HjcewQmOytf1gPIsFBTQlSgtSdJ8E8x0GO0ZEXVtFCaPDFiYWAhrjuTI125tBQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDMHefy94PhAr48SEWg3ABjJ9Yhi3rweJbAhOUq7AnsOAiEAi8LuhaeBR5BmJDJNEMGINSW+9qy4mj/d81HmHBWZg54="}]},"maintainers":[{"name":"gkatsev","email":"me@gkatsev.com"}],"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/videojs-vtt.js-0.12.4.tgz_1493329420871_0.9165923679247499"},"directories":{}},"0.12.5":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.5","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"dependencies":{"global":"^4.3.1"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"51cd74d4c69ddd9c7250dc2e2e442f4eacbce2c7","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.5","_shasum":"32852732741c8b4e7a4314caa2cd93646a9c2d40","_from":".","_npmVersion":"2.15.6","_nodeVersion":"4.4.3","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"shasum":"32852732741c8b4e7a4314caa2cd93646a9c2d40","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.5.tgz","integrity":"sha512-diFRZikHDqRHz278+SkcXLWA9Y7arLLs80fup/s0AkGMFt49salGIySO2u8iNHaMYZjUAloG5F5Dm4DSsSzYuQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAVOqsBSlkgXe4x3IqcwWsS5oklnyGZYyWl/DsMAMIotAiEAjpcXzIrgwLuH7mRGAxVX12y8O44H33FQBropd6waunw="}]},"maintainers":[{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@misterben.me","name":"misterben"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"okaramia@gmail.com","name":"okaramian"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"mmcclure@brightcove.com","name":"mmcclure"},{"email":"npm@heff.me","name":"heff"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js-0.12.5.tgz_1504213082894_0.0861570262350142"},"directories":{}},"0.12.6":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.12.6","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"dependencies":{"global":"^4.3.1"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"5881d5d78261a61cdb67453899d8a74034dd005f","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.12.6","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"integrity":"sha512-XFXeGBQiljnElMhwCcZst0RDbZn2n8LU7ZScXryd3a00OaZsHAjdZu/7/RdSr7Z1jHphd45FnOvOQkGK4YrWCQ==","shasum":"e078600bda899eaa6f9c3307134cd0c811947b8e","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.12.6.tgz","fileCount":15,"unpackedSize":243452,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDZ5LscEPo6+faEDGHPCAPpVWseJjsbsaJQBWR7sK2SPgIgUqlzzyQW8Vn529rSEtSXcXwefMmfICg/6W/jfAfGpog="}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"mmcclure@brightcove.com","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.12.6_1518552002426_0.687931841796571"},"_hasShrinkwrap":false},"0.14.0":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.14.0","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"dependencies":{"global":"^4.3.1"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"4b5387c78e83a85637200bd38a4e717be8ed9271","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.14.0","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"integrity":"sha512-SbCS+dpkyWVlc9XLAHTt82IQ5+AH726WVB1OPD+ZwsrRVzAhlibmOil37UPavWrI0/uJpPvwvqwlT9D/Cdb38A==","shasum":"a6f9cb57b741d185538923c6ca6bfb175f965ad1","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.14.0.tgz","fileCount":20,"unpackedSize":289811,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBwg1Wylz4xCsMdWtjvXAxfVG6pJwXR1o18nAJcl5bwgIgJp8WbC5q+dGpWjmjBT3F806HppmrmHNMMUB8XbjdHIA="}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"mmcclure@brightcove.com","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.14.0_1523382723944_0.07938341368576829"},"_hasShrinkwrap":false},"0.14.1":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification.","version":"0.14.1","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/gkatsev/vtt.js.git"},"homepage":"https://github.com/gkatsev/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"files":["dist/","lib/browser.js","lib/index.js","lib/vtt.js","lib/vttcue.js","lib/vttcue-extended.js","lib/vttregion.js","lib/vttregion-extended.js"],"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt"},"license":{"type":"Apache-2.0","url":"https://github.com/gkatsev/vtt.js/blob/master/LICENSE"},"dependencies":{"global":"^4.3.1"},"contributors":[{"name":"This is an","url":"incomplete"},{"name":"codebase which lives in this repository. If you make a contribution"},{"name":"here, you may add your name and, optionally, email address in the"},{"name":"appropriate place."},{"name":"Andreas Gal","email":"gal@mozilla.com"},{"name":"Rick Eyre","email":"rick.eyre@hotmail.com"},{"name":"David Humphrey","email":"david.humphrey@senecacollege.ca"},{"name":"Jeffrey Espiritu","email":"jeff_pro3@hotmail.com"},{"name":"Alex Kotliar","email":"alexkotliar@gmail.com"},{"name":"Ali Al Dallal","email":"ali@alicoding.com"},{"name":"Edwin Lim","email":"limed3@gmail.com"},{"name":"Michael Afidchao","email":"mdafidchao@learn.senecac.on.ca"},{"name":"Shayan Ahmad","email":"szahmad@learn.senecac.on.ca"},{"name":"Jordan Raffoul","email":"raffoul.jordan@gmail.com"},{"name":"Vince Lee","email":"vince.lee.lien@gmail.com"},{"name":"Kyle Barnhart","email":"kyle@barnhart.ca"},{"name":"Mandeep Garg","email":"mkgarg1@learn.senecac.on.ca"},{"name":"Dale Karp","email":"me@dale.io"},{"name":"Marcus Saad","email":"mv.nsaad@gmail.com"},{"name":"Cyril Concolato","email":"cyril.concolato@telecom-paristech.fr"}],"gitHead":"b0569842cf7e10659defbe1ff27b68df06c7530f","bugs":{"url":"https://github.com/gkatsev/vtt.js/issues"},"_id":"videojs-vtt.js@0.14.1","_npmVersion":"5.6.0","_nodeVersion":"8.9.4","_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"dist":{"integrity":"sha512-YxOiywx6N9t3J5nqsE5WN2Sw4CSqVe3zV+AZm2T4syOc2buNJaD6ZoexSdeszx2sHLU/RRo2r4BJAXFDQ7Qo2Q==","shasum":"da583eb1fc9c81c826a9432b706040e8dea49911","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.14.1.tgz","fileCount":15,"unpackedSize":238374,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDLLBcPtYdGbG03quaOCb1CaHK+OVJui1g4XiytWqxcQAIgGcS9qapDq4KnTljcRr0KvqhOOf55dV9GnphGyTzNisI="}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"mmcclure@brightcove.com","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.14.1_1523389296651_0.23099341478782165"},"_hasShrinkwrap":false},"0.15.0":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","version":"0.15.0","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"homepage":"https://github.com/videojs/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt"},"license":"Apache-2.0","dependencies":{"global":"^4.3.1"},"gitHead":"b50843ec1fdfcb07e6898d0d45079b3a84152308","bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"_id":"videojs-vtt.js@0.15.0","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-CdhhCEkB/mZNfE1KfmbWwXKGCpItIkqoQci3Nq6YLIAaqSOMA/aNZq1cGvBI8oQHShliz9mKsAvlfLZS+TW4uA==","shasum":"1439f04009da9853846fb25c477438c1a01ef7b9","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.0.tgz","fileCount":15,"unpackedSize":243439,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3W32CRA9TVsSAnZWagAAaowP/R6eNpWEb07lapp2izHi\nwhlFjDZphiRmRUphJKd4LP9zoSMpO5dgLWKH4o7pZNgIdd9FblBh0Mzo00Kc\nR5qchzN3dv4I/XpAMdpzT0PWfXYMx2NeLUotoEOcI4cv5+zxLqj/Hvx6fxix\nIJfKU9VfLra/BCOBiowKRotSf7+O6hUbJIHZUUMIBktWGBsyeA8R5882w/Vo\ncG8AXydYkA3rw15BT5I+wgwwsAYPUANGGzd/ybyIh1jbfe6AaAAmoP5lbWda\nOAll1a8kmApeod4PhMmAfGdGM2kCULZQrlLGcJOuKw1Iexukf4BygFu4tMIj\nfiDNt7BUbvIQETbPASM62KOnn+5BkJDpwPq7aXEriaSjU1yJIpK/+WF6bkH8\nY19mMBtcEDKRnk6VvGXNekoCWrRlvk096KyfZyvQrbWxeCwNSboKH7q6daSD\nV5AYWGKJsJ0cA6hFv+0cEotVShC5lVBv3y011qj/u7//fusx3BVF0dFl9Vzh\nP3GfQgE3p7z+tOwRPIQlO2cffexNAIN22yfQajJs2lz24rlnIZ754XbBE3cN\nTv+1khy0vLOhExD4Mf2MVYix/Pas3noe1U5szsRQHtBh9rxFrN+PsLMn3Mgg\n49VaE/a4cHdDTF57CtuPMRqvRLs9CKrUn6z1uJ71tXC/Tj2IlR5AjkJcM0cq\n7BB8\r\n=nRAI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDWEfbZZhSATofN6SaWdHU1b9HvwVxzykMYM09OBbC3NAiAPOtfipuw+zpxzKIn/MEolu5EaAm3tbixTC/QK05DpgA=="}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"matt@mmcc.io","name":"mmcc"},{"email":"npm@htbx.net","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"},{"email":"chuck.wilson+github@gmail.com","name":"squarebracket"},{"email":"tjaneczko@brightcove.com","name":"tjaneczko"}],"_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.15.0_1574792694196_0.25419243234867595"},"_hasShrinkwrap":false},"0.15.1":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","version":"0.15.1","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"homepage":"https://github.com/videojs/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt","prepublishOnly":"npm run build"},"license":"Apache-2.0","dependencies":{"global":"^4.3.1"},"gitHead":"0d70acab9a6f3b1a2e4d967c6290b8a89cb29687","bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"_id":"videojs-vtt.js@0.15.1","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-SuyhDMtfQI9mQwRitT3IgHqRCLZtebxpLp0OmNI8SgI0q36zdYSYtgJ7WFHcJzNpi9WSM6nYQy5VrCg5dHnXaw==","shasum":"2d289e8652835e386c21a0ac546798827e654a66","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.1.tgz","fileCount":15,"unpackedSize":244267,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3XaFCRA9TVsSAnZWagAA6eEP/225bfkjjCcTqeSCBHJy\nh3i+myCzFBuJJbuI7rk31UVyK5mScKqffKJzrQLxrjoEikp3HdWXa+Y0AK9y\nk8c7WwufoXGz/M5kTqFSG/64suxB/0px5Oca+j6iNOePIC6DIIwbUOQt2JgM\nDKK5g8g8be2tfTYPgwrlvKtM0uiulVmrfPxAH8jHOdwlKPLORoe3OnTzaByH\ngNHfBBXB18IIDlPgxrcztgCeNoIeuM9oEunFfU7mYKMWunenuu1BBj1/RENq\nEJM1vMG+LcTHb2gIUDF7Pt5ZeIBkoevTwNMVOD7AHW9LY4wfXSkRFxY572Gt\n7rb6tfbmP6YnelUWQDwPy7mo0Za8XgBEj79iM9rX/o2VyqvCgLhyQdT8Vv3y\nPClLCM5OxSbmnTtAxI4BdeLzh+awdAJVHdmWS7Mz403pGeVTK8g2gF1DV2CK\nI9LZUyrShRfmQb9yHtgxvgttulub0F4wAoTdmlp3t1MTMYqdyp9G56xZD8hi\np1t3WV+RzDJUZlE61SCj4+gr6/nQFjb6xtb99lL1uhhqG949CztqrvPNCDRC\nHEIptBIFOvUbBUCg4LlkcCex+us7eFDDcykYyb3hD6XIOOc96hwbzRhOZkyG\n5CYBbzVtqdWAn7yoviftw4aXvCEv86Qn1Ai4qcfWfhglY2R/ol5AyObwzrzN\nbkzH\r\n=dpkC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCW8pgrJmyfgMNr42HxeAK0NhcmPPpr3DzaaUX/Rc7KgQIhANGuhczwuPPAYENrFL0c3Z+K3f0668Ui4jnOLnWl4ll+"}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"matt@mmcc.io","name":"mmcc"},{"email":"npm@htbx.net","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"},{"email":"chuck.wilson+github@gmail.com","name":"squarebracket"},{"email":"tjaneczko@brightcove.com","name":"tjaneczko"}],"_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.15.1_1574794885104_0.017282434338968145"},"_hasShrinkwrap":false},"0.15.2":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","version":"0.15.2","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"homepage":"https://github.com/videojs/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt","prepublishOnly":"npm run build"},"license":"Apache-2.0","dependencies":{"global":"^4.3.1"},"gitHead":"fd7e67f23dd06410f335e2a580f44d982cf38a09","bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"_id":"videojs-vtt.js@0.15.2","_nodeVersion":"12.13.0","_npmVersion":"6.12.0","dist":{"integrity":"sha512-kEo4hNMvu+6KhPvVYPKwESruwhHC3oFis133LwhXHO9U7nRnx0RiJYMiqbgwjgazDEXHR6t8oGJiHM6wq5XlAw==","shasum":"a828c4ea0aac6303fa471fd69bc7586a5ba1a273","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.2.tgz","fileCount":15,"unpackedSize":246346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJd3XltCRA9TVsSAnZWagAAA9MP+gIn7cuuz62l1QTSM3WL\nGrZv9RQE8L9MkrUHYc6Ut9pTbdKm9K6e03x58sPFBdX5CshTOt7qyYOZw6IL\n76PS+PDjSJAGOWuil+rLM+jIHG530uMPUZYlHyzjPnP7W5Z+LFx9zWSuP4xs\nXntBrdopAvqLm/wsFWGT1VM4dilMEOA7gpIzdVoDFR0HyXoCNmburJ6CnEbq\nfUxzVwMFo+yVITgJ3hAPHROoF8fDhfgoMZM0oQtgWol9Ky/8kZEgdfRNF0AM\nE/FdE1MJglLlW5VcrzeOAMCk8wzYDBDk/b01cGLMJQUr57SOAhPEp4ev2T0+\nCXDbzaLnO2sIPyFO5Q5smLjIYXqqXjW65Ye7F+ao5i/Oik871cRgl0gjxt/a\nwWJi95WMFUt7y++kpRxmQZOZi3izyRmhanJ0h5Bsn7Qs6x1E6OI+UD2gGXq2\nFD5OlFVSfpDzvxoMhq+CP0plc8KbRTydr8BnURwIM08yJ8kZ3pg8ZLo11zYF\n0ipjWoLcogqDcE/n+BJ0PuriAMeJcANHIOVahmIUfY9THTr082KtusFQKCfb\n/ExbFmfnyglWnY766VykevJElePg8f+nu1XQc4+txlk2519yVi3EWRsy0DrL\nGI1YvHXJn6huR/yDmg99W/8BXPl8YE63Z40G5DuhlB46njrnAnT0y95GXnCZ\nWZbW\r\n=DqJB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCPQoIAGI4chOodrpKuEoGhh0lD2wxyqal2m6OUBPqitgIgZmYcw32+HiM1GOQRSlLT/+6fDCMG/6RWvPjjiE61aVE="}]},"maintainers":[{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"matt@mmcc.io","name":"mmcc"},{"email":"npm@htbx.net","name":"mmcclure"},{"email":"okaramia@gmail.com","name":"okaramian"},{"email":"chuck.wilson+github@gmail.com","name":"squarebracket"},{"email":"tjaneczko@brightcove.com","name":"tjaneczko"}],"_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.15.2_1574795629215_0.13932641173177718"},"_hasShrinkwrap":false},"0.15.3":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","version":"0.15.3","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"homepage":"https://github.com/videojs/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt","prepublishOnly":"npm run build"},"license":"Apache-2.0","dependencies":{"global":"^4.3.1"},"gitHead":"a6e9c976fd047e56aeb97419f95c207e69734191","bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"_id":"videojs-vtt.js@0.15.3","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-5FvVsICuMRx6Hd7H/Y9s9GDeEtYcXQWzGMS+sl4UX3t/zoHp3y+isSfIPRochnTH7h+Bh1ILyC639xy9Z6kPag==","shasum":"84260393b79487fcf195d9372f812d7fab83a993","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.3.tgz","fileCount":15,"unpackedSize":246815,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgddmJCRA9TVsSAnZWagAA06gP/RrBUD+QQhUki18ZB5K3\n+m0nIQ0yW4utnHajVhHKtAF6ZohJtxHCD06+kQaf2vU2hONycO9awi7egFTy\nAsoVZgG0oZoItPF0v8CaK+i0ysIqG+NCIzNyb5AqjnOSgRl5XCrQhxNaZZAc\nDQxKNmqUdUonVgTb7XM5lOVxDjRQ8zNh5kZJe0hsBWf9Df24nzP0ZWZDAYya\njvrm98ntp05UDOHRPP4NfSvg2tB8TRB9j8qpHD+jRbw5z196MuPFTpZdH7pE\n9IhBLHGiydlybVH1yTYv8FWHJCr0xNXGVMs19eR+W4IPY/0IPH9p49cRoeqv\nUKEDv+d0+SNzZ3Na0XBQvaaBcKvzNf9+LG5tl8XQ8bITQGb//IvxOjE4mOD9\nFK/ESPVsoBQs6CscEFCu7iZBQALh/8HpyEFTAs1uRSlN/YDS/U0A14pSE0AT\nvpZJ3oBq8hyAIkSXhPp+cqJeJVtvP6iD/hiFxQPTlArPYelG5OTwYwwT4kFb\new6rR40vwyl3+qC0dn9upKoqZ/mujETTQrW6hxjL3FkGVon+D5GuOM8d9u5O\n7Ee5E0ZjdK6HotL7i+NpdxvR0M0cUcFmBQQmWfFvBdig5dVeh4cvkPLnFTMA\n1vTmL0H8CrWq6esHUJpSQ00vxDZlkdRcXblVhj1qom//iBwweCOgADfptqbV\nM88Y\r\n=TtGD\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD0fPWkei0C+vAvVNXxvEGUgYbDGdtLzWeSYNDIpA0TEAIhAOUiRHtG2Tbo8Yw/2zgThCV8+jDjP7OXf/dHpXW6mj1r"}]},"_npmUser":{"name":"gkatsev","email":"me@gkatsev.com"},"directories":{},"maintainers":[{"name":"squarebracket","email":"chuck.wilson+github@gmail.com"},{"name":"tjaneczko","email":"tjaneczko@brightcove.com"},{"name":"gkatsev","email":"me@gkatsev.com"},{"name":"heff","email":"npm@heff.me"},{"name":"mmcclure","email":"npm@htbx.net"},{"name":"dmlap","email":"dlapalomento@gmail.com"},{"name":"misteroneill","email":"pgoneill@gmail.com"},{"name":"brandonocasey","email":"brandonocasey@gmail.com"},{"name":"forbesjo","email":"joseph.a.forbes@gmail.com"},{"name":"gesinger","email":"gesinger@gmail.com"},{"name":"imbcmdth","email":"jon.carlos.rivera@gmail.com"},{"name":"incompl","email":"gsmith@incompl.com"},{"name":"mjneil","email":"mneilweb@gmail.com"},{"name":"okaramian","email":"okaramia@gmail.com"},{"name":"lday","email":"ldayananda@brightcove.com"},{"name":"misterben","email":"npm@misterben.me"},{"name":"mmcc","email":"matt@mmcc.io"},{"name":"abarstow","email":"alexander.barstow@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.15.3_1618336136695_0.565557426354732"},"_hasShrinkwrap":false},"0.15.4":{"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"name":"videojs-vtt.js","description":"A JavaScript implementation of the WebVTT specification, forked from vtt.js for use with Video.js","version":"0.15.4","main":"lib/browser-index.js","repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"homepage":"https://github.com/videojs/vtt.js","devDependencies":{"async":"0.9.0","browserify":"^14.3.0","deumdify":"^1.2.4","difflet":"git://github.com/humphd/difflet.git#714b82706ad39d75275a886aeff637df5097626f","dive":"0.3.1","grunt":"0.4.1","grunt-bump":"0.0.14","grunt-cli":"0.1.9","grunt-contrib-concat":"0.4.0","grunt-contrib-jshint":"0.10.0","grunt-contrib-uglify":"0.5.0","grunt-mocha-test":"0.11.0","json-stable-stringify":"1.0.0","mocha":"1.20.1","node-vtt":"1.1.7","optimist":"0.6.1","text-encoding":"0.1.0","underscore":"1.6.0","watchify":"^3.9.0"},"keywords":["vtt","webvtt","track","captions","subtitles","text track"],"scripts":{"build":"npm run build-umd && npm run build-global","build-umd":"browserify -s vttjs . -o dist/vtt.js","build-global":"browserify -s vttjs -p deumdify  . -o dist/vtt.global.js","postbuild":"npm run minify","minify":"grunt uglify:dist uglify:global","test":"grunt","prepublishOnly":"npm run build"},"license":"Apache-2.0","dependencies":{"global":"^4.3.1"},"gitHead":"23d94987d655873ff51df0a766d6a31cbb69e0b7","bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"_id":"videojs-vtt.js@0.15.4","_nodeVersion":"10.24.1","_npmVersion":"6.14.12","dist":{"integrity":"sha512-r6IhM325fcLb1D6pgsMkTQT1PpFdUdYZa1iqk7wJEu+QlibBwATPfPc9Bg8Jiym0GE5yP1AG2rMLu+QMVWkYtA==","shasum":"5dc5aabcd82ba40c5595469bd855ea8230ca152c","tarball":"https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.4.tgz","fileCount":15,"unpackedSize":246885,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGknWSDwzBdpbQiileogNKNFkAFrsQYp1lVQNOlnfqoFAiEAstDPVGmle5s8ctQ1eh7ciZdungCjkVSPSxzg80+pe08="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/RHQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoEog/+Lw8sPEl50I9mjx+Nyi0P3cNQBjuUe29dLKJQxFyVqNBlAlnz\r\nUImVkZMB0NqurbXTRWXHwCncj4att8ct6sV1RT7X4M7mHLUJbBmUh90EJbQ/\r\nRvcxjxKb14tAFpolxswyCoesqoNyXjHnj4UAj2XcIDvup13MUhE56NUt2VCm\r\nhmopu1u8J2bKXPyMSQRmGsEaAfuOBAeOQQaOszRDjuCr3GjtUKqOaBhLvw1H\r\nl5KBA1ade8RrXqC2Cd0TGNr3TIH8wRGRH9eU/zvsgfFc6T4+g6BX3HH9L31n\r\n6VKhlQKVbwkN4JlY8YiN04JP97YBzHUtrCmZf2R0ZyqPDyp1XNxyEZW/iNcP\r\nGomwhbQ4hHD4tgGA8jqoFZO2p6nFY64TD+KtXslkci8irUxwsSR1ByPS3GjL\r\nvW3ksnkEMg4XsO5f4fELCmss2ExA0bcGKoablZB+WGvIZZIpZ/QuLYYhxACC\r\nWJizGPSH1qPzY1RTGwS1X/D0xGIyEEEDgeiCgGi5ctRsdtajwsD57kgI7O1X\r\nzcgqwsDihzk4pUFlB9fORFjIsOKCWhL462xStlwjF6SL1MwOI4+6n4qKJc6A\r\n4d/3k4uWmMzfM64U1OIR6s+Z1WFThFLfgELdB2ZhG2u7f182MFngAZe74cD1\r\nv0F6Vd+YCXgUJZDy7rBhQo1rfgjnjVjK8/M=\r\n=TJpO\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"misteroneill","email":"pgoneill@gmail.com"},"directories":{},"maintainers":[{"name":"squarebracket","email":"chuck.wilson+github@gmail.com"},{"name":"videojs-user","email":"videojs@gkatsev.com"},{"name":"tjaneczko","email":"tjaneczko@brightcove.com"},{"name":"gkatsev","email":"me@gkatsev.com"},{"name":"heff","email":"npm@heff.me"},{"name":"mmcclure","email":"npm@htbx.net"},{"name":"dmlap","email":"dlapalomento@gmail.com"},{"name":"misteroneill","email":"pgoneill@gmail.com"},{"name":"brandonocasey","email":"brandonocasey@gmail.com"},{"name":"forbesjo","email":"joseph.a.forbes@gmail.com"},{"name":"gesinger","email":"gesinger@gmail.com"},{"name":"imbcmdth","email":"jon.carlos.rivera@gmail.com"},{"name":"incompl","email":"gsmith@incompl.com"},{"name":"mjneil","email":"mneilweb@gmail.com"},{"name":"okaramian","email":"okaramia@gmail.com"},{"name":"lday","email":"ldayananda@brightcove.com"},{"name":"misterben","email":"npm@misterben.me"},{"name":"mmcc","email":"matt@mmcc.io"},{"name":"abarstow","email":"alexander.barstow@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/videojs-vtt.js_0.15.4_1660752336492_0.5321532156314219"},"_hasShrinkwrap":false}},"readme":"# videojs-vtt.js\n\n[![npm-version](http://img.shields.io/npm/v/videojs-vtt.js.svg)](https://www.npmjs.org/package/videojs-vtt.js) [![Dependency Status](https://david-dm.org/videojs/vtt.js.svg?theme=shields.io)](https://david-dm.org/videojs/vtt.js) [![devDependency Status](https://david-dm.org/videojs/vtt.js/dev-status.svg?theme=shields.io)](https://david-dm.org/videojs/vtt.js#info=devDependencies)\n\nImplementation of the [WebVTT](https://developer.mozilla.org/en-US/docs/HTML/WebVTT) spec in JavaScript.\n\nThis is a fork of [Mozilla's vtt.js](http://github.com/mozilla/vtt.js) (which is used for parsing and processing WebVTT files in Firefox/Gecko) with some changes that are used by [Video.js](http://github.com/videojs/video.js).\n\n## Table of Contents\n\n- [Spec Compliance](#spec-compliance)\n- [API](#api)\n  - [WebVTT.Parser](#webvttparser)\n    - [parse(data)](#parsedata)\n    - [flush()](#flush)\n    - [onregion(region)](#onregionregion)\n    - [oncue(cue)](#oncuecue)\n    - [onflush()](#onflush)\n    - [onparsingerror(error)](#onparsingerrorerror)\n    - [ontimestampmap(timestampmap)](#ontimestampmaptimestampmap)\n  - [WebVTT.convertCueToDOMTree(window, cuetext)](#webvttconvertcuetodomtreewindow-cuetext)\n  - [WebVTT.processCues(window, cues, overlay)](#webvttprocesscueswindow-cues-overlay)\n  - [ParsingError](#parsingerror)\n  - [VTTCue](#vttcue)\n    - [Extended API](#extended-api)\n      - [toJSON()](#tojson)\n      - [VTTCue.fromJSON(json)](#vttcuefromjsonjson)\n      - [VTTCue.create(options)](#vttcuecreateoptions)\n  - [VTTRegion](#vttregion)\n    - [Extended API](#extended-api-1)\n        - [VTTRegion.fromJSON(json)](#vttregionfromjsonjson)\n        - [VTTRegion.create(options)](#vttregioncreateoptions)\n- [Browser](#browser)\n  - [Building Yourself](#building-yourself)\n  - [Bower](#bower)\n  - [Usage](#usage)\n- [Node](#node)\n  - [vtt.js](#vttjs-1)\n  - [node-vtt](#node-vtt)\n- [Developing vtt.js](#developing-vttjs)\n  - [Tests](#tests)\n    - [Writing Tests](#writing-tests)\n  - [Grunt Run Task](#grunt-run-task)\n\n# Spec Compliance\n\n- [Parsing](http://dev.w3.org/html5/webvtt/#webvtt-file-format-parsing) (Completed)\n  - [File](http://dev.w3.org/html5/webvtt/#webvtt-file-parsing) (Completed)\n  - [Region](http://dev.w3.org/html5/webvtt/#webvtt-region-settings-parsing) (Completed)\n  - [Cue Timings and Settings](http://dev.w3.org/html5/webvtt/#webvtt-cue-timings-and-settings-parsing) (Completed)\n  - [WebVTT Cue Text](http://dev.w3.org/html5/webvtt/#dfn-webvtt-cue-text-parsing-rules) (Completed)\n  - [Cue DOM Construction](http://dev.w3.org/html5/webvtt/#webvtt-cue-text-dom-construction-rules) (Completed)\n- [Rendering](http://dev.w3.org/html5/webvtt/#rendering) (In Progress)\n  - [Processing Model](http://dev.w3.org/html5/webvtt/#processing-model) (In Progress) ***No VTTRegion or vertical text support***\n    - [Apply WebVTT Cue Settings](http://dev.w3.org/html5/webvtt/#dfn-apply-webvtt-cue-settings) (In Progress)\n      - Steps 1 - 11 (Completed)\n      - Step 12 (In progress)\n  - [Applying CSS Properties](http://dev.w3.org/html5/webvtt/#applying-css-properties-to-webvtt-node-objects) (Completed)\n  - [CSS Extensions](http://dev.w3.org/html5/webvtt/#css-extensions) **(Won't Implement)**\n- [WebVTT API Shim](http://dev.w3.org/html5/webvtt/#webvtt-api-for-browsers) (Completed)\n  - [VTTCue](http://dev.w3.org/html5/webvtt/#vttcue-interface) (Completed) ***Shims the TextTrackCue interface as well***\n  - [VTTRegion](http://dev.w3.org/html5/webvtt/#vttregion-interface) (Completed)\n\n## Notes\n\nOur processing model portion of the specification makes use of a custom property, `hasBeenReset`. It allows us to detect\nwhen a VTTCue is dirty, i.e. one of its properties that affects display has changed and so we need to recompute its display\nstate. This allows us to reuse a cue's display state if it has already been computed and nothing has changed to effect its\nposition.\n\n# API\n\n## WebVTT.Parser\n\nThe parser has a simple API:\n\n```javascript\nvar parser = new WebVTT.Parser(window, stringDecoder);\nparser.onregion = function(region) {};\nparser.oncue = function(cue) {};\nparser.onflush = function() {};\nparser.onparsingerror = function(e) {};\nparser.parse(moreData);\nparser.parse(moreData);\nparser.flush();\n```\n\nThe Parser constructor is passed a window object with which it will create new\nVTTCues and VTTRegions as well as an optional StringDecoder object which\nit will use to decode the data that the `parse()` function receives. For ease of\nuse, a StringDecoder is provided via `WebVTT.StringDecoder()`. If a custom\nStringDecoder object is passed in it must support the API specified by the\n[#whatwg string encoding](http://encoding.spec.whatwg.org/#api) spec.\n\n### parse(data)\n\nHands data in some format to the parser for parsing. The passed data format\nis expected to be decodable by the StringDecoder object that it has. The parser\ndecodes the data and reassembles partial data (streaming), even across line breaks.\n\n```javascript\nvar parser = new WebVTT.Parser(window, WebVTT.StringDecoder());\nparser.parse(\"WEBVTT\\n\\n\");\nparser.parse(\"00:32.500 --> 00:33.500 align:start size:50%\\n\");\nparser.parse(\"<v.loud Mary>That's awesome!\");\nparser.flush();\n```\n\n### flush()\n\nIndicates that no more data is expected and will force the parser to parse any\nunparsed data that it may have. Will also trigger [onflush](#onflush).\n\n### onregion(region)\n\nCallback that is invoked for every region that is correctly parsed. Returns a [VTTRegion](#http://dev.w3.org/html5/webvtt/#dfn-vttregion)\nobject.\n\n```js\nparser.onregion = function(region) {\n  console.log(region);\n};\n```\n\n### oncue(cue)\n\nCallback that is invoked for every cue that is fully parsed. In case of streaming parsing oncue is\ndelayed until the cue has been completely received. Returns a [VTTCue](#http://dev.w3.org/html5/webvtt/#vttcue-interface) object.\n\n```js\nparser.oncue = function(cue) {\n  console.log(cue);\n};\n```\n\n### onflush()\n\nIs invoked in response to `flush()` and after the content was parsed completely.\n\n```js\nparser.onflush = function() {\n  console.log(\"Flushed\");\n};\n```\n\n### onparsingerror(error)\n\nIs invoked when a parsing error has occurred. This means that some part of the\nWebVTT file markup is badly formed. See [ParsingError](#parsingerror) for more\ninformation.\n\n```js\nparser.onparsingerror = function(e) {\n  console.log(e);\n};\n```\n\n### ontimestampmap(timestampmap)\n\nIs invoked when an `X-TIMESTAMP-MAP` metadata header ([defined here](https://tools.ietf.org/html/draft-pantos-http-live-streaming-20#section-3.5)) is parsed. This header maps WebVTT cue timestamps to MPEG-2 (PES) timestamps in other Renditions of the Variant Stream.\n\n```js\nparser.ontimestampmap = function(timestamp) {\n  console.log('LOCAL:', timestamp.LOCAL);\n  console.log('MPEGTS:', timestamp.MPEGTS);\n};\n```\n\n## WebVTT.convertCueToDOMTree(window, cuetext)\n\nParses the cue text handed to it into a tree of DOM nodes that mirrors the internal WebVTT node structure of\nthe cue text. It uses the window object handed to it to construct new HTMLElements and returns a tree of DOM\nnodes attached to a top level div.\n\n```javascript\nvar div = WebVTT.convertCueToDOMTree(window, cuetext);\n```\n\n## WebVTT.processCues(window, cues, overlay)\n\nConverts the cuetext of the cues passed to it to DOM trees&mdash;by calling convertCueToDOMTree&mdash;and\nthen runs the processing model steps of the WebVTT specification on the divs. The processing model applies the necessary\nCSS styles to the cue divs to prepare them for display on the web page. During this process the cue divs get added\nto a block level element (overlay). The overlay should be a part of the live DOM as the algorithm will use the\ncomputed styles (only of the divs to do overlap avoidance.\n\n```javascript\nvar divs = WebVTT.processCues(window, cues, overlay);\n```\n\n## ParsingError\n\nA custom JS error object that is reported through the\n[onparsingerror](#onparsingerror) callback. It has a `name`, `code`, and\n`message` property, along with all the regular properties that come with a\nJavaScript error object.\n\n```json\n{\n  \"name\": \"ParsingError\",\n  \"code\": \"SomeCode\",\n  \"message\": \"SomeMessage\"\n}\n```\n\nThere are two error codes that can be reported back currently:\n\n- 0 BadSignature\n- 1 BadTimeStamp\n\n**Note:** Exceptions other then `ParsingError` will be thrown and not reported.\n\n## VTTCue\n\nA DOM shim for the VTTCue. See the [spec](http://dev.w3.org/html5/webvtt/#vttcue-interface)\nfor more information. Our VTTCue shim also includes properties of its abstract base class\n[TextTrackCue](http://www.whatwg.org/specs/web-apps/current-work/multipage/the-video-element.html#texttrackcue).\n\n```js\nvar cue = new window.VTTCue(0, 1, \"I'm a cue.\");\n```\n\n**Note:** Since this polyfill doesn't implement the track specification directly the `onenter`\nand `onexit` events will do nothing and do not exist on this shim.\n\n### Extended API\n\nThere is also an extended version of this shim that gives a few convenience methods\nfor converting back and forth between JSON and VTTCues. If you'd like to use these\nmethods then use `vttcue-extended.js` instead of `vttcue.js`. This isn't normally\nbuilt into the `vtt.js` distributable so you will have to build a custom distribution\ninstead of using bower.\n\n#### toJSON()\n\nConverts a cue to JSON.\n\n```js\nvar json = cue.toJSON();\n```\n\n#### VTTCue.fromJSON(json)\n\nCreate and initialize a VTTCue from JSON.\n\n```js\nvar cue = VTTCue.fromJSON(json);\n```\n\n#### VTTCue.create(options)\n\nInitializes a VTTCue from an options object where the properties in the option\nobjects are the same as the properties on the VTTCue.\n\n```js\nvar cue = VTTCue.create(options);\n```\n\n## VTTRegion\n\nA DOM shim for the VTTRegion. See the [spec](http://dev.w3.org/html5/webvtt/#vttregion-interface)\nfor more information.\n\n```js\nvar region = new window.VTTRegion(0, 1, \"I'm a region.\");\ncue.region = region;\n```\n\n### Extended API\n\nThere is also an extended version of this shim that gives a few convenience methods\nfor converting back and forth between JSON and VTTRegions. If you'd like to use these\nmethods then us `vttregion-extended.js` instead of `vttregion.js`. This isn't normally\nbuilt into the `vtt.js` distributable so you will have to build a custom distribution\ninstead of using bower.\n\n#### VTTRegion.fromJSON(json)\n\nCreates and initializes a VTTRegion from JSON.\n\n```js\nvar region = VTTRegion.fromJSON(json);\n```\n\n#### VTTRegion.create(options)\n\nCreates a VTTRegion from an options object where the properties on the options\nobject are the same as the properties on the VTTRegion.\n\n```js\nvar region = VTTRegion.create(options);\n```\n\n# Browser\n\nIn order to use the `vtt.js` in a browser, you need to get the built distribution of vtt.js. The distribution\ncontains polyfills for [TextDecoder](http://encoding.spec.whatwg.org/), [VTTCue](http://dev.w3.org/html5/webvtt/#vttcue-interface),\nand [VTTRegion](http://dev.w3.org/html5/webvtt/#vttregion-interface) since not all browsers currently\nsupport them.\n\n## Building Yourself\n\nBuilding a browser-ready version of the library is done using `grunt` (if you haven't installed\n`grunt` globally, you can run it from `./node_modules/.bin/grunt` after running `npm install`):\n\n```bash\n$ grunt build\n$ Running \"uglify:dist\" (uglify) task\n$ File \"dist/vtt.min.js\" created.\n\n$ Running \"concat:dist\" (concat) task\n$ File \"dist/vtt.js\" created.\n\n$ Done, without errors.\n```\n\nYour newly built `vtt.js` now lives in `dist/vtt.min.js`, or alternatively, `dist/vtt.js` for an\nunminified version.\n\n## Bower\n\nYou can also get the a prebuilt distribution from [Bower](http://bower.io/). Either run the shell\ncommand:\n\n```bash\n$ bower install vtt.js\n```\n\nOr include `vtt.js` as a dependency in your `bower.json` file. `vtt.js` should now\nlive in `bower_components/vtt.js/vtt.min.js`. There is also an unminified\nversion included with bower at `bower_components/vtt.js/vtt.js`.\n\n## Usage\n\nTo use `vtt.js` you can just include the script on an HTML page like so:\n\n```html\n<html>\n<head>\n  <meta charset=\"utf-8\">\n  <title>vtt.js in the browser</title>\n  <script src=\"bower_components/vtt.js/vtt.min.js\"></script>\n</head>\n<body>\n  <script>\n    var vtt = \"WEBVTT\\n\\nID\\n00:00.000 --> 00:02.000\\nText\",\n        parser = new WebVTT.Parser(window, WebVTT.StringDecoder()),\n        cues = [],\n        regions = [];\n    parser.oncue = function(cue) {\n      cues.push(cue);\n    };\n    parser.onregion = function(region) {\n      regions.push(region);\n    }\n    parser.parse(vtt);\n    parser.flush();\n\n    var div = WebVTT.convertCueToDOMTree(window, cues[0].text);\n    var divs = WebVTT.processCues(window, cues, document.getElementById(\"overlay\"));\n  </script>\n  <div id=\"overlay\" style=\"position: relative; width: 300px; height: 150px\"></div>\n</body>\n</html>\n```\n\n# Node\n\nYou have a couple of options if you'd like to run the library from Node.\n\n## vtt.js\n\n`vtt.js` is on npm. Just do:\n\n```\nnpm install vtt.js\n```\n\nRequire it and use it:\n\n```js\nvar vtt = require(\"vtt.js\"),\n    WebVTT = vtt.WebVTT,\n    VTTCue = vtt.VTTCue,\n    VTTRegion = vtt.VTTRegion;\n\nvar parser = new WebVTT.Parser(window);\nparser.parse();\n// etc\n\nvar elements = WebVTT.processCues(window, cues, overlay);\nvar element = WebVTT.convertCueToDOMTree(window, cuetext);\n\nvar cue = new VTTCue(0, 1, \"I'm a cue.\");\nvar region = new VTTRegion();\n```\n\nSee the [API](#api) for more information on how to use it.\n\n**Note:** If you use this method you will have to provide your own window object\nor a shim of one with the necessary functionality for either the parsing or processing\nportion of the spec. The only shims that are provided to you are `VTTCue` and `VTTRegion`\nwhich you can attach to your global that is passed into the various functions.\n\n## node-vtt\n\nUse [node-vtt](https://github.com/mozilla/node-vtt). Node-vtt runs `vtt.js` on a PhantomJS page\nfrom Node so it has access to a full DOM and CSS layout engine which means you can run any part\nof the library you want. See the [node-vtt](https://github.com/mozilla/node-vtt) repo for more\ninformation.\n\n# Developing vtt.js\n\nA few things to note:\n\n* When bumping the version remember to use the `grunt release` task as this will\nbump `package.json` + `bower.json` and build the `dist` files for `vtt.js` in one\ngo.\n* The [Grunt Run Task](#grunt-run-task) tool is handy for running the library without having\nto run the whole test suite or set of tests.\n\n## Tests\n\nTests are written and run using [Mocha](https://mochajs.org/) on node.js.\n\nTo run all the tests, do the following:\n\n```bash\n$ npm test\n```\n\nIf you want to run individual tests, you can install the [Mocha](https://mochajs.org/) command-line\ntool globally, and then run tests per-directory:\n\n```bash\n$ npm install -g mocha\n$ cd tests/some/sub/dir\n$ mocha --reporter spec --timeout 200000\n```\n\nSee the [usage docs](https://mochajs.org/#usage) for further usage info.\n\n### Writing Tests\n\nTests are done by comparing live parsed output to a last-known-good JSON file. The JSON files\ncan be easily generated using `vtt.js`, so you don't need to write these by hand\n(see details below about [Grunt Run Task](#grunt-run-task)).\n\n#### TestRunner\n\nThere's a prebuilt API in place for testing different parts of `vtt.js`. Simply\nrequire the [TestRunner](https://github.com/videojs/vtt.js/blob/master/tests/test-runner.js)\nmodule in the `lib` directory and start writing tests using `mocha`. See an example of a test file\n[here](https://github.com/videojs/vtt.js/blob/master/tests/cue-settings/align/test.js)\nwith its first test's WebVTT file [here](https://github.com/videojs/vtt.js/blob/master/tests/cue-settings/align/bad-align.vtt)\nand its corresponding [parsing JSON file](https://github.com/videojs/vtt.js/blob/master/tests/cue-settings/align/bad-align.json)\nand [processing JSON file](https://github.com/videojs/vtt.js/blob/master/tests/cue-settings/align/bad-align-proc.json).\nYou can also check out the [tests](https://github.com/videojs/vtt.js/tree/master/tests)\ndirectory for more examples on how to write tests.\n\n#### jsonEqual(vttFile, jsonRefFile, message, onDone)\n\nFirst parses the WebVTT file as UTF8 and compares it to the reference JSON file\nand then parses the WebVTT file as a string and compares it to the reference JSON\nfile.\n\n#### jsonEqualStreaming(vttFile, jsonRefFile, message, onDone)\n\nSimulates parsing the file while streaming by splitting the WebVTT file into\nchunks. Will simulate parsing like this `n` times for a single WebVTT file where\n`n` is the length in unicode characters of the file, so use this only on small\nfiles or else you will get a timeout failure on your test.\n\n#### jsonEqualParsing(vttFile, jsonRefFile, message, onDone)\n\nRuns `jsonEqual` and `jsonEqualStreaming` in one go.\n\n#### jsonEqualProcModel(vttFile, jsonRefFile, message, onDone)\n\nRuns the processing model over the `VTTCues` and `VTTRegions` that are returned\nfrom parsing the WebVTT file.\n\n#### jsonEqualAll(vttFile, jsonRefFile, message, onDone)\n\nRuns `jsonEqualParsing` and `jsonEqualProcModel`. Note that `jsonRefFile` should\ncontain JSON that is generated from parsing. The processing model test will compare\nits results to a JSON file located at `[vttFile]-proc.json`. Therefore, if you\nhave a WebVTT file named `basic.vtt` the JSON reference file for the processing\nmodel tests will be `basic-proc.json`.\n\n#### jsonEqualAllNoStream(vttFile, jsonRefFile, message, onDone)\n\nRuns `jsonEqual` and `jsonEqualProcModel` use this if you want to do parsing\nand processing tests, but do not want to simulate streaming because you\nhave too big of a WebVTT file.\n\n## Grunt Run Task\n\nYou can automatically generate a JSON file for a given `.vtt` file using the\n`run` Grunt task.\n\nTo get parsed JSON output from some WebVTT file do:\n\n```bash\n$ grunt run:my-vtt-file.vtt\n$ grunt run:my-vtt-file.vtt > my-json-file.json\n```\n\nTo get processed output from the WebVTT file do:\n\n```bash\n$ grunt run:my-vtt-file.vtt:p\n$ grunt run:my-vtt-file.vtt:p > my-json-file.json\n```\n\nBy passing the `c` flag you can automatically copy the output into a JSON file\nwith the same name as the WebVTT file:\n\n```bash\n$ grunt run:my-vtt-file.vtt:c\n$ grunt run:my-vtt-file.vtt:pc\n```\n\nThe parsed JSON output now lives in `my-vtt-file.json` and the processing JSON\noutput lives in `my-vtt-file-proc.json`.\n\nYou can also run it over a directory copying the output of parsing or\nprocessing each WebVTT file to a corresponding JSON file like so:\n\n```bash\n$ grunt run:my-vtt-file-directory\n$ grunt run:my-vtt-file-directory:p\n```\n\nThis is useful when you've modified how `vtt.js` works and each JSON file needs\na slight change.\n\nThe `run` task utilizes a script called `cue2json`, but\ndoes a few other things for you before each run like building a development\nbuild for `cue2json` to use. It's also a bit easier to type in the CL options\nfor the task. If you want to know more about `cue2json` you can run it directly\nlike so:\n\n```bash\n$ ./bin/cue2json.js\n$ Generate JSON test files from a reference VTT file.\n$ Usage: node ./bin/cue2json.js [options]\n$\n$ Options:\n$   -v, --vtt      Path to VTT file.\n$   -d, --dir      Path to test directory. Will recursively find all JSON files with matching VTT files and rewrite them.\n$   -c, --copy     Copies the VTT file to a JSON file with the same name.\n$   -p, --process  Generate a JSON file of the output returned from the processing model.\n```\n\n**Notes:**\n\n* `cue2json` utilizes the last development build done. This is why the Grunt `run` task is\ngood as you don't have to remember to build it yourself. If you don't build it yourself then you could\npotentially get incorrect results from it.\n* Since `cue2json` uses the actual parser to generate these JSON files there is the possibility that\nthe generated JSON will contain bugs. Therefore, always check the generated JSON files to check that the\nparser actually parsed according to spec.\n","maintainers":[{"email":"rpougatchev@brightcove.com","name":"roman-bc"},{"email":"sarah@teaandbiscuits.net","name":"essk"},{"email":"chuck.wilson+github@gmail.com","name":"squarebracket"},{"email":"videojs@gkatsev.com","name":"videojs-user"},{"email":"tjaneczko@brightcove.com","name":"tjaneczko"},{"email":"me@gkatsev.com","name":"gkatsev"},{"email":"npm@heff.me","name":"heff"},{"email":"npm@htbx.net","name":"mmcclure"},{"email":"dlapalomento@gmail.com","name":"dmlap"},{"email":"pgoneill@gmail.com","name":"misteroneill"},{"email":"brandonocasey@gmail.com","name":"brandonocasey"},{"email":"joseph.a.forbes@gmail.com","name":"forbesjo"},{"email":"gesinger@gmail.com","name":"gesinger"},{"email":"jon.carlos.rivera@gmail.com","name":"imbcmdth"},{"email":"gsmith@incompl.com","name":"incompl"},{"email":"mneilweb@gmail.com","name":"mjneil"},{"email":"okaramia@gmail.com","name":"okaramian"},{"email":"ldayananda@brightcove.com","name":"lday"},{"email":"npm@misterben.me","name":"misterben"},{"email":"matt@mmcc.io","name":"mmcc"},{"email":"alexander.barstow@gmail.com","name":"abarstow"},{"email":"hswaminathan@brightcove.com","name":"hswaminathan"}],"time":{"modified":"2022-10-18T01:29:33.987Z","created":"2015-12-09T22:55:06.033Z","0.12.1":"2015-12-09T22:55:06.033Z","0.12.2-0":"2017-02-21T20:14:06.058Z","0.12.2":"2017-02-23T19:45:39.201Z","0.12.3":"2017-03-22T16:02:27.411Z","0.12.4":"2017-04-27T21:43:41.725Z","0.12.5":"2017-08-31T20:58:04.273Z","0.12.6":"2018-02-13T20:00:03.380Z","0.14.0":"2018-04-10T17:52:04.015Z","0.14.1":"2018-04-10T19:41:36.723Z","0.15.0":"2019-11-26T18:24:54.367Z","0.15.1":"2019-11-26T19:01:25.238Z","0.15.2":"2019-11-26T19:13:49.346Z","0.15.3":"2021-04-13T17:48:56.898Z","0.15.4":"2022-08-17T16:05:36.731Z"},"homepage":"https://github.com/videojs/vtt.js","keywords":["vtt","webvtt","track","captions","subtitles","text track"],"repository":{"type":"git","url":"git+https://github.com/videojs/vtt.js.git"},"contributors":[{"name":"Gary Katsevman","email":"me@gkatsev.com"}],"author":{"name":"Andreas Gal","email":"gal@mozilla.com"},"bugs":{"url":"https://github.com/videojs/vtt.js/issues"},"license":"Apache-2.0","readmeFilename":"README.md","users":{"eterna2":true}}

Is this the correct repository for https://www.npmjs.com/package/videojs-vtt.js?

EDIT:

Yes it's the correct repository.

The readme says npm install vtt.js. The installation instructions weren't updated after forking from https://www.npmjs.com/package/vtt.js.

Screenshot 2022-10-26 at 2 05 21 AM

Everything seems to be correct on the registry. Also, installing older versions of videojs-vtt.js locally isn't adding the license to the package-lock. I would assume it's something that's changed on npm's side rather than something we changed.

Oops, I guess we never updated that piece after the fork.

Thank you for the excellent project! We're thankful for the abilities video.js and its plugins gives to our users.

It does seem like the change was done on npmjs.com. Right now we're suspicious of that type of change to just one package in the videojs org. It seems like an attacker was testing someone's access to NPM, so we're going to freeze our npm package downloads until we can investigate further.

My guess as to why it's marked as modified then is because we were updating some things related to the npm org that package is in. Other video.js related packages have the same modified timestamp.

Thank you for the confirmation. Sorry for the alarm. We don't want to distract you from the awesome work you're doing!

You're welcome. Also, worth noting that the package-lock of Video.js doesn't include a license field https://github.com/videojs/video.js/blob/main/package-lock.json#L14951-L14958

Then it could be that NPM repopulates (or removes) fields when other package info is updated.

Yeah, npm updates package-lock stuff all the time. I wouldn't worry unless the sha/urls change to unexpected values.

There's also stuff like https://socket.dev/ that should help with those kinds of issues.

I had already contacted their team to request this type of check and was about to paste the link to the package summary on their website. Hopefully Socket can detect this type of change soon.

https://socket.dev/npm/package/videojs-vtt.js/files/0.15.4/package.json#T1771-1783

Screenshot 2022-10-26 at 2 26 09 AM

That's super weird. I'm not really sure why the license is showing up as removed there. As far as I can tell, the only change that was done was that @misteroneill did the release instead of me. Though, it likely means it was done with a different npm version, which may have done something. The last change to the package-lock.json in video.js for vtt.js also didn't have a license field. videojs/video.js@a3bfeb7#diff-053150b640a7ce75eff69d1a22cae7f0f94ad64ce9a855db544dda0929316519R15245

I think the license field removal on NPM happened in the past week since we've run npm update many times since the release of videojs-vtt.js 0.15.4 in August.

That's so weird because it's definitely there in the tarball (https://registry.npmjs.org/videojs-vtt.js/-/videojs-vtt.js-0.15.4.tgz) and all versions have the license in the registry (including 0.15.4 specifically via https://registry.npmjs.org/videojs-vtt.js/0.15.4).
I wonder if we should contact npm support to see if they have some details about this.

npm/feedback#709 makes me think that the license field is managed by users and not detected or populated (or removed) by NPM.

I think there's a difference between doing something specific with the license field vs handling it different in package-lock and what not. Let me open a ticket with npm support. They should hopefully be able to help figure out if and what exactly changed on october 17/18th.

I'll try to find a public project on GitHub with videojs-vtt.js as a dependency and package-json.lock checked in.

You mean aside from video.js? 😛

Haha thanks it could have taken me hours to realize that I should be searching for video.js as the the main dependency not videojs-vtt.js.

Ok, opened a ticket with npm. I'll report on finding when I heard back from them 🤞🏻

Thanks! Hopefully they can tell us what happened and that the change was expected.

I might be wrong about what's going on.

https://github.com/collab-project/videojs-record/ has a commit from July that adds video.js 7.19.2 and the license field isn't present. That's before the latest release of videojs-vtt.js.

collab-project/videojs-record@23ed323#diff-053150b640a7ce75eff69d1a22cae7f0f94ad64ce9a855db544dda0929316519R15597
Screenshot 2022-10-26 at 3 26 00 AM

git blame in my private repository shows that the license field was added October 24 by running npm update.