wavesurfer.js 6.4.0 → 6.5.1
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.
- package/LICENSE +1 -1
- package/README.md +36 -48
- package/dist/plugin/wavesurfer.cursor.js +19 -8
- package/dist/plugin/wavesurfer.cursor.js.map +1 -1
- package/dist/plugin/wavesurfer.cursor.min.js +2 -2
- package/dist/plugin/wavesurfer.cursor.min.js.map +1 -1
- package/dist/plugin/wavesurfer.elan.js +6 -3
- package/dist/plugin/wavesurfer.elan.js.map +1 -1
- package/dist/plugin/wavesurfer.elan.min.js +2 -2
- package/dist/plugin/wavesurfer.elan.min.js.map +1 -1
- package/dist/plugin/wavesurfer.markers.js +6 -3
- package/dist/plugin/wavesurfer.markers.js.map +1 -1
- package/dist/plugin/wavesurfer.markers.min.js +2 -2
- package/dist/plugin/wavesurfer.markers.min.js.map +1 -1
- package/dist/plugin/wavesurfer.mediasession.js +4 -2
- package/dist/plugin/wavesurfer.mediasession.js.map +1 -1
- package/dist/plugin/wavesurfer.mediasession.min.js +2 -2
- package/dist/plugin/wavesurfer.mediasession.min.js.map +1 -1
- package/dist/plugin/wavesurfer.microphone.js +5 -2
- package/dist/plugin/wavesurfer.microphone.js.map +1 -1
- package/dist/plugin/wavesurfer.microphone.min.js +2 -2
- package/dist/plugin/wavesurfer.microphone.min.js.map +1 -1
- package/dist/plugin/wavesurfer.minimap.js +5 -2
- package/dist/plugin/wavesurfer.minimap.js.map +1 -1
- package/dist/plugin/wavesurfer.minimap.min.js +2 -2
- package/dist/plugin/wavesurfer.minimap.min.js.map +1 -1
- package/dist/plugin/wavesurfer.playhead.js +5 -2
- package/dist/plugin/wavesurfer.playhead.js.map +1 -1
- package/dist/plugin/wavesurfer.playhead.min.js +2 -2
- package/dist/plugin/wavesurfer.playhead.min.js.map +1 -1
- package/dist/plugin/wavesurfer.regions.js +101 -11
- package/dist/plugin/wavesurfer.regions.js.map +1 -1
- package/dist/plugin/wavesurfer.regions.min.js +2 -2
- package/dist/plugin/wavesurfer.regions.min.js.map +1 -1
- package/dist/plugin/wavesurfer.spectrogram.js +5 -2
- package/dist/plugin/wavesurfer.spectrogram.js.map +1 -1
- package/dist/plugin/wavesurfer.spectrogram.min.js +2 -2
- package/dist/plugin/wavesurfer.spectrogram.min.js.map +1 -1
- package/dist/plugin/wavesurfer.timeline.js +13 -5
- package/dist/plugin/wavesurfer.timeline.js.map +1 -1
- package/dist/plugin/wavesurfer.timeline.min.js +2 -2
- package/dist/plugin/wavesurfer.timeline.min.js.map +1 -1
- package/dist/wavesurfer-html-init.js +4 -2
- package/dist/wavesurfer-html-init.js.map +1 -1
- package/dist/wavesurfer-html-init.min.js +2 -2
- package/dist/wavesurfer-html-init.min.js.map +1 -1
- package/dist/wavesurfer.js +77 -27
- package/dist/wavesurfer.js.map +1 -1
- package/dist/wavesurfer.min.js +2 -2
- package/dist/wavesurfer.min.js.map +1 -1
- package/package.json +8 -8
- package/src/mediaelement.js +3 -0
- package/src/plugin/cursor/index.js +1 -1
- package/src/plugin/markers/index.js +1 -1
- package/src/plugin/regions/index.js +4 -0
- package/src/plugin/regions/region.js +70 -3
- package/src/util/silence-mode.js +7 -0
- package/src/wavesurfer.js +4 -0
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* wavesurfer.js 6.
|
|
2
|
+
* wavesurfer.js 6.5.1 (2023-03-12)
|
|
3
3
|
* https://wavesurfer-js.org
|
|
4
4
|
* @license BSD-3-Clause
|
|
5
5
|
*/
|
|
6
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("WaveSurfer",[],t):"object"==typeof exports?exports.WaveSurfer=t():(e.WaveSurfer=e.WaveSurfer||{},e.WaveSurfer["html-init"]=t())}(self,(()=>{return e={531:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(90))&&r.__esModule?r:{default:r};function
|
|
6
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define("WaveSurfer",[],t):"object"==typeof exports?exports.WaveSurfer=t():(e.WaveSurfer=e.WaveSurfer||{},e.WaveSurfer["html-init"]=t())}(self,(()=>{return e={531:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r,o=(r=n(90))&&r.__esModule?r:{default:r};function i(e){return i="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},i(e)}function a(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,(o=r.key,a=void 0,a=function(e,t){if("object"!==i(e)||null===e)return e;var n=e[Symbol.toPrimitive];if(void 0!==n){var r=n.call(e,t||"default");if("object"!==i(r))return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(o,"string"),"symbol"===i(a)?a:String(a)),r)}var o,a}var l=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),!t)throw new Error("WaveSurfer is not available!");this.WaveSurfer=t;var r=this.params=Object.assign({},{defaults:{backend:"MediaElement",mediaControls:!0},containers:"wavesurfer",pluginCdnTemplate:"//localhost:8080/dist/plugin/wavesurfer.[name].js",loadPlugin:function(e,t){var n=r.pluginCdnTemplate.replace("[name]",e);(0,o.default)(n,{async:!1},(function(r,o){if(r)return console.error("WaveSurfer plugin ".concat(e," not found at ").concat(n));t(window.WaveSurfer[e])}))}},n);this.containers="string"==typeof r.containers?document.querySelectorAll(r.containers):r.containers,this.pluginCache={},this.instances=[],this.initAllEls()}var t,n,r;return t=e,n=[{key:"initAllEls",value:function(){var e=this;Array.prototype.forEach.call(this.containers,(function(t){var n=t.dataset.plugins?t.dataset.plugins.split(","):[];if(!n.length)return e.initEl(t);n.forEach((function(r,o){e.pluginCache[r]?o===n.length&&e.initEl(t,n):e.params.loadPlugin(r,(function(i){e.pluginCache[r]=i,o+1===n.length&&e.initEl(t,n)}))}))}))}},{key:"initEl",value:function(e){var t=this,n=/^[[|{]/,r=(arguments.length>1&&void 0!==arguments[1]?arguments[1]:[]).map((function(r){var o,i={},a=new RegExp("^"+r);for(o in e.dataset)if(a.exec(o)){var l=e.dataset[o],u=n.test(l)?JSON.parse(l):l;i[o.slice(r.length,r.length+1).toLowerCase()+o.slice(r.length+1)]=u}return t.pluginCache[r].create(i)})),o=Object.assign({container:e},this.params.defaults,e.dataset,{plugins:r});e.style.display="block";var i=this.WaveSurfer.create(o),a=o.peaks?JSON.parse(o.peaks):void 0;return i.load(o.url,a),this.instances.push(i),i}}],n&&a(t.prototype,n),r&&a(t,r),Object.defineProperty(t,"prototype",{writable:!1}),e}();"object"!==("undefined"==typeof window?"undefined":i(window))||window.WS_StopAutoInit||("complete"===document.readyState?window.WaveSurferInit=new l(window.WaveSurfer,window.WS_InitOptions):window.addEventListener("load",(function(){window.WaveSurferInit=new l(window.WaveSurfer,window.WS_InitOptions)})));var u=l;t.default=u,e.exports=t.default},90:e=>{function t(e,t){e.onload=function(){this.onerror=this.onload=null,t(null,e)},e.onerror=function(){this.onerror=this.onload=null,t(new Error("Failed to load "+this.src),e)}}function n(e,t){e.onreadystatechange=function(){"complete"!=this.readyState&&"loaded"!=this.readyState||(this.onreadystatechange=null,t(null,e))}}e.exports=function(e,r,o){var i=document.head||document.getElementsByTagName("head")[0],a=document.createElement("script");"function"==typeof r&&(o=r,r={}),r=r||{},o=o||function(){},a.type=r.type||"text/javascript",a.charset=r.charset||"utf8",a.async=!("async"in r)||!!r.async,a.src=e,r.attrs&&function(e,t){for(var n in t)e.setAttribute(n,t[n])}(a,r.attrs),r.text&&(a.text=""+r.text),("onload"in a?t:n)(a,o),a.onload||t(a,o),i.appendChild(a)}}},t={},function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}(531);var e,t}));
|
|
7
7
|
//# sourceMappingURL=wavesurfer-html-init.min.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wavesurfer-html-init.min.js","mappings":"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","sources":["webpack://WaveSurfer/webpack/universalModuleDefinition","webpack://WaveSurfer/./src/html-init.js","webpack://WaveSurfer/./node_modules/load-script/index.js","webpack://WaveSurfer/webpack/bootstrap","webpack://WaveSurfer/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"WaveSurfer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"WaveSurfer\"] = factory();\n\telse\n\t\troot[\"WaveSurfer\"] = root[\"WaveSurfer\"] || {}, root[\"WaveSurfer\"][\"html-init\"] = factory();\n})(self, () => {\nreturn ","import loadScript from 'load-script';\n\n/**\n * @typedef {Object} InitParams\n * @property {WavesurferParams} [defaults={backend: 'MediaElement,\n * mediaControls: true}] The default wavesurfer initialisation parameters\n * @property {string|NodeList} containers='wavesurfer' Selector or NodeList of\n * elements to attach instances to\n * @property {string}\n * pluginCdnTemplate='//localhost:8080/dist/plugin/wavesurfer.[name].js' URL\n * template for the dynamic loading of plugins\n * @property {function} loadPlugin If set overwrites the default request function,\n * can be used to inject plugins differently.\n */\n/**\n * The HTML initialisation API is not part of the main library bundle file and\n * must be additionally included.\n *\n * The API attaches wavesurfer instances to all `<wavesurfer>` (can be\n * customised), parsing their `data-` attributes to construct an options object\n * for initialisation. Among other things it can dynamically load plugin code.\n *\n * The automatic initialisation can be prevented by setting the\n * `window.WS_StopAutoInit` flag to true. The `html-init[.min].js` file exports\n * the `Init` class, which can be called manually.\n *\n * Site-wide defaults can be added by setting `window.WS_InitOptions`.\n *\n * @example\n * <!-- with minimap and timeline plugin -->\n * <wavesurfer\n * data-url=\"../media/demo.wav\"\n * data-plugins=\"minimap,timeline\"\n * data-minimap-height=\"30\"\n * data-minimap-wave-color=\"#ddd\"\n * data-minimap-progress-color=\"#999\"\n * data-timeline-font-size=\"13px\"\n * data-timeline-container=\"#timeline\"\n * >\n * </wavesurfer>\n * <div id=\"timeline\"></div>\n *\n * <!-- with regions plugin -->\n * <wavesurfer\n * data-url=\"../media/demo.wav\"\n * data-plugins=\"regions\"\n * data-regions-regions='[{\"start\": 1,\"end\": 3,\"color\": \"hsla(400, 100%, 30%, 0.5)\"}]'\n * >\n * </wavesurfer>\n */\nclass Init {\n /**\n * Instantiate Init class and initialize elements\n *\n * This is done automatically if `window` is defined and\n * `window.WS_StopAutoInit` is not set to true\n *\n * @param {WaveSurfer} WaveSurfer The WaveSurfer library object\n * @param {InitParams} params initialisation options\n */\n constructor(WaveSurfer, params = {}) {\n if (!WaveSurfer) {\n throw new Error('WaveSurfer is not available!');\n }\n\n /**\n * cache WaveSurfer\n * @private\n */\n this.WaveSurfer = WaveSurfer;\n\n /**\n * build parameters, cache them in _params so minified builds are smaller\n * @private\n */\n const _params = (this.params = Object.assign(\n {},\n {\n // wavesurfer parameter defaults so by default the audio player is\n // usable with native media element controls\n defaults: {\n backend: 'MediaElement',\n mediaControls: true\n },\n // containers to instantiate on, can be selector string or NodeList\n containers: 'wavesurfer',\n // @TODO insert plugin CDN URIs\n pluginCdnTemplate:\n '//localhost:8080/dist/plugin/wavesurfer.[name].js',\n // loadPlugin function can be overridden to inject plugin definition\n // objects, this default function uses load-script to load a plugin\n // and pass it to a callback\n loadPlugin(name, cb) {\n const src = _params.pluginCdnTemplate.replace(\n '[name]',\n name\n );\n loadScript(src, { async: false }, (err, plugin) => {\n if (err) {\n // eslint-disable-next-line no-console\n return console.error(\n `WaveSurfer plugin ${name} not found at ${src}`\n );\n }\n cb(window.WaveSurfer[name]);\n });\n }\n },\n params\n ));\n /**\n * The nodes that should have instances attached to them\n * @type {NodeList}\n */\n this.containers =\n typeof _params.containers == 'string'\n ? document.querySelectorAll(_params.containers)\n : _params.containers;\n /** @private */\n this.pluginCache = {};\n /**\n * An array of wavesurfer instances\n * @type {Object[]}\n */\n this.instances = [];\n\n this.initAllEls();\n }\n\n /**\n * Initialize all container elements\n */\n initAllEls() {\n // iterate over all the container elements\n Array.prototype.forEach.call(this.containers, el => {\n // load the plugins as an array of plugin names\n const plugins = el.dataset.plugins\n ? el.dataset.plugins.split(',')\n : [];\n\n // no plugins to be loaded, just render\n if (!plugins.length) {\n return this.initEl(el);\n }\n // … or: iterate over all the plugins\n plugins.forEach((name, i) => {\n // plugin is not cached already, load it\n if (!this.pluginCache[name]) {\n this.params.loadPlugin(name, lib => {\n this.pluginCache[name] = lib;\n // plugins were all loaded, render the element\n if (i + 1 === plugins.length) {\n this.initEl(el, plugins);\n }\n });\n } else if (i === plugins.length) {\n // plugin was cached and this plugin was the last\n this.initEl(el, plugins);\n }\n });\n });\n }\n\n /**\n * Initialize a single container element and add to `this.instances`\n *\n * @param {HTMLElement} el The container to instantiate wavesurfer to\n * @param {PluginDefinition[]} plugins An Array of plugin names to initialize with\n * @return {Object} Wavesurfer instance\n */\n initEl(el, plugins = []) {\n const jsonRegex = /^[[|{]/;\n // initialize plugins with the correct options\n const initialisedPlugins = plugins.map(plugin => {\n const options = {};\n // the regex to find this plugin attributes\n const attrNameRegex = new RegExp('^' + plugin);\n let attrName;\n // iterate over all the data attributes and find ones for this\n // plugin\n for (attrName in el.dataset) {\n const regexResult = attrNameRegex.exec(attrName);\n if (regexResult) {\n const attr = el.dataset[attrName];\n // if the string begins with a [ or a { parse it as JSON\n const prop = jsonRegex.test(attr) ? JSON.parse(attr) : attr;\n // this removes the plugin prefix and changes the first letter\n // of the resulting string to lower case to follow the naming\n // convention of ws params\n const unprefixedOptionName =\n attrName\n .slice(plugin.length, plugin.length + 1)\n .toLowerCase() + attrName.slice(plugin.length + 1);\n options[unprefixedOptionName] = prop;\n }\n }\n return this.pluginCache[plugin].create(options);\n });\n // build parameter object for this container\n const params = Object.assign(\n { container: el },\n this.params.defaults,\n el.dataset,\n { plugins: initialisedPlugins }\n );\n\n // @TODO make nicer\n el.style.display = 'block';\n\n // initialize wavesurfer, load audio (with peaks if provided)\n const instance = this.WaveSurfer.create(params);\n const peaks = params.peaks ? JSON.parse(params.peaks) : undefined;\n instance.load(params.url, peaks);\n\n // push this instance into the instances cache\n this.instances.push(instance);\n return instance;\n }\n}\n\n// if window object exists and window.WS_StopAutoInit is not true\nif (typeof window === 'object' && !window.WS_StopAutoInit) {\n // call init when document is ready, apply any custom default settings\n // in window.WS_InitOptions\n if (document.readyState === 'complete') {\n window.WaveSurferInit = new Init(\n window.WaveSurfer,\n window.WS_InitOptions\n );\n } else {\n window.addEventListener('load', () => {\n window.WaveSurferInit = new Init(\n window.WaveSurfer,\n window.WS_InitOptions\n );\n });\n }\n}\n\n// export init for manual usage\nexport default Init;\n","\nmodule.exports = function load (src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0]\n var script = document.createElement('script')\n\n if (typeof opts === 'function') {\n cb = opts\n opts = {}\n }\n\n opts = opts || {}\n cb = cb || function() {}\n\n script.type = opts.type || 'text/javascript'\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true\n script.src = src\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs)\n }\n\n if (opts.text) {\n script.text = '' + opts.text\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd\n onend(script, cb)\n\n // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script)\n}\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd (script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null\n cb(null, script)\n }\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null\n cb(new Error('Failed to load ' + this.src), script)\n }\n}\n\nfunction ieOnEnd (script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return\n this.onreadystatechange = null\n cb(null, script) // there is no way to catch loading errors in IE8\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(531);\n"],"names":["root","factory","exports","module","define","amd","self","Init","WaveSurfer","params","Error","this","_params","Object","assign","defaults","backend","mediaControls","containers","pluginCdnTemplate","loadPlugin","name","cb","src","replace","loadScript","async","err","plugin","console","error","window","document","querySelectorAll","pluginCache","instances","initAllEls","Array","prototype","forEach","call","el","plugins","dataset","split","length","initEl","i","lib","jsonRegex","initialisedPlugins","map","attrName","options","attrNameRegex","RegExp","exec","attr","prop","test","JSON","parse","slice","toLowerCase","create","container","style","display","instance","peaks","undefined","load","url","push","WS_StopAutoInit","readyState","WaveSurferInit","WS_InitOptions","addEventListener","stdOnEnd","script","onload","onerror","ieOnEnd","onreadystatechange","opts","head","getElementsByTagName","createElement","type","charset","attrs","setAttribute","setAttributes","text","appendChild","__webpack_module_cache__","__webpack_exports__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|
|
1
|
+
{"version":3,"file":"wavesurfer-html-init.min.js","mappings":";;;;;CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,aAAc,GAAIH,GACC,iBAAZC,QACdA,QAAoB,WAAID,KAExBD,EAAiB,WAAIA,EAAiB,YAAK,CAAC,EAAGA,EAAiB,WAAE,aAAeC,IAClF,CATD,CASGK,MAAM,KACT,O,gGCVA,IAAqCC,EAArCC,GAAqCD,EAArCE,EAAA,MAAqCF,EAAAG,WAAAH,EAAA,CAAAI,QAAAJ,GAAA,SAAAK,EAAAL,GAAA,OAAAK,EAAA,mBAAAC,QAAA,iBAAAA,OAAAC,SAAA,SAAAP,GAAA,cAAAA,CAAA,WAAAA,GAAA,OAAAA,GAAA,mBAAAM,QAAAN,EAAAQ,cAAAF,QAAAN,IAAAM,OAAAG,UAAA,gBAAAT,CAAA,EAAAK,EAAAL,EAAA,UAAAU,EAAAC,EAAAC,GAAA,QAAAC,EAAA,EAAAA,EAAAD,EAAAE,OAAAD,IAAA,KAAAE,EAAAH,EAAAC,GAAAE,EAAAC,WAAAD,EAAAC,aAAA,EAAAD,EAAAE,cAAA,YAAAF,IAAAA,EAAAG,UAAA,GAAAC,OAAAC,eAAAT,GAAAU,EAAAN,EAAAO,IAAAA,WAAA,SAAAC,EAAAC,GAAA,cAAAnB,EAAAkB,IAAA,OAAAA,EAAA,OAAAA,EAAA,IAAAE,EAAAF,EAAAjB,OAAAoB,aAAA,QAAAC,IAAAF,EAAA,KAAAG,EAAAH,EAAAI,KAAAN,EAAAC,GAAA,yBAAAnB,EAAAuB,GAAA,OAAAA,EAAA,UAAAE,UAAA,kEAAAN,EAAAO,OAAAC,QAAAT,EAAA,CAAAU,CAAAZ,EAAA,qBAAAhB,EAAAiB,GAAAA,EAAAS,OAAAT,IAAAP,EAAA,KAAAM,EAAAC,CAAA,CAcrC,IAoCMY,EAAI,WAUN,SAAAA,EAAYC,GAAyB,IAAbC,EAAMC,UAAAvB,OAAA,QAAAa,IAAAU,UAAA,GAAAA,UAAA,GAAG,CAAC,EAC9B,GA7D6B,SAAAC,EAAAC,GAAA,KAAAD,aAAAC,GAAA,UAAAT,UAAA,qCA4DEU,CAAA,KAAAN,IAC1BC,EACD,MAAM,IAAIM,MAAM,gCAOpBC,KAAKP,WAAaA,EAMlB,IAAMQ,EAAWD,KAAKN,OAASjB,OAAOyB,OAClC,CAAC,EACD,CAGIC,SAAU,CACNC,QAAS,eACTC,eAAe,GAGnBC,WAAY,aAEZC,kBACI,oDAIJC,WAAU,SAACC,EAAMC,GACb,IAAMC,EAAMV,EAAQM,kBAAkBK,QAClC,SACAH,IAEJ,EAAAI,EAAAA,SAAWF,EAAK,CAAEG,OAAO,IAAS,SAACC,EAAKC,GACpC,GAAID,EAEA,OAAOE,QAAQC,MAAM,qBAADC,OACKV,EAAI,kBAAAU,OAAiBR,IAGlDD,EAAGU,OAAO3B,WAAWgB,GACzB,GACJ,GAEJf,GAMJM,KAAKM,WAC4B,iBAAtBL,EAAQK,WACTe,SAASC,iBAAiBrB,EAAQK,YAClCL,EAAQK,WAElBN,KAAKuB,YAAc,CAAC,EAKpBvB,KAAKwB,UAAY,GAEjBxB,KAAKyB,YACT,CA/HiC,IAAA5B,EAAA6B,EAAAC,EAyNhC,OAzNgC9B,EAiIjCL,EAjIiCkC,EAiIjC,EAAA9C,IAAA,aAAAgD,MAGA,WAAa,IAAAC,EAAA,KAETC,MAAM/D,UAAUgE,QAAQ5C,KAAKa,KAAKM,YAAY,SAAA0B,GAE1C,IAAMC,EAAUD,EAAGE,QAAQD,QACrBD,EAAGE,QAAQD,QAAQE,MAAM,KACzB,GAGN,IAAKF,EAAQ7D,OACT,OAAOyD,EAAKO,OAAOJ,GAGvBC,EAAQF,SAAQ,SAACtB,EAAMtC,GAEd0D,EAAKN,YAAYd,GAQXtC,IAAM8D,EAAQ7D,QAErByD,EAAKO,OAAOJ,EAAIC,GAThBJ,EAAKnC,OAAOc,WAAWC,GAAM,SAAA4B,GACzBR,EAAKN,YAAYd,GAAQ4B,EAErBlE,EAAI,IAAM8D,EAAQ7D,QAClByD,EAAKO,OAAOJ,EAAIC,EAExB,GAKR,GACJ,GACJ,GAEA,CAAArD,IAAA,SAAAgD,MAOA,SAAOI,GAAkB,IAAAM,EAAA,KACfC,EAAY,SAEZC,GAHQ7C,UAAAvB,OAAA,QAAAa,IAAAU,UAAA,GAAAA,UAAA,GAAG,IAGkB8C,KAAI,SAAAzB,GACnC,IAGI0B,EAHEC,EAAU,CAAC,EAEXC,EAAgB,IAAIC,OAAO,IAAM7B,GAIvC,IAAK0B,KAAYV,EAAGE,QAEhB,GADoBU,EAAcE,KAAKJ,GACtB,CACb,IAAMK,EAAOf,EAAGE,QAAQQ,GAElBM,EAAOT,EAAUU,KAAKF,GAAQG,KAAKC,MAAMJ,GAAQA,EAQvDJ,EAHID,EACKU,MAAMpC,EAAO5C,OAAQ4C,EAAO5C,OAAS,GACrCiF,cAAgBX,EAASU,MAAMpC,EAAO5C,OAAS,IACxB4E,CACpC,CAEJ,OAAOV,EAAKf,YAAYP,GAAQsC,OAAOX,EAC3C,IAEMjD,EAASjB,OAAOyB,OAClB,CAAEqD,UAAWvB,GACbhC,KAAKN,OAAOS,SACZ6B,EAAGE,QACH,CAAED,QAASO,IAIfR,EAAGwB,MAAMC,QAAU,QAGnB,IAAM7D,EAAWI,KAAKP,WAAW6D,OAAO5D,GAClCgE,EAAQhE,EAAOgE,MAAQR,KAAKC,MAAMzD,EAAOgE,YAASzE,EAKxD,OAJAW,EAAS+D,KAAKjE,EAAOkE,IAAKF,GAG1B1D,KAAKwB,UAAUqC,KAAKjE,GACbA,CACX,IAzNiC8B,GAAA1D,EAAA6B,EAAA9B,UAAA2D,GAAAC,GAAA3D,EAAA6B,EAAA8B,GAAAlD,OAAAC,eAAAmB,EAAA,aAAArB,UAAA,IAyNhCgB,CAAA,CAvKK,GA2KY,gCAAX4B,OAAM,YAAAzD,EAANyD,UAAwBA,OAAO0C,kBAGV,aAAxBzC,SAAS0C,WACT3C,OAAO4C,eAAiB,IAAIxE,EACxB4B,OAAO3B,WACP2B,OAAO6C,gBAGX7C,OAAO8C,iBAAiB,QAAQ,WAC5B9C,OAAO4C,eAAiB,IAAIxE,EACxB4B,OAAO3B,WACP2B,OAAO6C,eAEf,KAIR,IAAAE,EACe3E,EAAIvC,EAAAA,QAAAkH,EAAAjH,EAAAD,QAAAA,EAAAS,O,SCnMnB,SAAS0G,EAAUC,EAAQ3D,GACzB2D,EAAOC,OAAS,WACdtE,KAAKuE,QAAUvE,KAAKsE,OAAS,KAC7B5D,EAAG,KAAM2D,EACX,EACAA,EAAOE,QAAU,WAGfvE,KAAKuE,QAAUvE,KAAKsE,OAAS,KAC7B5D,EAAG,IAAIX,MAAM,kBAAoBC,KAAKW,KAAM0D,EAC9C,CACF,CAEA,SAASG,EAASH,EAAQ3D,GACxB2D,EAAOI,mBAAqB,WACH,YAAnBzE,KAAK+D,YAA+C,UAAnB/D,KAAK+D,aAC1C/D,KAAKyE,mBAAqB,KAC1B/D,EAAG,KAAM2D,GACX,CACF,CA/DAnH,EAAOD,QAAU,SAAe0D,EAAK+D,EAAMhE,GACzC,IAAIiE,EAAOtD,SAASsD,MAAQtD,SAASuD,qBAAqB,QAAQ,GAC9DP,EAAShD,SAASwD,cAAc,UAEhB,mBAATH,IACThE,EAAKgE,EACLA,EAAO,CAAC,GAGVA,EAAOA,GAAQ,CAAC,EAChBhE,EAAKA,GAAM,WAAY,EAEvB2D,EAAOS,KAAOJ,EAAKI,MAAQ,kBAC3BT,EAAOU,QAAUL,EAAKK,SAAW,OACjCV,EAAOvD,QAAQ,UAAW4D,MAASA,EAAK5D,MACxCuD,EAAO1D,IAAMA,EAET+D,EAAKM,OAqBX,SAAuBX,EAAQW,GAC7B,IAAK,IAAIjC,KAAQiC,EACfX,EAAOY,aAAalC,EAAMiC,EAAMjC,GAEpC,CAxBImC,CAAcb,EAAQK,EAAKM,OAGzBN,EAAKS,OACPd,EAAOc,KAAO,GAAKT,EAAKS,OAGd,WAAYd,EAASD,EAAWI,GACtCH,EAAQ3D,GAKT2D,EAAOC,QACVF,EAASC,EAAQ3D,GAGnBiE,EAAKS,YAAYf,EACnB,C,GCpCIgB,EAA2B,CAAC,EAGhC,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBtG,IAAjBuG,EACH,OAAOA,EAAavI,QAGrB,IAAIC,EAASmI,EAAyBE,GAAY,CAGjDtI,QAAS,CAAC,GAOX,OAHAwI,EAAoBF,GAAUrI,EAAQA,EAAOD,QAASqI,GAG/CpI,EAAOD,OACf,CCnB0BqI,CAAoB,KJO9C,I,EGTID,C","sources":["webpack://WaveSurfer/webpack/universalModuleDefinition","webpack://WaveSurfer/./src/html-init.js","webpack://WaveSurfer/./node_modules/load-script/index.js","webpack://WaveSurfer/webpack/bootstrap","webpack://WaveSurfer/webpack/startup"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"WaveSurfer\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"WaveSurfer\"] = factory();\n\telse\n\t\troot[\"WaveSurfer\"] = root[\"WaveSurfer\"] || {}, root[\"WaveSurfer\"][\"html-init\"] = factory();\n})(self, () => {\nreturn ","import loadScript from 'load-script';\n\n/**\n * @typedef {Object} InitParams\n * @property {WavesurferParams} [defaults={backend: 'MediaElement,\n * mediaControls: true}] The default wavesurfer initialisation parameters\n * @property {string|NodeList} containers='wavesurfer' Selector or NodeList of\n * elements to attach instances to\n * @property {string}\n * pluginCdnTemplate='//localhost:8080/dist/plugin/wavesurfer.[name].js' URL\n * template for the dynamic loading of plugins\n * @property {function} loadPlugin If set overwrites the default request function,\n * can be used to inject plugins differently.\n */\n/**\n * The HTML initialisation API is not part of the main library bundle file and\n * must be additionally included.\n *\n * The API attaches wavesurfer instances to all `<wavesurfer>` (can be\n * customised), parsing their `data-` attributes to construct an options object\n * for initialisation. Among other things it can dynamically load plugin code.\n *\n * The automatic initialisation can be prevented by setting the\n * `window.WS_StopAutoInit` flag to true. The `html-init[.min].js` file exports\n * the `Init` class, which can be called manually.\n *\n * Site-wide defaults can be added by setting `window.WS_InitOptions`.\n *\n * @example\n * <!-- with minimap and timeline plugin -->\n * <wavesurfer\n * data-url=\"../media/demo.wav\"\n * data-plugins=\"minimap,timeline\"\n * data-minimap-height=\"30\"\n * data-minimap-wave-color=\"#ddd\"\n * data-minimap-progress-color=\"#999\"\n * data-timeline-font-size=\"13px\"\n * data-timeline-container=\"#timeline\"\n * >\n * </wavesurfer>\n * <div id=\"timeline\"></div>\n *\n * <!-- with regions plugin -->\n * <wavesurfer\n * data-url=\"../media/demo.wav\"\n * data-plugins=\"regions\"\n * data-regions-regions='[{\"start\": 1,\"end\": 3,\"color\": \"hsla(400, 100%, 30%, 0.5)\"}]'\n * >\n * </wavesurfer>\n */\nclass Init {\n /**\n * Instantiate Init class and initialize elements\n *\n * This is done automatically if `window` is defined and\n * `window.WS_StopAutoInit` is not set to true\n *\n * @param {WaveSurfer} WaveSurfer The WaveSurfer library object\n * @param {InitParams} params initialisation options\n */\n constructor(WaveSurfer, params = {}) {\n if (!WaveSurfer) {\n throw new Error('WaveSurfer is not available!');\n }\n\n /**\n * cache WaveSurfer\n * @private\n */\n this.WaveSurfer = WaveSurfer;\n\n /**\n * build parameters, cache them in _params so minified builds are smaller\n * @private\n */\n const _params = (this.params = Object.assign(\n {},\n {\n // wavesurfer parameter defaults so by default the audio player is\n // usable with native media element controls\n defaults: {\n backend: 'MediaElement',\n mediaControls: true\n },\n // containers to instantiate on, can be selector string or NodeList\n containers: 'wavesurfer',\n // @TODO insert plugin CDN URIs\n pluginCdnTemplate:\n '//localhost:8080/dist/plugin/wavesurfer.[name].js',\n // loadPlugin function can be overridden to inject plugin definition\n // objects, this default function uses load-script to load a plugin\n // and pass it to a callback\n loadPlugin(name, cb) {\n const src = _params.pluginCdnTemplate.replace(\n '[name]',\n name\n );\n loadScript(src, { async: false }, (err, plugin) => {\n if (err) {\n // eslint-disable-next-line no-console\n return console.error(\n `WaveSurfer plugin ${name} not found at ${src}`\n );\n }\n cb(window.WaveSurfer[name]);\n });\n }\n },\n params\n ));\n /**\n * The nodes that should have instances attached to them\n * @type {NodeList}\n */\n this.containers =\n typeof _params.containers == 'string'\n ? document.querySelectorAll(_params.containers)\n : _params.containers;\n /** @private */\n this.pluginCache = {};\n /**\n * An array of wavesurfer instances\n * @type {Object[]}\n */\n this.instances = [];\n\n this.initAllEls();\n }\n\n /**\n * Initialize all container elements\n */\n initAllEls() {\n // iterate over all the container elements\n Array.prototype.forEach.call(this.containers, el => {\n // load the plugins as an array of plugin names\n const plugins = el.dataset.plugins\n ? el.dataset.plugins.split(',')\n : [];\n\n // no plugins to be loaded, just render\n if (!plugins.length) {\n return this.initEl(el);\n }\n // … or: iterate over all the plugins\n plugins.forEach((name, i) => {\n // plugin is not cached already, load it\n if (!this.pluginCache[name]) {\n this.params.loadPlugin(name, lib => {\n this.pluginCache[name] = lib;\n // plugins were all loaded, render the element\n if (i + 1 === plugins.length) {\n this.initEl(el, plugins);\n }\n });\n } else if (i === plugins.length) {\n // plugin was cached and this plugin was the last\n this.initEl(el, plugins);\n }\n });\n });\n }\n\n /**\n * Initialize a single container element and add to `this.instances`\n *\n * @param {HTMLElement} el The container to instantiate wavesurfer to\n * @param {PluginDefinition[]} plugins An Array of plugin names to initialize with\n * @return {Object} Wavesurfer instance\n */\n initEl(el, plugins = []) {\n const jsonRegex = /^[[|{]/;\n // initialize plugins with the correct options\n const initialisedPlugins = plugins.map(plugin => {\n const options = {};\n // the regex to find this plugin attributes\n const attrNameRegex = new RegExp('^' + plugin);\n let attrName;\n // iterate over all the data attributes and find ones for this\n // plugin\n for (attrName in el.dataset) {\n const regexResult = attrNameRegex.exec(attrName);\n if (regexResult) {\n const attr = el.dataset[attrName];\n // if the string begins with a [ or a { parse it as JSON\n const prop = jsonRegex.test(attr) ? JSON.parse(attr) : attr;\n // this removes the plugin prefix and changes the first letter\n // of the resulting string to lower case to follow the naming\n // convention of ws params\n const unprefixedOptionName =\n attrName\n .slice(plugin.length, plugin.length + 1)\n .toLowerCase() + attrName.slice(plugin.length + 1);\n options[unprefixedOptionName] = prop;\n }\n }\n return this.pluginCache[plugin].create(options);\n });\n // build parameter object for this container\n const params = Object.assign(\n { container: el },\n this.params.defaults,\n el.dataset,\n { plugins: initialisedPlugins }\n );\n\n // @TODO make nicer\n el.style.display = 'block';\n\n // initialize wavesurfer, load audio (with peaks if provided)\n const instance = this.WaveSurfer.create(params);\n const peaks = params.peaks ? JSON.parse(params.peaks) : undefined;\n instance.load(params.url, peaks);\n\n // push this instance into the instances cache\n this.instances.push(instance);\n return instance;\n }\n}\n\n// if window object exists and window.WS_StopAutoInit is not true\nif (typeof window === 'object' && !window.WS_StopAutoInit) {\n // call init when document is ready, apply any custom default settings\n // in window.WS_InitOptions\n if (document.readyState === 'complete') {\n window.WaveSurferInit = new Init(\n window.WaveSurfer,\n window.WS_InitOptions\n );\n } else {\n window.addEventListener('load', () => {\n window.WaveSurferInit = new Init(\n window.WaveSurfer,\n window.WS_InitOptions\n );\n });\n }\n}\n\n// export init for manual usage\nexport default Init;\n","\nmodule.exports = function load (src, opts, cb) {\n var head = document.head || document.getElementsByTagName('head')[0]\n var script = document.createElement('script')\n\n if (typeof opts === 'function') {\n cb = opts\n opts = {}\n }\n\n opts = opts || {}\n cb = cb || function() {}\n\n script.type = opts.type || 'text/javascript'\n script.charset = opts.charset || 'utf8';\n script.async = 'async' in opts ? !!opts.async : true\n script.src = src\n\n if (opts.attrs) {\n setAttributes(script, opts.attrs)\n }\n\n if (opts.text) {\n script.text = '' + opts.text\n }\n\n var onend = 'onload' in script ? stdOnEnd : ieOnEnd\n onend(script, cb)\n\n // some good legacy browsers (firefox) fail the 'in' detection above\n // so as a fallback we always set onload\n // old IE will ignore this and new IE will set onload\n if (!script.onload) {\n stdOnEnd(script, cb);\n }\n\n head.appendChild(script)\n}\n\nfunction setAttributes(script, attrs) {\n for (var attr in attrs) {\n script.setAttribute(attr, attrs[attr]);\n }\n}\n\nfunction stdOnEnd (script, cb) {\n script.onload = function () {\n this.onerror = this.onload = null\n cb(null, script)\n }\n script.onerror = function () {\n // this.onload = null here is necessary\n // because even IE9 works not like others\n this.onerror = this.onload = null\n cb(new Error('Failed to load ' + this.src), script)\n }\n}\n\nfunction ieOnEnd (script, cb) {\n script.onreadystatechange = function () {\n if (this.readyState != 'complete' && this.readyState != 'loaded') return\n this.onreadystatechange = null\n cb(null, script) // there is no way to catch loading errors in IE8\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(531);\n"],"names":["root","factory","exports","module","define","amd","self","obj","_loadScript","require","__esModule","default","_typeof","Symbol","iterator","constructor","prototype","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","arg","key","input","hint","prim","toPrimitive","undefined","res","call","TypeError","String","Number","_toPrimitive","Init","WaveSurfer","params","arguments","instance","Constructor","_classCallCheck","Error","this","_params","assign","defaults","backend","mediaControls","containers","pluginCdnTemplate","loadPlugin","name","cb","src","replace","loadScript","async","err","plugin","console","error","concat","window","document","querySelectorAll","pluginCache","instances","initAllEls","protoProps","staticProps","value","_this","Array","forEach","el","plugins","dataset","split","initEl","lib","_this2","jsonRegex","initialisedPlugins","map","attrName","options","attrNameRegex","RegExp","exec","attr","prop","test","JSON","parse","slice","toLowerCase","create","container","style","display","peaks","load","url","push","WS_StopAutoInit","readyState","WaveSurferInit","WS_InitOptions","addEventListener","_default","stdOnEnd","script","onload","onerror","ieOnEnd","onreadystatechange","opts","head","getElementsByTagName","createElement","type","charset","attrs","setAttribute","setAttributes","text","appendChild","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__"],"sourceRoot":""}
|
package/dist/wavesurfer.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* wavesurfer.js 6.
|
|
2
|
+
* wavesurfer.js 6.5.1 (2023-03-12)
|
|
3
3
|
* https://wavesurfer-js.org
|
|
4
4
|
* @license BSD-3-Clause
|
|
5
5
|
*/
|
|
@@ -32,9 +32,12 @@ exports["default"] = void 0;
|
|
|
32
32
|
var _style = _interopRequireDefault(__webpack_require__(/*! ./util/style */ "./src/util/style.js"));
|
|
33
33
|
var _getId = _interopRequireDefault(__webpack_require__(/*! ./util/get-id */ "./src/util/get-id.js"));
|
|
34
34
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
35
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
35
36
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
36
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
37
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
37
38
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
39
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
40
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
38
41
|
/**
|
|
39
42
|
* The `CanvasEntry` class represents an element consisting of a wave `canvas`
|
|
40
43
|
* and an (optional) progress wave `canvas`.
|
|
@@ -446,8 +449,10 @@ var util = _interopRequireWildcard(__webpack_require__(/*! ./util */ "./src/util
|
|
|
446
449
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
447
450
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
448
451
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
449
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
452
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
450
453
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
454
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
455
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
451
456
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
452
457
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
453
458
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
@@ -899,8 +904,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
899
904
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
900
905
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
901
906
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
902
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
907
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
903
908
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
909
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
910
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
904
911
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
905
912
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
906
913
|
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
|
|
@@ -1547,8 +1554,10 @@ exports["default"] = void 0;
|
|
|
1547
1554
|
var _mediaelement = _interopRequireDefault(__webpack_require__(/*! ./mediaelement */ "./src/mediaelement.js"));
|
|
1548
1555
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1549
1556
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
1550
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
1557
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
1551
1558
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
1559
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
1560
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
1552
1561
|
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
|
1553
1562
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
|
1554
1563
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
@@ -1671,8 +1680,10 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
1671
1680
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
1672
1681
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
1673
1682
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
1674
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
1683
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
1675
1684
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
1685
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
1686
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
1676
1687
|
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
|
1677
1688
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
|
1678
1689
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
@@ -1756,6 +1767,9 @@ var MediaElement = /*#__PURE__*/function (_WebAudio) {
|
|
|
1756
1767
|
this.mediaListeners.error = function () {
|
|
1757
1768
|
_this2.fireEvent('error', 'Error loading media element');
|
|
1758
1769
|
};
|
|
1770
|
+
this.mediaListeners.waiting = function () {
|
|
1771
|
+
_this2.fireEvent('waiting');
|
|
1772
|
+
};
|
|
1759
1773
|
this.mediaListeners.canplay = function () {
|
|
1760
1774
|
_this2.fireEvent('canplay');
|
|
1761
1775
|
};
|
|
@@ -2173,9 +2187,12 @@ Object.defineProperty(exports, "__esModule", ({
|
|
|
2173
2187
|
value: true
|
|
2174
2188
|
}));
|
|
2175
2189
|
exports["default"] = void 0;
|
|
2190
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2176
2191
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
2177
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
2192
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
2178
2193
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
2194
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
2195
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
2179
2196
|
/**
|
|
2180
2197
|
* Caches the decoded peaks data to improve rendering speed for large audio
|
|
2181
2198
|
*
|
|
@@ -2383,9 +2400,12 @@ Object.defineProperty(exports, "__esModule", ({
|
|
|
2383
2400
|
exports["default"] = fetchFile;
|
|
2384
2401
|
var _observer = _interopRequireDefault(__webpack_require__(/*! ./observer */ "./src/util/observer.js"));
|
|
2385
2402
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
2403
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2386
2404
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
2387
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
2405
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
2388
2406
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
2407
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
2408
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
2389
2409
|
var ProgressHandler = /*#__PURE__*/function () {
|
|
2390
2410
|
/**
|
|
2391
2411
|
* Instantiate ProgressHandler
|
|
@@ -2854,9 +2874,12 @@ Object.defineProperty(exports, "__esModule", ({
|
|
|
2854
2874
|
value: true
|
|
2855
2875
|
}));
|
|
2856
2876
|
exports["default"] = void 0;
|
|
2877
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2857
2878
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
2858
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
2879
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
2859
2880
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
2881
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
2882
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
2860
2883
|
/**
|
|
2861
2884
|
* @typedef {Object} ListenerDescriptor
|
|
2862
2885
|
* @property {string} name The name of the event
|
|
@@ -3221,6 +3244,13 @@ exports["default"] = ignoreSilenceMode;
|
|
|
3221
3244
|
* @since 5.2.0
|
|
3222
3245
|
*/
|
|
3223
3246
|
function ignoreSilenceMode() {
|
|
3247
|
+
// Set webaudio context with 1 second silent audio 44100 bit rate buffer to allow playing audio even if silent switch is on the device
|
|
3248
|
+
var silentAC = new AudioContext();
|
|
3249
|
+
var silentBS = silentAC.createBufferSource();
|
|
3250
|
+
silentBS.buffer = silentAC.createBuffer(1, 1, 44100);
|
|
3251
|
+
silentBS.connect(silentAC.destination);
|
|
3252
|
+
silentBS.start();
|
|
3253
|
+
|
|
3224
3254
|
// Set the src to a short bit of url encoded as a silent mp3
|
|
3225
3255
|
// NOTE The silence MP3 must be high quality, when web audio sounds are played
|
|
3226
3256
|
// in parallel the web audio sound is mixed to match the bitrate of the html sound
|
|
@@ -3289,7 +3319,6 @@ module.exports = exports.default;
|
|
|
3289
3319
|
"use strict";
|
|
3290
3320
|
|
|
3291
3321
|
|
|
3292
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
3293
3322
|
Object.defineProperty(exports, "__esModule", ({
|
|
3294
3323
|
value: true
|
|
3295
3324
|
}));
|
|
@@ -3310,10 +3339,13 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
|
|
|
3310
3339
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
3311
3340
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
3312
3341
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
3313
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3342
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
3343
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
3314
3344
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
3315
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
3345
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
3316
3346
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
3347
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
3348
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
3317
3349
|
/*
|
|
3318
3350
|
* This work is licensed under a BSD-3-Clause License.
|
|
3319
3351
|
*/
|
|
@@ -3577,6 +3609,7 @@ var WaveSurfer = /*#__PURE__*/function (_util$Observer) {
|
|
|
3577
3609
|
* Extract relevant parameters (or defaults)
|
|
3578
3610
|
* @private
|
|
3579
3611
|
*/
|
|
3612
|
+
/** @private */
|
|
3580
3613
|
_defineProperty(_assertThisInitialized(_this), "defaultParams", {
|
|
3581
3614
|
audioContext: null,
|
|
3582
3615
|
audioScriptProcessor: null,
|
|
@@ -3637,11 +3670,21 @@ var WaveSurfer = /*#__PURE__*/function (_util$Observer) {
|
|
|
3637
3670
|
waveColor: '#999',
|
|
3638
3671
|
xhr: {}
|
|
3639
3672
|
});
|
|
3673
|
+
/** @private */
|
|
3640
3674
|
_defineProperty(_assertThisInitialized(_this), "backends", {
|
|
3641
3675
|
MediaElement: _mediaelement.default,
|
|
3642
3676
|
WebAudio: _webaudio.default,
|
|
3643
3677
|
MediaElementWebAudio: _mediaelementWebaudio.default
|
|
3644
3678
|
});
|
|
3679
|
+
/**
|
|
3680
|
+
* Functions in the `util` property are available as a prototype property to
|
|
3681
|
+
* all instances
|
|
3682
|
+
*
|
|
3683
|
+
* @type {Object}
|
|
3684
|
+
* @example
|
|
3685
|
+
* const wavesurfer = WaveSurfer.create(params);
|
|
3686
|
+
* wavesurfer.util.style(myElement, { background: 'blue' });
|
|
3687
|
+
*/
|
|
3645
3688
|
_defineProperty(_assertThisInitialized(_this), "util", util);
|
|
3646
3689
|
_this.params = Object.assign({}, _this.defaultParams, params);
|
|
3647
3690
|
_this.params.splitChannelsOptions = Object.assign({}, _this.defaultParams.splitChannelsOptions, params.splitChannelsOptions);
|
|
@@ -4288,6 +4331,10 @@ var WaveSurfer = /*#__PURE__*/function (_util$Observer) {
|
|
|
4288
4331
|
}, {
|
|
4289
4332
|
key: "setVolume",
|
|
4290
4333
|
value: function setVolume(newVolume) {
|
|
4334
|
+
if (this.isMuted === true) {
|
|
4335
|
+
this.savedVolume = newVolume;
|
|
4336
|
+
return;
|
|
4337
|
+
}
|
|
4291
4338
|
this.backend.setVolume(newVolume);
|
|
4292
4339
|
this.fireEvent('volume', newVolume);
|
|
4293
4340
|
}
|
|
@@ -5109,10 +5156,7 @@ var WaveSurfer = /*#__PURE__*/function (_util$Observer) {
|
|
|
5109
5156
|
}
|
|
5110
5157
|
}], [{
|
|
5111
5158
|
key: "create",
|
|
5112
|
-
value:
|
|
5113
|
-
|
|
5114
|
-
/** @private */
|
|
5115
|
-
|
|
5159
|
+
value:
|
|
5116
5160
|
/**
|
|
5117
5161
|
* Instantiate this class, call its `init` function and returns it
|
|
5118
5162
|
*
|
|
@@ -5137,7 +5181,15 @@ var WaveSurfer = /*#__PURE__*/function (_util$Observer) {
|
|
|
5137
5181
|
return WaveSurfer;
|
|
5138
5182
|
}(util.Observer);
|
|
5139
5183
|
exports["default"] = WaveSurfer;
|
|
5140
|
-
_defineProperty(WaveSurfer, "VERSION", "6.
|
|
5184
|
+
_defineProperty(WaveSurfer, "VERSION", "6.5.1");
|
|
5185
|
+
/**
|
|
5186
|
+
* Functions in the `util` property are available as a static property of the
|
|
5187
|
+
* WaveSurfer class
|
|
5188
|
+
*
|
|
5189
|
+
* @type {Object}
|
|
5190
|
+
* @example
|
|
5191
|
+
* WaveSurfer.util.style(myElement, { background: 'blue' });
|
|
5192
|
+
*/
|
|
5141
5193
|
_defineProperty(WaveSurfer, "util", util);
|
|
5142
5194
|
module.exports = exports.default;
|
|
5143
5195
|
|
|
@@ -5152,7 +5204,6 @@ module.exports = exports.default;
|
|
|
5152
5204
|
"use strict";
|
|
5153
5205
|
|
|
5154
5206
|
|
|
5155
|
-
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
5156
5207
|
Object.defineProperty(exports, "__esModule", ({
|
|
5157
5208
|
value: true
|
|
5158
5209
|
}));
|
|
@@ -5160,8 +5211,9 @@ exports["default"] = void 0;
|
|
|
5160
5211
|
var util = _interopRequireWildcard(__webpack_require__(/*! ./util */ "./src/util/index.js"));
|
|
5161
5212
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
5162
5213
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
5214
|
+
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
5163
5215
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
5164
|
-
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
|
|
5216
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
5165
5217
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
5166
5218
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
5167
5219
|
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
@@ -5170,7 +5222,9 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
|
|
|
5170
5222
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
5171
5223
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
5172
5224
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
5173
|
-
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5225
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
5226
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
|
5227
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
5174
5228
|
// using constants to prevent someone writing the string wrong
|
|
5175
5229
|
var PLAYING = 'playing';
|
|
5176
5230
|
var PAUSED = 'paused';
|
|
@@ -5195,8 +5249,11 @@ var WebAudio = /*#__PURE__*/function (_util$Observer) {
|
|
|
5195
5249
|
_classCallCheck(this, WebAudio);
|
|
5196
5250
|
_this = _super.call(this);
|
|
5197
5251
|
/** @private */
|
|
5252
|
+
/** audioContext: allows to process audio with WebAudio API */
|
|
5198
5253
|
_defineProperty(_assertThisInitialized(_this), "audioContext", null);
|
|
5254
|
+
/** @private */
|
|
5199
5255
|
_defineProperty(_assertThisInitialized(_this), "offlineAudioContext", null);
|
|
5256
|
+
/** @private */
|
|
5200
5257
|
_defineProperty(_assertThisInitialized(_this), "stateBehaviors", (_defineProperty2 = {}, _defineProperty(_defineProperty2, PLAYING, {
|
|
5201
5258
|
init: function init() {
|
|
5202
5259
|
this.addOnAudioProcess();
|
|
@@ -5285,13 +5342,6 @@ var WebAudio = /*#__PURE__*/function (_util$Observer) {
|
|
|
5285
5342
|
_createClass(WebAudio, [{
|
|
5286
5343
|
key: "supportsWebAudio",
|
|
5287
5344
|
value: /** scriptBufferSize: size of the processing buffer */
|
|
5288
|
-
|
|
5289
|
-
/** audioContext: allows to process audio with WebAudio API */
|
|
5290
|
-
|
|
5291
|
-
/** @private */
|
|
5292
|
-
|
|
5293
|
-
/** @private */
|
|
5294
|
-
|
|
5295
5345
|
/**
|
|
5296
5346
|
* Does the browser support this backend
|
|
5297
5347
|
*
|