videomail-client 6.0.17 → 6.0.19
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/package.json +11 -11
- package/prototype/js/videomail-client.js +61 -41
- package/prototype/js/videomail-client.min.js +2 -2
- package/prototype/js/videomail-client.min.js.map +1 -1
- package/src/js/util/browser.js +4 -4
- package/src/js/wrappers/visuals/recorder.js +2 -2
- package/src/js/wrappers/visuals/replay.js +10 -5
- package/test/util/browser.test.js +5 -5
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "videomail-client",
|
|
3
|
-
"version": "6.0.
|
|
3
|
+
"version": "6.0.19",
|
|
4
4
|
"description": "A wicked npm package to record videos directly in the browser, wohooo!",
|
|
5
5
|
"author": "Michael Heuberger <michael.heuberger@binarykitchen.com>",
|
|
6
6
|
"contributors": [
|
|
@@ -59,14 +59,14 @@
|
|
|
59
59
|
]
|
|
60
60
|
},
|
|
61
61
|
"dependencies": {
|
|
62
|
-
"@babel/runtime": "7.
|
|
62
|
+
"@babel/runtime": "7.22.5",
|
|
63
63
|
"add-eventlistener-with-options": "1.25.5",
|
|
64
64
|
"animitter": "3.0.0",
|
|
65
65
|
"audio-sample": "3.0.1",
|
|
66
66
|
"canvas-to-buffer": "3.0.1",
|
|
67
67
|
"classlist.js": "1.1.20150312",
|
|
68
68
|
"contains": "0.1.1",
|
|
69
|
-
"core-js": "3.
|
|
69
|
+
"core-js": "3.31.0",
|
|
70
70
|
"create-error": "0.3.1",
|
|
71
71
|
"deepmerge": "4.3.1",
|
|
72
72
|
"defined": "1.0.1",
|
|
@@ -91,19 +91,19 @@
|
|
|
91
91
|
"websocket-stream": "5.5.2"
|
|
92
92
|
},
|
|
93
93
|
"devDependencies": {
|
|
94
|
-
"@babel/core": "7.
|
|
95
|
-
"@babel/eslint-parser": "7.
|
|
96
|
-
"@babel/plugin-transform-runtime": "7.
|
|
97
|
-
"@babel/preset-env": "7.
|
|
94
|
+
"@babel/core": "7.22.5",
|
|
95
|
+
"@babel/eslint-parser": "7.22.5",
|
|
96
|
+
"@babel/plugin-transform-runtime": "7.22.5",
|
|
97
|
+
"@babel/preset-env": "7.22.5",
|
|
98
98
|
"audit-ci": "6.6.1",
|
|
99
99
|
"autoprefixer": "10.4.14",
|
|
100
100
|
"babelify": "10.0.0",
|
|
101
101
|
"body-parser": "1.20.2",
|
|
102
102
|
"browserify": "17.0.0",
|
|
103
103
|
"connect-send-json": "1.0.0",
|
|
104
|
-
"cssnano": "
|
|
104
|
+
"cssnano": "6.0.1",
|
|
105
105
|
"del": "6.1.1",
|
|
106
|
-
"eslint": "8.
|
|
106
|
+
"eslint": "8.43.0",
|
|
107
107
|
"eslint-config-prettier": "8.8.0",
|
|
108
108
|
"eslint-plugin-import": "2.27.5",
|
|
109
109
|
"eslint-plugin-node": "11.1.0",
|
|
@@ -128,8 +128,8 @@
|
|
|
128
128
|
"gulp-todo": "7.1.1",
|
|
129
129
|
"minimist": "1.2.8",
|
|
130
130
|
"nib": "1.2.0",
|
|
131
|
-
"postcss": "8.4.
|
|
132
|
-
"prettier": "2.8.
|
|
131
|
+
"postcss": "8.4.24",
|
|
132
|
+
"prettier": "2.8.8",
|
|
133
133
|
"router": "1.3.8",
|
|
134
134
|
"tape": "5.6.3",
|
|
135
135
|
"tape-catch": "1.0.6",
|
|
@@ -5122,7 +5122,7 @@ module.exports =
|
|
|
5122
5122
|
check(typeof self == 'object' && self) ||
|
|
5123
5123
|
check(typeof global == 'object' && global) ||
|
|
5124
5124
|
// eslint-disable-next-line no-new-func -- fallback
|
|
5125
|
-
(function () { return this; })() || Function('return this')();
|
|
5125
|
+
(function () { return this; })() || this || Function('return this')();
|
|
5126
5126
|
|
|
5127
5127
|
}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
|
|
5128
5128
|
},{}],97:[function(_dereq_,module,exports){
|
|
@@ -6938,10 +6938,10 @@ var store = _dereq_('../internals/shared-store');
|
|
|
6938
6938
|
(module.exports = function (key, value) {
|
|
6939
6939
|
return store[key] || (store[key] = value !== undefined ? value : {});
|
|
6940
6940
|
})('versions', []).push({
|
|
6941
|
-
version: '3.
|
|
6941
|
+
version: '3.31.0',
|
|
6942
6942
|
mode: IS_PURE ? 'pure' : 'global',
|
|
6943
6943
|
copyright: '© 2014-2023 Denis Pushkarev (zloirock.ru)',
|
|
6944
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.
|
|
6944
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.31.0/LICENSE',
|
|
6945
6945
|
source: 'https://github.com/zloirock/core-js'
|
|
6946
6946
|
});
|
|
6947
6947
|
|
|
@@ -7236,18 +7236,23 @@ module.exports = {
|
|
|
7236
7236
|
/* eslint-disable es/no-symbol -- required for testing */
|
|
7237
7237
|
var V8_VERSION = _dereq_('../internals/engine-v8-version');
|
|
7238
7238
|
var fails = _dereq_('../internals/fails');
|
|
7239
|
+
var global = _dereq_('../internals/global');
|
|
7240
|
+
|
|
7241
|
+
var $String = global.String;
|
|
7239
7242
|
|
|
7240
7243
|
// eslint-disable-next-line es/no-object-getownpropertysymbols -- required for testing
|
|
7241
7244
|
module.exports = !!Object.getOwnPropertySymbols && !fails(function () {
|
|
7242
7245
|
var symbol = Symbol();
|
|
7243
7246
|
// Chrome 38 Symbol has incorrect toString conversion
|
|
7244
7247
|
// `get-own-property-symbols` polyfill symbols converted to object are not Symbol instances
|
|
7245
|
-
|
|
7248
|
+
// nb: Do not call `String` directly to avoid this being optimized out to `symbol+''` which will,
|
|
7249
|
+
// of course, fail.
|
|
7250
|
+
return !$String(symbol) || !(Object(symbol) instanceof Symbol) ||
|
|
7246
7251
|
// Chrome 38-40 symbols are not inherited from DOM collections prototypes to instances
|
|
7247
7252
|
!Symbol.sham && V8_VERSION && V8_VERSION < 41;
|
|
7248
7253
|
});
|
|
7249
7254
|
|
|
7250
|
-
},{"../internals/engine-v8-version":76,"../internals/fails":80}],174:[function(_dereq_,module,exports){
|
|
7255
|
+
},{"../internals/engine-v8-version":76,"../internals/fails":80,"../internals/global":96}],174:[function(_dereq_,module,exports){
|
|
7251
7256
|
var global = _dereq_('../internals/global');
|
|
7252
7257
|
var apply = _dereq_('../internals/function-apply');
|
|
7253
7258
|
var bind = _dereq_('../internals/function-bind-context');
|
|
@@ -7908,13 +7913,15 @@ module.exports = !fails(function () {
|
|
|
7908
7913
|
// eslint-disable-next-line unicorn/relative-url-style -- required for testing
|
|
7909
7914
|
var url = new URL('b?a=1&b=2&c=3', 'http://a');
|
|
7910
7915
|
var searchParams = url.searchParams;
|
|
7916
|
+
var searchParams2 = new URLSearchParams('a=1&a=2');
|
|
7911
7917
|
var result = '';
|
|
7912
7918
|
url.pathname = 'c%20d';
|
|
7913
7919
|
searchParams.forEach(function (value, key) {
|
|
7914
7920
|
searchParams['delete']('b');
|
|
7915
7921
|
result += key + value;
|
|
7916
7922
|
});
|
|
7917
|
-
|
|
7923
|
+
searchParams2['delete']('a', 2);
|
|
7924
|
+
return (IS_PURE && (!url.toJSON || !searchParams2.has('a', 1) || searchParams2.has('a', 2)))
|
|
7918
7925
|
|| (!searchParams.size && (IS_PURE || !DESCRIPTORS))
|
|
7919
7926
|
|| !searchParams.sort
|
|
7920
7927
|
|| url.href !== 'http://a/c%20d?a=1&c=3'
|
|
@@ -10078,7 +10085,7 @@ var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
|
|
|
10078
10085
|
anInstance(this, URLSearchParamsPrototype);
|
|
10079
10086
|
var init = arguments.length > 0 ? arguments[0] : undefined;
|
|
10080
10087
|
var state = setInternalState(this, new URLSearchParamsState(init));
|
|
10081
|
-
if (!DESCRIPTORS) this.
|
|
10088
|
+
if (!DESCRIPTORS) this.size = state.entries.length;
|
|
10082
10089
|
};
|
|
10083
10090
|
|
|
10084
10091
|
var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
|
|
@@ -10087,32 +10094,37 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
10087
10094
|
// `URLSearchParams.prototype.append` method
|
|
10088
10095
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-append
|
|
10089
10096
|
append: function append(name, value) {
|
|
10090
|
-
validateArgumentsLength(arguments.length, 2);
|
|
10091
10097
|
var state = getInternalParamsState(this);
|
|
10098
|
+
validateArgumentsLength(arguments.length, 2);
|
|
10092
10099
|
push(state.entries, { key: $toString(name), value: $toString(value) });
|
|
10093
10100
|
if (!DESCRIPTORS) this.length++;
|
|
10094
10101
|
state.updateURL();
|
|
10095
10102
|
},
|
|
10096
10103
|
// `URLSearchParams.prototype.delete` method
|
|
10097
10104
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-delete
|
|
10098
|
-
'delete': function (name) {
|
|
10099
|
-
validateArgumentsLength(arguments.length, 1);
|
|
10105
|
+
'delete': function (name /* , value */) {
|
|
10100
10106
|
var state = getInternalParamsState(this);
|
|
10107
|
+
var length = validateArgumentsLength(arguments.length, 1);
|
|
10101
10108
|
var entries = state.entries;
|
|
10102
10109
|
var key = $toString(name);
|
|
10110
|
+
var $value = length < 2 ? undefined : arguments[1];
|
|
10111
|
+
var value = $value === undefined ? $value : $toString($value);
|
|
10103
10112
|
var index = 0;
|
|
10104
10113
|
while (index < entries.length) {
|
|
10105
|
-
|
|
10106
|
-
|
|
10114
|
+
var entry = entries[index];
|
|
10115
|
+
if (entry.key === key && (value === undefined || entry.value === value)) {
|
|
10116
|
+
splice(entries, index, 1);
|
|
10117
|
+
if (value !== undefined) break;
|
|
10118
|
+
} else index++;
|
|
10107
10119
|
}
|
|
10108
|
-
if (!DESCRIPTORS) this.
|
|
10120
|
+
if (!DESCRIPTORS) this.size = entries.length;
|
|
10109
10121
|
state.updateURL();
|
|
10110
10122
|
},
|
|
10111
10123
|
// `URLSearchParams.prototype.get` method
|
|
10112
10124
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-get
|
|
10113
10125
|
get: function get(name) {
|
|
10114
|
-
validateArgumentsLength(arguments.length, 1);
|
|
10115
10126
|
var entries = getInternalParamsState(this).entries;
|
|
10127
|
+
validateArgumentsLength(arguments.length, 1);
|
|
10116
10128
|
var key = $toString(name);
|
|
10117
10129
|
var index = 0;
|
|
10118
10130
|
for (; index < entries.length; index++) {
|
|
@@ -10123,8 +10135,8 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
10123
10135
|
// `URLSearchParams.prototype.getAll` method
|
|
10124
10136
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-getall
|
|
10125
10137
|
getAll: function getAll(name) {
|
|
10126
|
-
validateArgumentsLength(arguments.length, 1);
|
|
10127
10138
|
var entries = getInternalParamsState(this).entries;
|
|
10139
|
+
validateArgumentsLength(arguments.length, 1);
|
|
10128
10140
|
var key = $toString(name);
|
|
10129
10141
|
var result = [];
|
|
10130
10142
|
var index = 0;
|
|
@@ -10135,21 +10147,24 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
10135
10147
|
},
|
|
10136
10148
|
// `URLSearchParams.prototype.has` method
|
|
10137
10149
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-has
|
|
10138
|
-
has: function has(name) {
|
|
10139
|
-
validateArgumentsLength(arguments.length, 1);
|
|
10150
|
+
has: function has(name /* , value */) {
|
|
10140
10151
|
var entries = getInternalParamsState(this).entries;
|
|
10152
|
+
var length = validateArgumentsLength(arguments.length, 1);
|
|
10141
10153
|
var key = $toString(name);
|
|
10154
|
+
var $value = length < 2 ? undefined : arguments[1];
|
|
10155
|
+
var value = $value === undefined ? $value : $toString($value);
|
|
10142
10156
|
var index = 0;
|
|
10143
10157
|
while (index < entries.length) {
|
|
10144
|
-
|
|
10158
|
+
var entry = entries[index++];
|
|
10159
|
+
if (entry.key === key && (value === undefined || entry.value === value)) return true;
|
|
10145
10160
|
}
|
|
10146
10161
|
return false;
|
|
10147
10162
|
},
|
|
10148
10163
|
// `URLSearchParams.prototype.set` method
|
|
10149
10164
|
// https://url.spec.whatwg.org/#dom-urlsearchparams-set
|
|
10150
10165
|
set: function set(name, value) {
|
|
10151
|
-
validateArgumentsLength(arguments.length, 1);
|
|
10152
10166
|
var state = getInternalParamsState(this);
|
|
10167
|
+
validateArgumentsLength(arguments.length, 1);
|
|
10153
10168
|
var entries = state.entries;
|
|
10154
10169
|
var found = false;
|
|
10155
10170
|
var key = $toString(name);
|
|
@@ -10167,7 +10182,7 @@ defineBuiltIns(URLSearchParamsPrototype, {
|
|
|
10167
10182
|
}
|
|
10168
10183
|
}
|
|
10169
10184
|
if (!found) push(entries, { key: key, value: val });
|
|
10170
|
-
if (!DESCRIPTORS) this.
|
|
10185
|
+
if (!DESCRIPTORS) this.size = entries.length;
|
|
10171
10186
|
state.updateURL();
|
|
10172
10187
|
},
|
|
10173
10188
|
// `URLSearchParams.prototype.sort` method
|
|
@@ -26459,7 +26474,7 @@ function wrappy (fn, cb) {
|
|
|
26459
26474
|
},{}],358:[function(_dereq_,module,exports){
|
|
26460
26475
|
module.exports={
|
|
26461
26476
|
"name": "videomail-client",
|
|
26462
|
-
"version": "6.0.
|
|
26477
|
+
"version": "6.0.19",
|
|
26463
26478
|
"description": "A wicked npm package to record videos directly in the browser, wohooo!",
|
|
26464
26479
|
"author": "Michael Heuberger <michael.heuberger@binarykitchen.com>",
|
|
26465
26480
|
"contributors": [
|
|
@@ -26518,14 +26533,14 @@ module.exports={
|
|
|
26518
26533
|
]
|
|
26519
26534
|
},
|
|
26520
26535
|
"dependencies": {
|
|
26521
|
-
"@babel/runtime": "7.
|
|
26536
|
+
"@babel/runtime": "7.22.5",
|
|
26522
26537
|
"add-eventlistener-with-options": "1.25.5",
|
|
26523
26538
|
"animitter": "3.0.0",
|
|
26524
26539
|
"audio-sample": "3.0.1",
|
|
26525
26540
|
"canvas-to-buffer": "3.0.1",
|
|
26526
26541
|
"classlist.js": "1.1.20150312",
|
|
26527
26542
|
"contains": "0.1.1",
|
|
26528
|
-
"core-js": "3.
|
|
26543
|
+
"core-js": "3.31.0",
|
|
26529
26544
|
"create-error": "0.3.1",
|
|
26530
26545
|
"deepmerge": "4.3.1",
|
|
26531
26546
|
"defined": "1.0.1",
|
|
@@ -26550,19 +26565,19 @@ module.exports={
|
|
|
26550
26565
|
"websocket-stream": "5.5.2"
|
|
26551
26566
|
},
|
|
26552
26567
|
"devDependencies": {
|
|
26553
|
-
"@babel/core": "7.
|
|
26554
|
-
"@babel/eslint-parser": "7.
|
|
26555
|
-
"@babel/plugin-transform-runtime": "7.
|
|
26556
|
-
"@babel/preset-env": "7.
|
|
26568
|
+
"@babel/core": "7.22.5",
|
|
26569
|
+
"@babel/eslint-parser": "7.22.5",
|
|
26570
|
+
"@babel/plugin-transform-runtime": "7.22.5",
|
|
26571
|
+
"@babel/preset-env": "7.22.5",
|
|
26557
26572
|
"audit-ci": "6.6.1",
|
|
26558
26573
|
"autoprefixer": "10.4.14",
|
|
26559
26574
|
"babelify": "10.0.0",
|
|
26560
26575
|
"body-parser": "1.20.2",
|
|
26561
26576
|
"browserify": "17.0.0",
|
|
26562
26577
|
"connect-send-json": "1.0.0",
|
|
26563
|
-
"cssnano": "
|
|
26578
|
+
"cssnano": "6.0.1",
|
|
26564
26579
|
"del": "6.1.1",
|
|
26565
|
-
"eslint": "8.
|
|
26580
|
+
"eslint": "8.43.0",
|
|
26566
26581
|
"eslint-config-prettier": "8.8.0",
|
|
26567
26582
|
"eslint-plugin-import": "2.27.5",
|
|
26568
26583
|
"eslint-plugin-node": "11.1.0",
|
|
@@ -26587,8 +26602,8 @@ module.exports={
|
|
|
26587
26602
|
"gulp-todo": "7.1.1",
|
|
26588
26603
|
"minimist": "1.2.8",
|
|
26589
26604
|
"nib": "1.2.0",
|
|
26590
|
-
"postcss": "8.4.
|
|
26591
|
-
"prettier": "2.8.
|
|
26605
|
+
"postcss": "8.4.24",
|
|
26606
|
+
"prettier": "2.8.8",
|
|
26592
26607
|
"router": "1.3.8",
|
|
26593
26608
|
"tape": "5.6.3",
|
|
26594
26609
|
"tape-catch": "1.0.6",
|
|
@@ -27429,7 +27444,7 @@ _dereq_("core-js/modules/es.typed-array.to-string.js");
|
|
|
27429
27444
|
var _defined = _interopRequireDefault(_dereq_("defined"));
|
|
27430
27445
|
var _uaParserJs = _interopRequireDefault(_dereq_("ua-parser-js"));
|
|
27431
27446
|
var _videomailError = _interopRequireDefault(_dereq_("./videomailError"));
|
|
27432
|
-
var FALLBACK_VIDEO_TYPE = '
|
|
27447
|
+
var FALLBACK_VIDEO_TYPE = 'mp4';
|
|
27433
27448
|
var Browser = function Browser(options) {
|
|
27434
27449
|
options = options || {};
|
|
27435
27450
|
var firefoxDownload = 'http://www.mozilla.org/firefox/update/';
|
|
@@ -27592,10 +27607,10 @@ var Browser = function Browser(options) {
|
|
|
27592
27607
|
}
|
|
27593
27608
|
this.getVideoType = function (video) {
|
|
27594
27609
|
if (!videoType && video) {
|
|
27595
|
-
if (canPlayType(video, '
|
|
27596
|
-
videoType = 'webm';
|
|
27597
|
-
} else if (canPlayType(video, 'mp4')) {
|
|
27610
|
+
if (canPlayType(video, 'mp4')) {
|
|
27598
27611
|
videoType = 'mp4';
|
|
27612
|
+
} else if (canPlayType(video, 'webm')) {
|
|
27613
|
+
videoType = 'webm';
|
|
27599
27614
|
}
|
|
27600
27615
|
}
|
|
27601
27616
|
if (videoType !== 'webm' && videoType !== 'mp4') {
|
|
@@ -31049,6 +31064,7 @@ _dereq_("core-js/modules/web.timers.js");
|
|
|
31049
31064
|
_dereq_("core-js/modules/es.number.to-fixed.js");
|
|
31050
31065
|
_dereq_("core-js/modules/es.date.now.js");
|
|
31051
31066
|
_dereq_("core-js/modules/es.date.to-string.js");
|
|
31067
|
+
_dereq_("core-js/modules/es.object.keys.js");
|
|
31052
31068
|
_dereq_("core-js/modules/es.object.to-string.js");
|
|
31053
31069
|
_dereq_("core-js/modules/es.regexp.to-string.js");
|
|
31054
31070
|
_dereq_("core-js/modules/es.function.name.js");
|
|
@@ -31396,7 +31412,7 @@ var Recorder = function Recorder(visuals, replay) {
|
|
|
31396
31412
|
clearUserMediaTimeout();
|
|
31397
31413
|
debug('Recorder: userMediaErrorCallback()', ', name:', err.name, ', message:', err.message, ', Webcam characteristics:', userMedia.getCharacteristics(),
|
|
31398
31414
|
// added recently in the hope to investigate weird webcam issues
|
|
31399
|
-
', extraA arguments:', extraA.toString(), ', extraB arguments:', extraB.toString());
|
|
31415
|
+
', extraA arguments:', extraA ? extraA.toString() : undefined, ', extraB arguments:', extraB ? extraB.toString() : undefined);
|
|
31400
31416
|
var errorListeners = self.listeners(_events["default"].ERROR);
|
|
31401
31417
|
if (errorListeners && errorListeners.length) {
|
|
31402
31418
|
if (err.name !== _videomailError["default"].MEDIA_DEVICE_NOT_SUPPORTED) {
|
|
@@ -32092,7 +32108,7 @@ var _default = Recorder;
|
|
|
32092
32108
|
exports["default"] = _default;
|
|
32093
32109
|
|
|
32094
32110
|
}).call(this)}).call(this,_dereq_("buffer").Buffer)
|
|
32095
|
-
},{"../../constants":360,"../../events":361,"../../util/browser":365,"../../util/eventEmitter":367,"../../util/humanize":368,"../../util/pretty":370,"../../util/videomailError":372,"./userMedia":388,"@babel/runtime/helpers/interopRequireDefault":1,"animitter":4,"buffer":11,"canvas-to-buffer":14,"core-js/modules/es.array.concat.js":205,"core-js/modules/es.date.now.js":212,"core-js/modules/es.date.to-string.js":213,"core-js/modules/es.function.bind.js":214,"core-js/modules/es.function.name.js":215,"core-js/modules/es.number.to-fixed.js":216,"core-js/modules/es.object.define-property.js":217,"core-js/modules/es.object.to-string.js":220,"core-js/modules/es.regexp.to-string.js":231,"core-js/modules/web.timers.js":262,"deepmerge":269,"hidden":293,"hyperscript":295,"safe-json-stringify":337,"util":351,"websocket-stream":354}],387:[function(_dereq_,module,exports){
|
|
32111
|
+
},{"../../constants":360,"../../events":361,"../../util/browser":365,"../../util/eventEmitter":367,"../../util/humanize":368,"../../util/pretty":370,"../../util/videomailError":372,"./userMedia":388,"@babel/runtime/helpers/interopRequireDefault":1,"animitter":4,"buffer":11,"canvas-to-buffer":14,"core-js/modules/es.array.concat.js":205,"core-js/modules/es.date.now.js":212,"core-js/modules/es.date.to-string.js":213,"core-js/modules/es.function.bind.js":214,"core-js/modules/es.function.name.js":215,"core-js/modules/es.number.to-fixed.js":216,"core-js/modules/es.object.define-property.js":217,"core-js/modules/es.object.keys.js":219,"core-js/modules/es.object.to-string.js":220,"core-js/modules/es.regexp.to-string.js":231,"core-js/modules/web.timers.js":262,"deepmerge":269,"hidden":293,"hyperscript":295,"safe-json-stringify":337,"util":351,"websocket-stream":354}],387:[function(_dereq_,module,exports){
|
|
32096
32112
|
"use strict";
|
|
32097
32113
|
|
|
32098
32114
|
_dereq_("core-js/modules/es.object.define-property.js");
|
|
@@ -32173,12 +32189,12 @@ var Replay = function Replay(parentElement, options) {
|
|
|
32173
32189
|
this.setVideomail = function (newVideomail) {
|
|
32174
32190
|
videomail = newVideomail;
|
|
32175
32191
|
if (videomail) {
|
|
32176
|
-
if (videomail.webm) {
|
|
32177
|
-
this.setWebMSource(videomail.webm);
|
|
32178
|
-
}
|
|
32179
32192
|
if (videomail.mp4) {
|
|
32180
32193
|
this.setMp4Source(videomail.mp4);
|
|
32181
32194
|
}
|
|
32195
|
+
if (videomail.webm) {
|
|
32196
|
+
this.setWebMSource(videomail.webm);
|
|
32197
|
+
}
|
|
32182
32198
|
if (videomail.poster) {
|
|
32183
32199
|
replayElement.setAttribute('poster', videomail.poster);
|
|
32184
32200
|
}
|
|
@@ -32301,10 +32317,14 @@ var Replay = function Replay(parentElement, options) {
|
|
|
32301
32317
|
}
|
|
32302
32318
|
if (!source) {
|
|
32303
32319
|
if (src) {
|
|
32320
|
+
var fps = options.video.fps;
|
|
32321
|
+
|
|
32322
|
+
// Ensure it's greater than the frame duration itself
|
|
32323
|
+
var t = 2 * (1 / fps);
|
|
32304
32324
|
source = (0, _hyperscript["default"])('source', {
|
|
32305
32325
|
// Ensures HTML video thumbnail turns up on iOS, see
|
|
32306
32326
|
// https://muffinman.io/blog/hack-for-ios-safari-to-display-html-video-thumbnail/
|
|
32307
|
-
src: src + '#t=
|
|
32327
|
+
src: src + '#t=' + t,
|
|
32308
32328
|
type: 'video/' + type
|
|
32309
32329
|
});
|
|
32310
32330
|
replayElement.appendChild(source);
|