@ormoshe/js-video-url-parser 0.5.31 → 0.5.33

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -200,7 +200,7 @@
200
200
  };
201
201
  base.bind(new Allocine());
202
202
 
203
- var combineParams$p = util.combineParams;
203
+ var combineParams$q = util.combineParams;
204
204
  function CanalPlus() {
205
205
  this.provider = 'canalplus';
206
206
  this.defaultFormat = 'embed';
@@ -233,12 +233,12 @@
233
233
  }
234
234
  var url = 'http://player.canalplus.fr/embed/';
235
235
  params.vid = vi.id;
236
- url += combineParams$p(params);
236
+ url += combineParams$q(params);
237
237
  return url;
238
238
  };
239
239
  base.bind(new CanalPlus());
240
240
 
241
- var combineParams$o = util.combineParams;
241
+ var combineParams$p = util.combineParams;
242
242
  function Coub() {
243
243
  this.provider = 'coub';
244
244
  this.defaultFormat = 'long';
@@ -270,7 +270,7 @@
270
270
  return undefined;
271
271
  }
272
272
  var url = baseUrl + vi.id;
273
- url += combineParams$o(params);
273
+ url += combineParams$p(params);
274
274
  return url;
275
275
  };
276
276
  Coub.prototype.createLongUrl = function (vi, params) {
@@ -281,7 +281,7 @@
281
281
  };
282
282
  base.bind(new Coub());
283
283
 
284
- var combineParams$n = util.combineParams,
284
+ var combineParams$o = util.combineParams,
285
285
  getTime$5 = util.getTime;
286
286
  function Dailymotion() {
287
287
  this.provider = 'dailymotion';
@@ -323,7 +323,7 @@
323
323
  if (!vi.id || vi.mediaType !== this.mediaTypes.VIDEO) {
324
324
  return undefined;
325
325
  }
326
- return base + vi.id + combineParams$n(params);
326
+ return base + vi.id + combineParams$o(params);
327
327
  };
328
328
  Dailymotion.prototype.createShortUrl = function (vi, params) {
329
329
  return this.createUrl('https://dai.ly/', vi, params);
@@ -340,7 +340,7 @@
340
340
  };
341
341
  base.bind(new Dailymotion());
342
342
 
343
- var combineParams$m = util.combineParams;
343
+ var combineParams$n = util.combineParams;
344
344
  function Loom() {
345
345
  this.provider = 'loom';
346
346
  this.defaultFormat = 'long';
@@ -369,7 +369,7 @@
369
369
  return undefined;
370
370
  }
371
371
  var url = baseUrl + vi.id;
372
- url += combineParams$m(params);
372
+ url += combineParams$n(params);
373
373
  return url;
374
374
  };
375
375
  Loom.prototype.createLongUrl = function (vi, params) {
@@ -380,6 +380,46 @@
380
380
  };
381
381
  base.bind(new Loom());
382
382
 
383
+ var combineParams$m = util.combineParams;
384
+ function Tella() {
385
+ this.provider = 'tella';
386
+ this.defaultFormat = 'long';
387
+ this.formats = {
388
+ "long": this.createLongUrl,
389
+ embed: this.createEmbedUrl
390
+ };
391
+ this.mediaTypes = {
392
+ VIDEO: 'video'
393
+ };
394
+ }
395
+ Tella.prototype.parseUrl = function (url) {
396
+ var match = url.match(/(?:video)\/([\w-]+)/i);
397
+ return match ? match[1] : undefined;
398
+ };
399
+ Tella.prototype.parse = function (url, params) {
400
+ var result = {
401
+ mediaType: this.mediaTypes.VIDEO,
402
+ params: params,
403
+ id: this.parseUrl(url)
404
+ };
405
+ return result.id ? result : undefined;
406
+ };
407
+ Tella.prototype.createUrl = function (baseUrl, vi, params) {
408
+ if (!vi.id || vi.mediaType !== this.mediaTypes.VIDEO) {
409
+ return undefined;
410
+ }
411
+ var url = baseUrl + vi.id;
412
+ url += combineParams$m(params);
413
+ return url;
414
+ };
415
+ Tella.prototype.createLongUrl = function (vi, params) {
416
+ return this.createUrl('https://www.tella.tv/video/', vi, params);
417
+ };
418
+ Tella.prototype.createEmbedUrl = function (vi, params) {
419
+ return this.createUrl('https://www.tella.tv/video/', vi, params);
420
+ };
421
+ base.bind(new Tella());
422
+
383
423
  var combineParams$l = util.combineParams,
384
424
  getTime$4 = util.getTime;
385
425
  function Twitch() {
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).urlParser=t()}(this,(function(){"use strict";function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}var i={};i.getQueryParams=function(e){if("string"!=typeof e)return{};var t,i={},r=(e=e.split("+").join(" ")).match(/(?:[?](?:[^=]+)=(?:[^&#]*)(?:[&](?:[^=]+)=(?:[^&#]*))*(?:[#].*)?)|(?:[#].*)/);if(null===r)return{};t=r[0].substr(1).split(/[&#=]/);for(var a=0;a<t.length;a+=2)i[decodeURIComponent(t[a])]=decodeURIComponent(t[a+1]||"");return i},i.combineParams=function(e,i){if("object"!==t(e))return"";var r="",a=0,s=Object.keys(e);if(0===s.length)return"";for(s.sort(),i||(r+="?"+s[0]+"="+e[s[0]],a+=1);a<s.length;a+=1)r+="&"+s[a]+"="+e[s[a]];return r},i.getTime=function(e){return void 0===e?0:e.match(/^(\d+[smhdw]?)+$/)?function(e){var t,i=0,r={s:1,m:60,h:3600,d:86400,w:604800};t=(e=e.replace(/([smhdw])/g," $1 ").trim()).split(" ");for(var a=0;a<t.length;a+=2)i+=parseInt(t[a],10)*r[t[a+1]||"s"];return i}(e):e.match(/^(\d+:?)+$/)?function(e){for(var t=0,i=[1,60,3600,86400,604800],r=e.split(":"),a=0;a<r.length;a++)t+=parseInt(r[a],10)*i[r.length-a-1];return t}(e):0};var r=i.getQueryParams;function a(){for(var e=0,t=["parseProvider","parse","bind","create"];e<t.length;e++){var i=t[e];this[i]=this[i].bind(this)}this.plugins={}}var s=a;a.prototype.parseProvider=function(e){var t=e.match(/(?:(?:https?:)?\/\/)?(?:[^.]+\.)?(\w+)\./i);return t?t[1]:void 0},a.prototype.parse=function(e){if(void 0!==e){var t,i=this.parseProvider(e),a=this.plugins[i];if(i&&a&&a.parse)return(t=a.parse.call(a,e,r(e)))&&((t=function(e){e.params&&0===Object.keys(e.params).length&&delete e.params;return e}(t)).provider=a.provider),t}},a.prototype.bind=function(e){if(this.plugins[e.provider]=e,e.alternatives)for(var t=0;t<e.alternatives.length;t+=1)this.plugins[e.alternatives[t]]=e},a.prototype.create=function(e){if("object"===t(e)&&"object"===t(e.videoInfo)){var i=e.videoInfo,r=e.params,a=this.plugins[i.provider];return r="internal"===r?i.params:r||{},a&&(e.format=e.format||a.defaultFormat,a.formats.hasOwnProperty(e.format))?a.formats[e.format].apply(a,[i,Object.assign({},r)]):void 0}};var o=new s;function n(){this.provider="allocine",this.alternatives=[],this.defaultFormat="embed",this.formats={embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}n.prototype.parseUrl=function(e){var t=e.match(/(?:\/video\/player_gen_cmedia=)([A-Za-z0-9]+)/i);return t?t[1]:void 0},n.prototype.parse=function(e){var t={mediaType:this.mediaTypes.VIDEO,id:this.parseUrl(e)};return t.id?t:void 0},n.prototype.createEmbedUrl=function(e){if(e.id&&e.mediaType===this.mediaTypes.VIDEO)return"https://player.allocine.fr/"+e.id+".html"},o.bind(new n);var p=i.combineParams;function d(){this.provider="canalplus",this.defaultFormat="embed",this.formats={embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}d.prototype.parseParameters=function(e){return delete e.vid,e},d.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,id:t.vid};if(i.params=this.parseParameters(t),i.id)return i},d.prototype.createEmbedUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="http://player.canalplus.fr/embed/";return t.vid=e.id,i+=p(t)}},o.bind(new d);var m=i.combineParams;function l(){this.provider="coub",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}l.prototype.parseUrl=function(e){var t=e.match(/(?:embed|view)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},l.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};if(i.id)return i},l.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=m(i)}},l.prototype.createLongUrl=function(e,t){return this.createUrl("https://coub.com/view/",e,t)},l.prototype.createEmbedUrl=function(e,t){return this.createUrl("//coub.com/embed/",e,t)},o.bind(new l);var c=i.combineParams,h=i.getTime;function u(){this.provider="dailymotion",this.alternatives=["dai"],this.defaultFormat="long",this.formats={short:this.createShortUrl,long:this.createLongUrl,embed:this.createEmbedUrl,image:this.createImageUrl},this.mediaTypes={VIDEO:"video"}}u.prototype.parseParameters=function(e){return this.parseTime(e)},u.prototype.parseTime=function(e){return e.start&&(e.start=h(e.start)),e},u.prototype.parseUrl=function(e){var t=e.match(/(?:\/video|ly)\/([A-Za-z0-9]+)/i);return t?t[1]:void 0},u.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:this.parseParameters(t),id:this.parseUrl(e)};return i.id?i:void 0},u.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO)return e+t.id+c(i)},u.prototype.createShortUrl=function(e,t){return this.createUrl("https://dai.ly/",e,t)},u.prototype.createLongUrl=function(e,t){return this.createUrl("https://dailymotion.com/video/",e,t)},u.prototype.createEmbedUrl=function(e,t){return this.createUrl("https://www.dailymotion.com/embed/video/",e,t)},u.prototype.createImageUrl=function(e,t){return delete t.start,this.createUrl("https://www.dailymotion.com/thumbnail/video/",e,t)},o.bind(new u);var y=i.combineParams;function f(){this.provider="loom",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}f.prototype.parseUrl=function(e){var t=e.match(/(?:share|embed)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},f.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},f.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=y(i)}},f.prototype.createLongUrl=function(e,t){return this.createUrl("https://loom.com/share/",e,t)},f.prototype.createEmbedUrl=function(e,t){return this.createUrl("//loom.com/embed/",e,t)},o.bind(new f);var v=i.combineParams,T=i.getTime;function U(){this.provider="twitch",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",STREAM:"stream",CLIP:"clip"}}U.prototype.seperateId=function(e){return{pre:e[0],id:e.substr(1)}},U.prototype.parseChannel=function(e,t){var i=t.channel||t.utm_content||e.channel;return delete t.utm_content,delete t.channel,i},U.prototype.parseUrl=function(e,t,i){var r;return(r=e.match(/(clips\.)?twitch\.tv\/(?:(?:videos\/(\d+))|(\w+(?:-[\w\d-]+)?)(?:\/clip\/(\w+))?)/i))&&r[2]?t.id="v"+r[2]:i.video?(t.id=i.video,delete i.video):i.clip?(t.id=i.clip,t.isClip=!0,delete i.clip):r&&r[1]&&r[3]?(t.id=r[3],t.isClip=!0):r&&r[3]&&r[4]?(t.channel=r[3],t.id=r[4],t.isClip=!0):r&&r[3]&&(t.channel=r[3]),t},U.prototype.parseMediaType=function(e){var t;return e.id?e.isClip?(t=this.mediaTypes.CLIP,delete e.isClip):t=this.mediaTypes.VIDEO:e.channel&&(t=this.mediaTypes.STREAM),t},U.prototype.parseParameters=function(e){return e.t&&(e.start=T(e.t),delete e.t),e},U.prototype.parse=function(e,t){var i=this,r={};return(r=i.parseUrl(e,r,t)).channel=i.parseChannel(r,t),r.mediaType=i.parseMediaType(r),r.params=i.parseParameters(t),r.channel||r.id?r:void 0},U.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.STREAM&&e.channel)i="https://twitch.tv/"+e.channel;else if(e.mediaType===this.mediaTypes.VIDEO&&e.id){i="https://twitch.tv/videos/"+this.seperateId(e.id).id,t.start&&(t.t=t.start+"s",delete t.start)}else{if(e.mediaType!==this.mediaTypes.CLIP||!e.id)return;i=e.channel?"https://www.twitch.tv/"+e.channel+"/clip/"+e.id:"https://clips.twitch.tv/"+e.id}return i+=v(t)},U.prototype.createEmbedUrl=function(e,t){var i="https://player.twitch.tv/";if(e.mediaType===this.mediaTypes.STREAM&&e.channel)t.channel=e.channel;else if(e.mediaType===this.mediaTypes.VIDEO&&e.id)t.video=e.id,t.start&&(t.t=t.start+"s",delete t.start);else{if(e.mediaType!==this.mediaTypes.CLIP||!e.id)return;i="https://clips.twitch.tv/embed",t.clip=e.id}return i+=v(t)},o.bind(new U);var b=i.combineParams,g=i.getTime;function I(){this.provider="vimeo",this.alternatives=["vimeopro"],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}I.prototype.parseUrl=function(e){var t=e.match(/(?:\/showcase\/\d+)?(?:\/(?:channels\/[\w]+|(?:(?:album\/\d+|groups\/[\w]+)\/)?videos?))?\/(\d+)/i);return t?t[1]:void 0},I.prototype.parseHash=function(e){var t=e.match(/\/\d+\/(\w+)$/i);return t?t[1]:void 0},I.prototype.parseParameters=function(e){return e.t&&(e.start=g(e.t),delete e.t),e.h&&(e.hash=e.h,delete e.h),e},I.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:this.parseParameters(t),id:this.parseUrl(e)},r=this.parseHash(e,t);return r&&(i.params.hash=r),i.id?i:void 0},I.prototype.createUrl=function(e,t,i,r){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var a=e+t.id,s=i.start;return delete i.start,i.hash&&("embed"===r?i.h=i.hash:"long"===r&&(a+="/"+i.hash),delete i.hash),a+=b(i),s&&(a+="#t="+s),a}},I.prototype.createLongUrl=function(e,t){return this.createUrl("https://vimeo.com/",e,t,"long")},I.prototype.createEmbedUrl=function(e,t){return this.createUrl("//player.vimeo.com/video/",e,t,"embed")},o.bind(new I);var E=i.combineParams,w=i.getTime;function D(){this.provider="wistia",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl,embedjsonp:this.createEmbedJsonpUrl},this.mediaTypes={VIDEO:"video",EMBEDVIDEO:"embedvideo"}}D.prototype.parseUrl=function(e){var t=e.match(/(?:(?:medias|iframe)\/|wvideo=)([\w-]+)/);return t?t[1]:void 0},D.prototype.parseChannel=function(e){var t=e.match(/(?:(?:https?:)?\/\/)?([^.]*)\.wistia\./),i=t?t[1]:void 0;if("fast"!==i&&"content"!==i)return i},D.prototype.parseParameters=function(e,t){return e.wtime&&(e.start=w(e.wtime),delete e.wtime),e.wvideo===t.id&&delete e.wvideo,e},D.prototype.parseMediaType=function(e){return e.id&&e.channel?this.mediaTypes.VIDEO:e.id?(delete e.channel,this.mediaTypes.EMBEDVIDEO):void 0},D.prototype.parse=function(e,t){var i={id:this.parseUrl(e),channel:this.parseChannel(e)};if(i.params=this.parseParameters(t,i),i.mediaType=this.parseMediaType(i),i.id)return i},D.prototype.createUrl=function(e,t,i){return t.start&&(t.wtime=t.start,delete t.start),i+=E(t)},D.prototype.createLongUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="https://"+e.channel+".wistia.com/medias/"+e.id;return this.createUrl(e,t,i)}},D.prototype.createEmbedUrl=function(e,t){if(e.id&&(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.EMBEDVIDEO)){var i="https://fast.wistia.com/embed/iframe/"+e.id;return this.createUrl(e,t,i)}},D.prototype.createEmbedJsonpUrl=function(e){if(e.id&&(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.EMBEDVIDEO))return"https://fast.wistia.com/embed/medias/"+e.id+".jsonp"},o.bind(new D);var O=i.combineParams;function L(){this.provider="youku",this.defaultFormat="long",this.formats={embed:this.createEmbedUrl,long:this.createLongUrl,flash:this.createFlashUrl,static:this.createStaticUrl},this.mediaTypes={VIDEO:"video"}}L.prototype.parseUrl=function(e){var t=e.match(/(?:(?:embed|sid)\/|v_show\/id_|VideoIDS=)([a-zA-Z0-9]+)/);return t?t[1]:void 0},L.prototype.parseParameters=function(e){return e.VideoIDS&&delete e.VideoIDS,e},L.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,id:this.parseUrl(e),params:this.parseParameters(t)};if(i.id)return i},L.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=O(i)}},L.prototype.createEmbedUrl=function(e,t){return this.createUrl("http://player.youku.com/embed/",e,t)},L.prototype.createLongUrl=function(e,t){return this.createUrl("http://v.youku.com/v_show/id_",e,t)},L.prototype.createStaticUrl=function(e,t){return this.createUrl("http://static.youku.com/v1.0.0638/v/swf/loader.swf?VideoIDS=",e,t)},L.prototype.createFlashUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="http://player.youku.com/player.php/sid/"+e.id+"/v.swf";return i+=O(t)}},o.bind(new L);var V=i.combineParams,P=i.getTime;function A(){this.provider="youtube",this.alternatives=["youtu","ytimg"],this.defaultFormat="long",this.formats={short:this.createShortUrl,long:this.createLongUrl,embed:this.createEmbedUrl,shortImage:this.createShortImageUrl,longImage:this.createLongImageUrl},this.imageQualities={0:"0",1:"1",2:"2",3:"3",DEFAULT:"default",HQDEFAULT:"hqdefault",SDDEFAULT:"sddefault",MQDEFAULT:"mqdefault",MAXRESDEFAULT:"maxresdefault"},this.defaultImageQuality=this.imageQualities.HQDEFAULT,this.mediaTypes={VIDEO:"video",PLAYLIST:"playlist",SHARE:"share",CHANNEL:"channel"}}A.prototype.parseVideoUrl=function(e){var t=e.match(/(?:(?:v|vi|be|videos|shorts|embed|live)\/(?!videoseries)|(?:v|ci)=)([\w-]{11})/i);return t?t[1]:void 0},A.prototype.parseChannelUrl=function(e){var t=e.match(/\/channel\/([\w-]+)/);return t?{id:t[1],mediaType:this.mediaTypes.CHANNEL}:(t=e.match(/\/(?:c|user)\/([\w-]+)/))?{name:t[1],mediaType:this.mediaTypes.CHANNEL}:void 0},A.prototype.parseParameters=function(e,t){return(e.start||e.t)&&(e.start=P(e.start||e.t),delete e.t),e.v===t.id&&delete e.v,e.list===t.id&&delete e.list,e},A.prototype.parseMediaType=function(e){if(e.params.list&&(e.list=e.params.list,delete e.params.list),e.id&&!e.params.ci)e.mediaType=this.mediaTypes.VIDEO;else if(e.list)delete e.id,e.mediaType=this.mediaTypes.PLAYLIST;else{if(!e.params.ci)return;delete e.params.ci,e.mediaType=this.mediaTypes.SHARE}return e},A.prototype.parse=function(e,t){var i=this.parseChannelUrl(e);if(i)return i;var r={params:t,id:this.parseVideoUrl(e)};return r.params=this.parseParameters(t,r),r=this.parseMediaType(r)},A.prototype.createShortUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="https://youtu.be/"+e.id;return t.start&&(i+="#t="+t.start),i}},A.prototype.createLongUrl=function(e,t){var i="",r=t.start;if(delete t.start,e.mediaType===this.mediaTypes.CHANNEL)if(e.id)i+="https://www.youtube.com/channel/"+e.id;else{if(!e.name)return;i+="https://www.youtube.com/c/"+e.name}else if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list)t.feature="share",i+="https://www.youtube.com/playlist";else if(e.mediaType===this.mediaTypes.VIDEO&&e.id)t.v=e.id,i+="https://www.youtube.com/watch";else{if(e.mediaType!==this.mediaTypes.SHARE||!e.id)return;t.ci=e.id,i+="https://www.youtube.com/shared"}return e.list&&(t.list=e.list),i+=V(t),e.mediaType!==this.mediaTypes.PLAYLIST&&r&&(i+="#t="+r),i},A.prototype.createEmbedUrl=function(e,t){var i="https://www.youtube.com/embed";if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list)t.listType="playlist";else{if(e.mediaType!==this.mediaTypes.VIDEO||!e.id)return;i+="/"+e.id,"1"===t.loop&&(t.playlist=e.id)}return e.list&&(t.list=e.list),i+=V(t)},A.prototype.createImageUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO)return e+t.id+"/"+(i.imageQuality||this.defaultImageQuality)+".jpg"},A.prototype.createShortImageUrl=function(e,t){return this.createImageUrl("https://i.ytimg.com/vi/",e,t)},A.prototype.createLongImageUrl=function(e,t){return this.createImageUrl("https://img.youtube.com/vi/",e,t)},o.bind(new A);var S=i.combineParams,C=i.getTime;function F(){this.provider="soundcloud",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={TRACK:"track",PLAYLIST:"playlist",APITRACK:"apitrack",APIPLAYLIST:"apiplaylist"}}F.prototype.parseUrl=function(e,t){var i=e.match(/(?:m\.)?soundcloud\.com\/(?:([\w-]+)\/(sets\/)?)([\w-]+)/i);return i?(t.channel=i[1],"playlists"===i[1]||i[2]?t.list=i[3]:t.id=i[3],t):t},F.prototype.parseParameters=function(e){return e.t&&(e.start=C(e.t),delete e.t),e},F.prototype.parseMediaType=function(e){return e.id&&("tracks"===e.channel?(delete e.channel,delete e.params.url,e.mediaType=this.mediaTypes.APITRACK):e.mediaType=this.mediaTypes.TRACK),e.list&&("playlists"===e.channel?(delete e.channel,delete e.params.url,e.mediaType=this.mediaTypes.APIPLAYLIST):e.mediaType=this.mediaTypes.PLAYLIST),e},F.prototype.parse=function(e,t){var i={};if((i=this.parseUrl(e,i)).params=this.parseParameters(t),(i=this.parseMediaType(i)).id||i.list)return i},F.prototype.createLongUrl=function(e,t){var i="",r=t.start;if(delete t.start,e.mediaType===this.mediaTypes.TRACK&&e.id&&e.channel)i="https://soundcloud.com/"+e.channel+"/"+e.id;else if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list&&e.channel)i="https://soundcloud.com/"+e.channel+"/sets/"+e.list;else if(e.mediaType===this.mediaTypes.APITRACK&&e.id)i="https://api.soundcloud.com/tracks/"+e.id;else{if(e.mediaType!==this.mediaTypes.APIPLAYLIST||!e.list)return;i="https://api.soundcloud.com/playlists/"+e.list}return i+=S(t),r&&(i+="#t="+r),i},F.prototype.createEmbedUrl=function(e,t){var i="https://w.soundcloud.com/player/";if(delete t.start,e.mediaType===this.mediaTypes.APITRACK&&e.id)t.url="https%3A//api.soundcloud.com/tracks/"+e.id;else{if(e.mediaType!==this.mediaTypes.APIPLAYLIST||!e.list)return;t.url="https%3A//api.soundcloud.com/playlists/"+e.list}return i+=S(t)},o.bind(new F);var M=i.combineParams;function k(){this.provider="teachertube",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",AUDIO:"audio",DOCUMENT:"document",CHANNEL:"channel",COLLECTION:"collection",GROUP:"group"}}k.prototype.parse=function(e,t){var i={};i.list=this.parsePlaylist(t),i.params=t;var r=e.match(/\/(audio|video|document|user\/channel|collection|group)\/(?:[\w-]+-)?(\w+)/);if(r)return i.mediaType=this.parseMediaType(r[1]),i.id=r[2],i},k.prototype.parsePlaylist=function(e){if(e["playlist-id"]){var t=e["playlist-id"];return delete e["playlist-id"],t}},k.prototype.parseMediaType=function(e){switch(e){case"audio":return this.mediaTypes.AUDIO;case"video":return this.mediaTypes.VIDEO;case"document":return this.mediaTypes.DOCUMENT;case"user/channel":return this.mediaTypes.CHANNEL;case"collection":return this.mediaTypes.COLLECTION;case"group":return this.mediaTypes.GROUP}},k.prototype.createLongUrl=function(e,t){if(e.id){var i="https://www.teachertube.com/";return e.list&&(t["playlist-id"]=e.list),e.mediaType===this.mediaTypes.CHANNEL?i+="user/channel/":i+=e.mediaType+"/",i+=e.id,i+=M(t)}},k.prototype.createEmbedUrl=function(e,t){if(e.id){var i="https://www.teachertube.com/embed/";if(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.AUDIO)return i+=e.mediaType+"/"+e.id,i+=M(t)}},o.bind(new k);var R=i.combineParams;function N(){this.provider="tiktok",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}N.prototype.parse=function(e,t){var i={params:t,mediaType:this.mediaTypes.VIDEO},r=e.match(/@([^/]+)\/video\/(\d{19})/);if(r)return i.channel=r[1],i.id=r[2],i},N.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.VIDEO&&e.id&&e.channel)return i+="https://www.tiktok.com/@".concat(e.channel,"/video/").concat(e.id),i+=R(t)},o.bind(new N);var Y=i.combineParams;function H(){this.provider="voomly",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}H.prototype.parseUrl=function(e){var t=e.match(/(?:v|embed)\/([\w-]+)/i);return t?t[1]:void 0},H.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},H.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=Y(i)}},H.prototype.createLongUrl=function(e,t){return this.createUrl("https://share.voomly.com/v/",e,t)},o.bind(new H);var j=i.combineParams;function _(){this.provider="spotlightr",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}_.prototype.parseUrl=function(e){var t=e.match(/(?:watch|embed)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},_.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},_.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=j(i)}},_.prototype.createLongUrl=function(e,t){return this.createUrl("https://videos.spotlightr.com/watch/",e,t)},o.bind(new _);var Q=i.combineParams;function z(){this.provider="bunny",this.alternatives=["bunnycdn","mediadelivery"],this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}z.prototype.parse=function(e,t){var i=e.match(/(?:play|embed)\/([a-zA-Z\d]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},z.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=Q(i)}},z.prototype.createLongUrl=function(e,t){return this.createUrl("https://iframe.mediadelivery.net/embed/",e,t)},o.bind(new z);var Z=i.combineParams;function K(){this.provider="canva",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}K.prototype.parse=function(e,t){var i=e.match(/\/design\/(.+)\/watch/);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},K.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id+"/watch";return r+=Z(i)}},K.prototype.createLongUrl=function(e,t){return this.createUrl("https://www.canva.com/design/",e,t)},o.bind(new K);var x=i.combineParams;function B(){this.provider="descript",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}B.prototype.parse=function(e,t){var i=e.match(/(?:view|embed)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},B.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=x(i)}},B.prototype.createLongUrl=function(e,t){return this.createUrl("https://share.descript.com/embed/",e,t)},o.bind(new B);var $=i.combineParams;function q(){this.provider="ted",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",PLAYLIST:"playlist"}}q.prototype.parseUrl=function(e,t){var i=e.match(/\/(talks|playlists\/(\d+))\/([\w-]+)/i),r=i?i[1]:void 0;return r?(t.channel=r.split("/")[0],t.id=i[3],"playlists"===t.channel&&(t.list=i[2]),t):t},q.prototype.parseMediaType=function(e){return e.id&&"playlists"===e.channel&&(delete e.channel,e.mediaType=this.mediaTypes.PLAYLIST),e.id&&"talks"===e.channel&&(delete e.channel,e.mediaType=this.mediaTypes.VIDEO),e},q.prototype.parse=function(e,t){var i={params:t};if(i=this.parseUrl(e,i),(i=this.parseMediaType(i)).id)return i},q.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.VIDEO&&e.id)i+="https://ted.com/talks/"+e.id;else{if(e.mediaType!==this.mediaTypes.PLAYLIST||!e.id)return;i+="https://ted.com/playlists/"+e.list+"/"+e.id}return i+=$(t)},q.prototype.createEmbedUrl=function(e,t){var i="https://embed.ted.com/";if(e.mediaType===this.mediaTypes.PLAYLIST&&e.id)i+="playlists/"+e.list+"/"+e.id;else{if(e.mediaType!==this.mediaTypes.VIDEO||!e.id)return;i+="talks/"+e.id}return i+=$(t)},o.bind(new q);var G=i.combineParams;function J(){this.provider="facebook",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,watch:this.createWatchUrl},this.mediaTypes={VIDEO:"video"}}J.prototype.parse=function(e,t){var i={params:t,mediaType:this.mediaTypes.VIDEO},r=e.match(/(?:\/(\d+))?\/videos(?:\/.*?)?\/(\d+)/i);if(r&&(r[1]&&(i.pageId=r[1]),i.id=r[2]),t.v&&!i.id&&(i.id=t.v,delete t.v,i.params=t),i.id)return i},J.prototype.createWatchUrl=function(e,t){var i="https://facebook.com/watch/";if(e.mediaType===this.mediaTypes.VIDEO&&e.id)return t={v:e.id},i+=G(t)},J.prototype.createLongUrl=function(e,t){var i="https://facebook.com/";if(e.pageId&&(i+=e.pageId,e.mediaType===this.mediaTypes.VIDEO&&e.id))return i+="/videos/"+e.id,i+=G(t)},o.bind(new J);var W=i.combineParams;function X(){this.provider="bigcommand",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}X.prototype.parse=function(e,t){var i=e.match(/(?:watch)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},X.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=W(i)}},X.prototype.createLongUrl=function(e,t){return this.createUrl("https://adilo.bigcommand.com/watch/",e,t)},o.bind(new X);var ee=i.combineParams;function te(){this.provider="brightcove",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}te.prototype.parse=function(e,t){var i=e.match(/(\d+)\/(\w+)_(\w+)+\/index.html\?videoId=(\d+)/);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],player:i[2],embed:i[3],id:i[4]};return r.id?r:void 0}},te.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.player+"_"+t.embed+"/index.html";return r+=ee(i)}},te.prototype.createLongUrl=function(e,t){return this.createUrl("https://players.brightcove.net/",e,t)},o.bind(new te);var ie=i.combineParams;function re(){this.provider="google",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}re.prototype.parseUrl=function(e){var t=e.match(/\/d\/([\w-]+)/);return t?t[1]:void 0},re.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},re.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id+"/preview";return r+=ie(i)}},re.prototype.createLongUrl=function(e,t){return this.createUrl("https://drive.google.com/file/d/",e,t)},o.bind(new re);var ae=i.combineParams;function se(){this.provider="groove",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}se.prototype.parse=function(e,t){var i=e.match(/(?:videopage)\/([\w-]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},se.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=ae(i)}},se.prototype.createLongUrl=function(e,t){return this.createUrl("https://app.groove.cm/groovevideo/videopage/",e,t)},o.bind(new se);var oe=i.combineParams;function ne(){this.provider="streamable",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}ne.prototype.parseUrl=function(e){var t=e.match(/com\/(?:streamable\/)?([\w-]+)/);return t?t[1]:void 0},ne.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},ne.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=oe(i)}},ne.prototype.createLongUrl=function(e,t){return this.createUrl("https://streamable.com/",e,t)},o.bind(new ne);var pe=i.combineParams;function de(){this.provider="searchie",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}de.prototype.parseUrl=function(e){var t=e.match(/(?:watch)\/([\w-]+)/i);return t?t[1]:void 0},de.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},de.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=pe(i)}},de.prototype.createLongUrl=function(e,t){return this.createUrl("https://app.searchie.io/watch/",e,t)},o.bind(new de);var me=i.combineParams;function le(){this.provider="tevello",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}return le.prototype.parse=function(e,t){var i=e.match(/\/([a-zA-Z\d]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},le.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=me(i)}},le.prototype.createLongUrl=function(e,t){return this.createUrl("https://video.tevello.com/",e,t)},o.bind(new le),e(o)}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).urlParser=t()}(this,(function(){"use strict";function e(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function t(e){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},t(e)}var i={};i.getQueryParams=function(e){if("string"!=typeof e)return{};var t,i={},r=(e=e.split("+").join(" ")).match(/(?:[?](?:[^=]+)=(?:[^&#]*)(?:[&](?:[^=]+)=(?:[^&#]*))*(?:[#].*)?)|(?:[#].*)/);if(null===r)return{};t=r[0].substr(1).split(/[&#=]/);for(var a=0;a<t.length;a+=2)i[decodeURIComponent(t[a])]=decodeURIComponent(t[a+1]||"");return i},i.combineParams=function(e,i){if("object"!==t(e))return"";var r="",a=0,s=Object.keys(e);if(0===s.length)return"";for(s.sort(),i||(r+="?"+s[0]+"="+e[s[0]],a+=1);a<s.length;a+=1)r+="&"+s[a]+"="+e[s[a]];return r},i.getTime=function(e){return void 0===e?0:e.match(/^(\d+[smhdw]?)+$/)?function(e){var t,i=0,r={s:1,m:60,h:3600,d:86400,w:604800};t=(e=e.replace(/([smhdw])/g," $1 ").trim()).split(" ");for(var a=0;a<t.length;a+=2)i+=parseInt(t[a],10)*r[t[a+1]||"s"];return i}(e):e.match(/^(\d+:?)+$/)?function(e){for(var t=0,i=[1,60,3600,86400,604800],r=e.split(":"),a=0;a<r.length;a++)t+=parseInt(r[a],10)*i[r.length-a-1];return t}(e):0};var r=i.getQueryParams;function a(){for(var e=0,t=["parseProvider","parse","bind","create"];e<t.length;e++){var i=t[e];this[i]=this[i].bind(this)}this.plugins={}}var s=a;a.prototype.parseProvider=function(e){var t=e.match(/(?:(?:https?:)?\/\/)?(?:[^.]+\.)?(\w+)\./i);return t?t[1]:void 0},a.prototype.parse=function(e){if(void 0!==e){var t,i=this.parseProvider(e),a=this.plugins[i];if(i&&a&&a.parse)return(t=a.parse.call(a,e,r(e)))&&((t=function(e){e.params&&0===Object.keys(e.params).length&&delete e.params;return e}(t)).provider=a.provider),t}},a.prototype.bind=function(e){if(this.plugins[e.provider]=e,e.alternatives)for(var t=0;t<e.alternatives.length;t+=1)this.plugins[e.alternatives[t]]=e},a.prototype.create=function(e){if("object"===t(e)&&"object"===t(e.videoInfo)){var i=e.videoInfo,r=e.params,a=this.plugins[i.provider];return r="internal"===r?i.params:r||{},a&&(e.format=e.format||a.defaultFormat,a.formats.hasOwnProperty(e.format))?a.formats[e.format].apply(a,[i,Object.assign({},r)]):void 0}};var o=new s;function n(){this.provider="allocine",this.alternatives=[],this.defaultFormat="embed",this.formats={embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}n.prototype.parseUrl=function(e){var t=e.match(/(?:\/video\/player_gen_cmedia=)([A-Za-z0-9]+)/i);return t?t[1]:void 0},n.prototype.parse=function(e){var t={mediaType:this.mediaTypes.VIDEO,id:this.parseUrl(e)};return t.id?t:void 0},n.prototype.createEmbedUrl=function(e){if(e.id&&e.mediaType===this.mediaTypes.VIDEO)return"https://player.allocine.fr/"+e.id+".html"},o.bind(new n);var p=i.combineParams;function d(){this.provider="canalplus",this.defaultFormat="embed",this.formats={embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}d.prototype.parseParameters=function(e){return delete e.vid,e},d.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,id:t.vid};if(i.params=this.parseParameters(t),i.id)return i},d.prototype.createEmbedUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="http://player.canalplus.fr/embed/";return t.vid=e.id,i+=p(t)}},o.bind(new d);var m=i.combineParams;function l(){this.provider="coub",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}l.prototype.parseUrl=function(e){var t=e.match(/(?:embed|view)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},l.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};if(i.id)return i},l.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=m(i)}},l.prototype.createLongUrl=function(e,t){return this.createUrl("https://coub.com/view/",e,t)},l.prototype.createEmbedUrl=function(e,t){return this.createUrl("//coub.com/embed/",e,t)},o.bind(new l);var c=i.combineParams,h=i.getTime;function u(){this.provider="dailymotion",this.alternatives=["dai"],this.defaultFormat="long",this.formats={short:this.createShortUrl,long:this.createLongUrl,embed:this.createEmbedUrl,image:this.createImageUrl},this.mediaTypes={VIDEO:"video"}}u.prototype.parseParameters=function(e){return this.parseTime(e)},u.prototype.parseTime=function(e){return e.start&&(e.start=h(e.start)),e},u.prototype.parseUrl=function(e){var t=e.match(/(?:\/video|ly)\/([A-Za-z0-9]+)/i);return t?t[1]:void 0},u.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:this.parseParameters(t),id:this.parseUrl(e)};return i.id?i:void 0},u.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO)return e+t.id+c(i)},u.prototype.createShortUrl=function(e,t){return this.createUrl("https://dai.ly/",e,t)},u.prototype.createLongUrl=function(e,t){return this.createUrl("https://dailymotion.com/video/",e,t)},u.prototype.createEmbedUrl=function(e,t){return this.createUrl("https://www.dailymotion.com/embed/video/",e,t)},u.prototype.createImageUrl=function(e,t){return delete t.start,this.createUrl("https://www.dailymotion.com/thumbnail/video/",e,t)},o.bind(new u);var y=i.combineParams;function f(){this.provider="loom",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}f.prototype.parseUrl=function(e){var t=e.match(/(?:share|embed)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},f.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},f.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=y(i)}},f.prototype.createLongUrl=function(e,t){return this.createUrl("https://loom.com/share/",e,t)},f.prototype.createEmbedUrl=function(e,t){return this.createUrl("//loom.com/embed/",e,t)},o.bind(new f);var v=i.combineParams;function T(){this.provider="tella",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}T.prototype.parseUrl=function(e){var t=e.match(/(?:video)\/([\w-]+)/i);return t?t[1]:void 0},T.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},T.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=v(i)}},T.prototype.createLongUrl=function(e,t){return this.createUrl("https://www.tella.tv/video/",e,t)},T.prototype.createEmbedUrl=function(e,t){return this.createUrl("https://www.tella.tv/video/",e,t)},o.bind(new T);var U=i.combineParams,b=i.getTime;function g(){this.provider="twitch",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",STREAM:"stream",CLIP:"clip"}}g.prototype.seperateId=function(e){return{pre:e[0],id:e.substr(1)}},g.prototype.parseChannel=function(e,t){var i=t.channel||t.utm_content||e.channel;return delete t.utm_content,delete t.channel,i},g.prototype.parseUrl=function(e,t,i){var r;return(r=e.match(/(clips\.)?twitch\.tv\/(?:(?:videos\/(\d+))|(\w+(?:-[\w\d-]+)?)(?:\/clip\/(\w+))?)/i))&&r[2]?t.id="v"+r[2]:i.video?(t.id=i.video,delete i.video):i.clip?(t.id=i.clip,t.isClip=!0,delete i.clip):r&&r[1]&&r[3]?(t.id=r[3],t.isClip=!0):r&&r[3]&&r[4]?(t.channel=r[3],t.id=r[4],t.isClip=!0):r&&r[3]&&(t.channel=r[3]),t},g.prototype.parseMediaType=function(e){var t;return e.id?e.isClip?(t=this.mediaTypes.CLIP,delete e.isClip):t=this.mediaTypes.VIDEO:e.channel&&(t=this.mediaTypes.STREAM),t},g.prototype.parseParameters=function(e){return e.t&&(e.start=b(e.t),delete e.t),e},g.prototype.parse=function(e,t){var i=this,r={};return(r=i.parseUrl(e,r,t)).channel=i.parseChannel(r,t),r.mediaType=i.parseMediaType(r),r.params=i.parseParameters(t),r.channel||r.id?r:void 0},g.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.STREAM&&e.channel)i="https://twitch.tv/"+e.channel;else if(e.mediaType===this.mediaTypes.VIDEO&&e.id){i="https://twitch.tv/videos/"+this.seperateId(e.id).id,t.start&&(t.t=t.start+"s",delete t.start)}else{if(e.mediaType!==this.mediaTypes.CLIP||!e.id)return;i=e.channel?"https://www.twitch.tv/"+e.channel+"/clip/"+e.id:"https://clips.twitch.tv/"+e.id}return i+=U(t)},g.prototype.createEmbedUrl=function(e,t){var i="https://player.twitch.tv/";if(e.mediaType===this.mediaTypes.STREAM&&e.channel)t.channel=e.channel;else if(e.mediaType===this.mediaTypes.VIDEO&&e.id)t.video=e.id,t.start&&(t.t=t.start+"s",delete t.start);else{if(e.mediaType!==this.mediaTypes.CLIP||!e.id)return;i="https://clips.twitch.tv/embed",t.clip=e.id}return i+=U(t)},o.bind(new g);var E=i.combineParams,I=i.getTime;function w(){this.provider="vimeo",this.alternatives=["vimeopro"],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video"}}w.prototype.parseUrl=function(e){var t=e.match(/(?:\/showcase\/\d+)?(?:\/(?:channels\/[\w]+|(?:(?:album\/\d+|groups\/[\w]+)\/)?videos?))?\/(\d+)/i);return t?t[1]:void 0},w.prototype.parseHash=function(e){var t=e.match(/\/\d+\/(\w+)$/i);return t?t[1]:void 0},w.prototype.parseParameters=function(e){return e.t&&(e.start=I(e.t),delete e.t),e.h&&(e.hash=e.h,delete e.h),e},w.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:this.parseParameters(t),id:this.parseUrl(e)},r=this.parseHash(e,t);return r&&(i.params.hash=r),i.id?i:void 0},w.prototype.createUrl=function(e,t,i,r){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var a=e+t.id,s=i.start;return delete i.start,i.hash&&("embed"===r?i.h=i.hash:"long"===r&&(a+="/"+i.hash),delete i.hash),a+=E(i),s&&(a+="#t="+s),a}},w.prototype.createLongUrl=function(e,t){return this.createUrl("https://vimeo.com/",e,t,"long")},w.prototype.createEmbedUrl=function(e,t){return this.createUrl("//player.vimeo.com/video/",e,t,"embed")},o.bind(new w);var D=i.combineParams,O=i.getTime;function L(){this.provider="wistia",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl,embedjsonp:this.createEmbedJsonpUrl},this.mediaTypes={VIDEO:"video",EMBEDVIDEO:"embedvideo"}}L.prototype.parseUrl=function(e){var t=e.match(/(?:(?:medias|iframe)\/|wvideo=)([\w-]+)/);return t?t[1]:void 0},L.prototype.parseChannel=function(e){var t=e.match(/(?:(?:https?:)?\/\/)?([^.]*)\.wistia\./),i=t?t[1]:void 0;if("fast"!==i&&"content"!==i)return i},L.prototype.parseParameters=function(e,t){return e.wtime&&(e.start=O(e.wtime),delete e.wtime),e.wvideo===t.id&&delete e.wvideo,e},L.prototype.parseMediaType=function(e){return e.id&&e.channel?this.mediaTypes.VIDEO:e.id?(delete e.channel,this.mediaTypes.EMBEDVIDEO):void 0},L.prototype.parse=function(e,t){var i={id:this.parseUrl(e),channel:this.parseChannel(e)};if(i.params=this.parseParameters(t,i),i.mediaType=this.parseMediaType(i),i.id)return i},L.prototype.createUrl=function(e,t,i){return t.start&&(t.wtime=t.start,delete t.start),i+=D(t)},L.prototype.createLongUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="https://"+e.channel+".wistia.com/medias/"+e.id;return this.createUrl(e,t,i)}},L.prototype.createEmbedUrl=function(e,t){if(e.id&&(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.EMBEDVIDEO)){var i="https://fast.wistia.com/embed/iframe/"+e.id;return this.createUrl(e,t,i)}},L.prototype.createEmbedJsonpUrl=function(e){if(e.id&&(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.EMBEDVIDEO))return"https://fast.wistia.com/embed/medias/"+e.id+".jsonp"},o.bind(new L);var V=i.combineParams;function P(){this.provider="youku",this.defaultFormat="long",this.formats={embed:this.createEmbedUrl,long:this.createLongUrl,flash:this.createFlashUrl,static:this.createStaticUrl},this.mediaTypes={VIDEO:"video"}}P.prototype.parseUrl=function(e){var t=e.match(/(?:(?:embed|sid)\/|v_show\/id_|VideoIDS=)([a-zA-Z0-9]+)/);return t?t[1]:void 0},P.prototype.parseParameters=function(e){return e.VideoIDS&&delete e.VideoIDS,e},P.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,id:this.parseUrl(e),params:this.parseParameters(t)};if(i.id)return i},P.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=V(i)}},P.prototype.createEmbedUrl=function(e,t){return this.createUrl("http://player.youku.com/embed/",e,t)},P.prototype.createLongUrl=function(e,t){return this.createUrl("http://v.youku.com/v_show/id_",e,t)},P.prototype.createStaticUrl=function(e,t){return this.createUrl("http://static.youku.com/v1.0.0638/v/swf/loader.swf?VideoIDS=",e,t)},P.prototype.createFlashUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="http://player.youku.com/player.php/sid/"+e.id+"/v.swf";return i+=V(t)}},o.bind(new P);var A=i.combineParams,S=i.getTime;function C(){this.provider="youtube",this.alternatives=["youtu","ytimg"],this.defaultFormat="long",this.formats={short:this.createShortUrl,long:this.createLongUrl,embed:this.createEmbedUrl,shortImage:this.createShortImageUrl,longImage:this.createLongImageUrl},this.imageQualities={0:"0",1:"1",2:"2",3:"3",DEFAULT:"default",HQDEFAULT:"hqdefault",SDDEFAULT:"sddefault",MQDEFAULT:"mqdefault",MAXRESDEFAULT:"maxresdefault"},this.defaultImageQuality=this.imageQualities.HQDEFAULT,this.mediaTypes={VIDEO:"video",PLAYLIST:"playlist",SHARE:"share",CHANNEL:"channel"}}C.prototype.parseVideoUrl=function(e){var t=e.match(/(?:(?:v|vi|be|videos|shorts|embed|live)\/(?!videoseries)|(?:v|ci)=)([\w-]{11})/i);return t?t[1]:void 0},C.prototype.parseChannelUrl=function(e){var t=e.match(/\/channel\/([\w-]+)/);return t?{id:t[1],mediaType:this.mediaTypes.CHANNEL}:(t=e.match(/\/(?:c|user)\/([\w-]+)/))?{name:t[1],mediaType:this.mediaTypes.CHANNEL}:void 0},C.prototype.parseParameters=function(e,t){return(e.start||e.t)&&(e.start=S(e.start||e.t),delete e.t),e.v===t.id&&delete e.v,e.list===t.id&&delete e.list,e},C.prototype.parseMediaType=function(e){if(e.params.list&&(e.list=e.params.list,delete e.params.list),e.id&&!e.params.ci)e.mediaType=this.mediaTypes.VIDEO;else if(e.list)delete e.id,e.mediaType=this.mediaTypes.PLAYLIST;else{if(!e.params.ci)return;delete e.params.ci,e.mediaType=this.mediaTypes.SHARE}return e},C.prototype.parse=function(e,t){var i=this.parseChannelUrl(e);if(i)return i;var r={params:t,id:this.parseVideoUrl(e)};return r.params=this.parseParameters(t,r),r=this.parseMediaType(r)},C.prototype.createShortUrl=function(e,t){if(e.id&&e.mediaType===this.mediaTypes.VIDEO){var i="https://youtu.be/"+e.id;return t.start&&(i+="#t="+t.start),i}},C.prototype.createLongUrl=function(e,t){var i="",r=t.start;if(delete t.start,e.mediaType===this.mediaTypes.CHANNEL)if(e.id)i+="https://www.youtube.com/channel/"+e.id;else{if(!e.name)return;i+="https://www.youtube.com/c/"+e.name}else if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list)t.feature="share",i+="https://www.youtube.com/playlist";else if(e.mediaType===this.mediaTypes.VIDEO&&e.id)t.v=e.id,i+="https://www.youtube.com/watch";else{if(e.mediaType!==this.mediaTypes.SHARE||!e.id)return;t.ci=e.id,i+="https://www.youtube.com/shared"}return e.list&&(t.list=e.list),i+=A(t),e.mediaType!==this.mediaTypes.PLAYLIST&&r&&(i+="#t="+r),i},C.prototype.createEmbedUrl=function(e,t){var i="https://www.youtube.com/embed";if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list)t.listType="playlist";else{if(e.mediaType!==this.mediaTypes.VIDEO||!e.id)return;i+="/"+e.id,"1"===t.loop&&(t.playlist=e.id)}return e.list&&(t.list=e.list),i+=A(t)},C.prototype.createImageUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO)return e+t.id+"/"+(i.imageQuality||this.defaultImageQuality)+".jpg"},C.prototype.createShortImageUrl=function(e,t){return this.createImageUrl("https://i.ytimg.com/vi/",e,t)},C.prototype.createLongImageUrl=function(e,t){return this.createImageUrl("https://img.youtube.com/vi/",e,t)},o.bind(new C);var F=i.combineParams,M=i.getTime;function k(){this.provider="soundcloud",this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={TRACK:"track",PLAYLIST:"playlist",APITRACK:"apitrack",APIPLAYLIST:"apiplaylist"}}k.prototype.parseUrl=function(e,t){var i=e.match(/(?:m\.)?soundcloud\.com\/(?:([\w-]+)\/(sets\/)?)([\w-]+)/i);return i?(t.channel=i[1],"playlists"===i[1]||i[2]?t.list=i[3]:t.id=i[3],t):t},k.prototype.parseParameters=function(e){return e.t&&(e.start=M(e.t),delete e.t),e},k.prototype.parseMediaType=function(e){return e.id&&("tracks"===e.channel?(delete e.channel,delete e.params.url,e.mediaType=this.mediaTypes.APITRACK):e.mediaType=this.mediaTypes.TRACK),e.list&&("playlists"===e.channel?(delete e.channel,delete e.params.url,e.mediaType=this.mediaTypes.APIPLAYLIST):e.mediaType=this.mediaTypes.PLAYLIST),e},k.prototype.parse=function(e,t){var i={};if((i=this.parseUrl(e,i)).params=this.parseParameters(t),(i=this.parseMediaType(i)).id||i.list)return i},k.prototype.createLongUrl=function(e,t){var i="",r=t.start;if(delete t.start,e.mediaType===this.mediaTypes.TRACK&&e.id&&e.channel)i="https://soundcloud.com/"+e.channel+"/"+e.id;else if(e.mediaType===this.mediaTypes.PLAYLIST&&e.list&&e.channel)i="https://soundcloud.com/"+e.channel+"/sets/"+e.list;else if(e.mediaType===this.mediaTypes.APITRACK&&e.id)i="https://api.soundcloud.com/tracks/"+e.id;else{if(e.mediaType!==this.mediaTypes.APIPLAYLIST||!e.list)return;i="https://api.soundcloud.com/playlists/"+e.list}return i+=F(t),r&&(i+="#t="+r),i},k.prototype.createEmbedUrl=function(e,t){var i="https://w.soundcloud.com/player/";if(delete t.start,e.mediaType===this.mediaTypes.APITRACK&&e.id)t.url="https%3A//api.soundcloud.com/tracks/"+e.id;else{if(e.mediaType!==this.mediaTypes.APIPLAYLIST||!e.list)return;t.url="https%3A//api.soundcloud.com/playlists/"+e.list}return i+=F(t)},o.bind(new k);var R=i.combineParams;function N(){this.provider="teachertube",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",AUDIO:"audio",DOCUMENT:"document",CHANNEL:"channel",COLLECTION:"collection",GROUP:"group"}}N.prototype.parse=function(e,t){var i={};i.list=this.parsePlaylist(t),i.params=t;var r=e.match(/\/(audio|video|document|user\/channel|collection|group)\/(?:[\w-]+-)?(\w+)/);if(r)return i.mediaType=this.parseMediaType(r[1]),i.id=r[2],i},N.prototype.parsePlaylist=function(e){if(e["playlist-id"]){var t=e["playlist-id"];return delete e["playlist-id"],t}},N.prototype.parseMediaType=function(e){switch(e){case"audio":return this.mediaTypes.AUDIO;case"video":return this.mediaTypes.VIDEO;case"document":return this.mediaTypes.DOCUMENT;case"user/channel":return this.mediaTypes.CHANNEL;case"collection":return this.mediaTypes.COLLECTION;case"group":return this.mediaTypes.GROUP}},N.prototype.createLongUrl=function(e,t){if(e.id){var i="https://www.teachertube.com/";return e.list&&(t["playlist-id"]=e.list),e.mediaType===this.mediaTypes.CHANNEL?i+="user/channel/":i+=e.mediaType+"/",i+=e.id,i+=R(t)}},N.prototype.createEmbedUrl=function(e,t){if(e.id){var i="https://www.teachertube.com/embed/";if(e.mediaType===this.mediaTypes.VIDEO||e.mediaType===this.mediaTypes.AUDIO)return i+=e.mediaType+"/"+e.id,i+=R(t)}},o.bind(new N);var Y=i.combineParams;function H(){this.provider="tiktok",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}H.prototype.parse=function(e,t){var i={params:t,mediaType:this.mediaTypes.VIDEO},r=e.match(/@([^/]+)\/video\/(\d{19})/);if(r)return i.channel=r[1],i.id=r[2],i},H.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.VIDEO&&e.id&&e.channel)return i+="https://www.tiktok.com/@".concat(e.channel,"/video/").concat(e.id),i+=Y(t)},o.bind(new H);var j=i.combineParams;function _(){this.provider="voomly",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}_.prototype.parseUrl=function(e){var t=e.match(/(?:v|embed)\/([\w-]+)/i);return t?t[1]:void 0},_.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},_.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=j(i)}},_.prototype.createLongUrl=function(e,t){return this.createUrl("https://share.voomly.com/v/",e,t)},o.bind(new _);var Q=i.combineParams;function z(){this.provider="spotlightr",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}z.prototype.parseUrl=function(e){var t=e.match(/(?:watch|embed)\/([a-zA-Z\d]+)/i);return t?t[1]:void 0},z.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},z.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=Q(i)}},z.prototype.createLongUrl=function(e,t){return this.createUrl("https://videos.spotlightr.com/watch/",e,t)},o.bind(new z);var Z=i.combineParams;function K(){this.provider="bunny",this.alternatives=["bunnycdn","mediadelivery"],this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}K.prototype.parse=function(e,t){var i=e.match(/(?:play|embed)\/([a-zA-Z\d]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},K.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=Z(i)}},K.prototype.createLongUrl=function(e,t){return this.createUrl("https://iframe.mediadelivery.net/embed/",e,t)},o.bind(new K);var x=i.combineParams;function B(){this.provider="canva",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}B.prototype.parse=function(e,t){var i=e.match(/\/design\/(.+)\/watch/);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},B.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id+"/watch";return r+=x(i)}},B.prototype.createLongUrl=function(e,t){return this.createUrl("https://www.canva.com/design/",e,t)},o.bind(new B);var $=i.combineParams;function q(){this.provider="descript",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}q.prototype.parse=function(e,t){var i=e.match(/(?:view|embed)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},q.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=$(i)}},q.prototype.createLongUrl=function(e,t){return this.createUrl("https://share.descript.com/embed/",e,t)},o.bind(new q);var G=i.combineParams;function J(){this.provider="ted",this.formats={long:this.createLongUrl,embed:this.createEmbedUrl},this.mediaTypes={VIDEO:"video",PLAYLIST:"playlist"}}J.prototype.parseUrl=function(e,t){var i=e.match(/\/(talks|playlists\/(\d+))\/([\w-]+)/i),r=i?i[1]:void 0;return r?(t.channel=r.split("/")[0],t.id=i[3],"playlists"===t.channel&&(t.list=i[2]),t):t},J.prototype.parseMediaType=function(e){return e.id&&"playlists"===e.channel&&(delete e.channel,e.mediaType=this.mediaTypes.PLAYLIST),e.id&&"talks"===e.channel&&(delete e.channel,e.mediaType=this.mediaTypes.VIDEO),e},J.prototype.parse=function(e,t){var i={params:t};if(i=this.parseUrl(e,i),(i=this.parseMediaType(i)).id)return i},J.prototype.createLongUrl=function(e,t){var i="";if(e.mediaType===this.mediaTypes.VIDEO&&e.id)i+="https://ted.com/talks/"+e.id;else{if(e.mediaType!==this.mediaTypes.PLAYLIST||!e.id)return;i+="https://ted.com/playlists/"+e.list+"/"+e.id}return i+=G(t)},J.prototype.createEmbedUrl=function(e,t){var i="https://embed.ted.com/";if(e.mediaType===this.mediaTypes.PLAYLIST&&e.id)i+="playlists/"+e.list+"/"+e.id;else{if(e.mediaType!==this.mediaTypes.VIDEO||!e.id)return;i+="talks/"+e.id}return i+=G(t)},o.bind(new J);var W=i.combineParams;function X(){this.provider="facebook",this.alternatives=[],this.defaultFormat="long",this.formats={long:this.createLongUrl,watch:this.createWatchUrl},this.mediaTypes={VIDEO:"video"}}X.prototype.parse=function(e,t){var i={params:t,mediaType:this.mediaTypes.VIDEO},r=e.match(/(?:\/(\d+))?\/videos(?:\/.*?)?\/(\d+)/i);if(r&&(r[1]&&(i.pageId=r[1]),i.id=r[2]),t.v&&!i.id&&(i.id=t.v,delete t.v,i.params=t),i.id)return i},X.prototype.createWatchUrl=function(e,t){var i="https://facebook.com/watch/";if(e.mediaType===this.mediaTypes.VIDEO&&e.id)return t={v:e.id},i+=W(t)},X.prototype.createLongUrl=function(e,t){var i="https://facebook.com/";if(e.pageId&&(i+=e.pageId,e.mediaType===this.mediaTypes.VIDEO&&e.id))return i+="/videos/"+e.id,i+=W(t)},o.bind(new X);var ee=i.combineParams;function te(){this.provider="bigcommand",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}te.prototype.parse=function(e,t){var i=e.match(/(?:watch)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,id:i[1]};return r.id?r:void 0}},te.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=ee(i)}},te.prototype.createLongUrl=function(e,t){return this.createUrl("https://adilo.bigcommand.com/watch/",e,t)},o.bind(new te);var ie=i.combineParams;function re(){this.provider="brightcove",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}re.prototype.parse=function(e,t){var i=e.match(/(\d+)\/(\w+)_(\w+)+\/index.html\?videoId=(\d+)/);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],player:i[2],embed:i[3],id:i[4]};return r.id?r:void 0}},re.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.player+"_"+t.embed+"/index.html";return r+=ie(i)}},re.prototype.createLongUrl=function(e,t){return this.createUrl("https://players.brightcove.net/",e,t)},o.bind(new re);var ae=i.combineParams;function se(){this.provider="google",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}se.prototype.parseUrl=function(e){var t=e.match(/\/d\/([\w-]+)/);return t?t[1]:void 0},se.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},se.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id+"/preview";return r+=ae(i)}},se.prototype.createLongUrl=function(e,t){return this.createUrl("https://drive.google.com/file/d/",e,t)},o.bind(new se);var oe=i.combineParams;function ne(){this.provider="groove",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}ne.prototype.parse=function(e,t){var i=e.match(/(?:videopage)\/([\w-]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},ne.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=oe(i)}},ne.prototype.createLongUrl=function(e,t){return this.createUrl("https://app.groove.cm/groovevideo/videopage/",e,t)},o.bind(new ne);var pe=i.combineParams;function de(){this.provider="streamable",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}de.prototype.parseUrl=function(e){var t=e.match(/com\/(?:streamable\/)?([\w-]+)/);return t?t[1]:void 0},de.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},de.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=pe(i)}},de.prototype.createLongUrl=function(e,t){return this.createUrl("https://streamable.com/",e,t)},o.bind(new de);var me=i.combineParams;function le(){this.provider="searchie",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}le.prototype.parseUrl=function(e){var t=e.match(/(?:watch)\/([\w-]+)/i);return t?t[1]:void 0},le.prototype.parse=function(e,t){var i={mediaType:this.mediaTypes.VIDEO,params:t,id:this.parseUrl(e)};return i.id?i:void 0},le.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.id;return r+=me(i)}},le.prototype.createLongUrl=function(e,t){return this.createUrl("https://app.searchie.io/watch/",e,t)},o.bind(new le);var ce=i.combineParams;function he(){this.provider="tevello",this.defaultFormat="long",this.formats={long:this.createLongUrl},this.mediaTypes={VIDEO:"video"}}return he.prototype.parse=function(e,t){var i=e.match(/\/([a-zA-Z\d]+)\/([\w-]+)/i);if(i){var r={mediaType:this.mediaTypes.VIDEO,params:t,library:i[1],id:i[2]};return r.id?r:void 0}},he.prototype.createUrl=function(e,t,i){if(t.id&&t.mediaType===this.mediaTypes.VIDEO){var r=e+t.library+"/"+t.id;return r+=ce(i)}},he.prototype.createLongUrl=function(e,t){return this.createUrl("https://video.tevello.com/",e,t)},o.bind(new he),e(o)}));
package/lib/index.js CHANGED
@@ -4,6 +4,7 @@ require('./provider/canalplus');
4
4
  require('./provider/coub');
5
5
  require('./provider/dailymotion');
6
6
  require('./provider/loom');
7
+ require('./provider/tella');
7
8
  require('./provider/twitch');
8
9
  require('./provider/vimeo');
9
10
  require('./provider/wistia');
@@ -0,0 +1,13 @@
1
+ import { VideoInfo } from '../urlParser';
2
+
3
+ export interface TellaUrlParameters {
4
+ [key: string]: any;
5
+ }
6
+
7
+ export type TellaMediaTypes = 'video';
8
+
9
+ export interface TellaVideoInfo extends VideoInfo<TellaUrlParameters, TellaMediaTypes> {
10
+ provider: 'tella';
11
+ }
12
+
13
+ export type TellaParseResult = TellaVideoInfo | undefined;
@@ -0,0 +1,51 @@
1
+ const { combineParams } = require('../util');
2
+
3
+ function Tella() {
4
+ this.provider = 'tella';
5
+ this.defaultFormat = 'long';
6
+ this.formats = {
7
+ long: this.createLongUrl,
8
+ embed: this.createEmbedUrl,
9
+ };
10
+ this.mediaTypes = {
11
+ VIDEO: 'video',
12
+ };
13
+ }
14
+
15
+ module.exports = Tella;
16
+
17
+ Tella.prototype.parseUrl = function(url) {
18
+ var match = url.match(
19
+ /(?:video)\/([\w-]+)/i
20
+ );
21
+ return match ? match[1] : undefined;
22
+ };
23
+
24
+ Tella.prototype.parse = function(url, params) {
25
+ var result = {
26
+ mediaType: this.mediaTypes.VIDEO,
27
+ params: params,
28
+ id: this.parseUrl(url),
29
+ };
30
+ return result.id ? result : undefined;
31
+ };
32
+
33
+ Tella.prototype.createUrl = function(baseUrl, vi, params) {
34
+ if (!vi.id || vi.mediaType !== this.mediaTypes.VIDEO) {
35
+ return undefined;
36
+ }
37
+
38
+ var url = baseUrl + vi.id;
39
+ url += combineParams(params);
40
+ return url;
41
+ };
42
+
43
+ Tella.prototype.createLongUrl = function(vi, params) {
44
+ return this.createUrl('https://www.tella.tv/video/', vi, params);
45
+ };
46
+
47
+ Tella.prototype.createEmbedUrl = function(vi, params) {
48
+ return this.createUrl('https://www.tella.tv/video/', vi, params);
49
+ };
50
+
51
+ require('../base').bind(new Tella());
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ormoshe/js-video-url-parser",
3
- "version": "0.5.31",
3
+ "version": "0.5.33",
4
4
  "description": "A parser to extract provider, video id, starttime and others from YouTube, Vimeo, ... urls",
5
5
  "main": "lib/index.js",
6
6
  "browser": "dist/jsVideoUrlParser.js",