@bigbinary/neeto-media-recorder 2.6.0 → 2.6.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/core.js +146 -65
- package/core.js.map +1 -1
- package/package.json +2 -1
package/core.js
CHANGED
|
@@ -519,6 +519,59 @@ try {
|
|
|
519
519
|
|
|
520
520
|
var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
|
|
521
521
|
|
|
522
|
+
const byteToHex = [];
|
|
523
|
+
for (let i = 0; i < 256; ++i) {
|
|
524
|
+
byteToHex.push((i + 0x100).toString(16).slice(1));
|
|
525
|
+
}
|
|
526
|
+
function unsafeStringify(arr, offset = 0) {
|
|
527
|
+
return (byteToHex[arr[offset + 0]] +
|
|
528
|
+
byteToHex[arr[offset + 1]] +
|
|
529
|
+
byteToHex[arr[offset + 2]] +
|
|
530
|
+
byteToHex[arr[offset + 3]] +
|
|
531
|
+
'-' +
|
|
532
|
+
byteToHex[arr[offset + 4]] +
|
|
533
|
+
byteToHex[arr[offset + 5]] +
|
|
534
|
+
'-' +
|
|
535
|
+
byteToHex[arr[offset + 6]] +
|
|
536
|
+
byteToHex[arr[offset + 7]] +
|
|
537
|
+
'-' +
|
|
538
|
+
byteToHex[arr[offset + 8]] +
|
|
539
|
+
byteToHex[arr[offset + 9]] +
|
|
540
|
+
'-' +
|
|
541
|
+
byteToHex[arr[offset + 10]] +
|
|
542
|
+
byteToHex[arr[offset + 11]] +
|
|
543
|
+
byteToHex[arr[offset + 12]] +
|
|
544
|
+
byteToHex[arr[offset + 13]] +
|
|
545
|
+
byteToHex[arr[offset + 14]] +
|
|
546
|
+
byteToHex[arr[offset + 15]]).toLowerCase();
|
|
547
|
+
}
|
|
548
|
+
|
|
549
|
+
let getRandomValues;
|
|
550
|
+
const rnds8 = new Uint8Array(16);
|
|
551
|
+
function rng() {
|
|
552
|
+
if (!getRandomValues) {
|
|
553
|
+
if (typeof crypto === 'undefined' || !crypto.getRandomValues) {
|
|
554
|
+
throw new Error('crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported');
|
|
555
|
+
}
|
|
556
|
+
getRandomValues = crypto.getRandomValues.bind(crypto);
|
|
557
|
+
}
|
|
558
|
+
return getRandomValues(rnds8);
|
|
559
|
+
}
|
|
560
|
+
|
|
561
|
+
const randomUUID = typeof crypto !== 'undefined' && crypto.randomUUID && crypto.randomUUID.bind(crypto);
|
|
562
|
+
var native = { randomUUID };
|
|
563
|
+
|
|
564
|
+
function v4(options, buf, offset) {
|
|
565
|
+
if (native.randomUUID && !buf && !options) {
|
|
566
|
+
return native.randomUUID();
|
|
567
|
+
}
|
|
568
|
+
options = options || {};
|
|
569
|
+
const rnds = options.random || (options.rng || rng)();
|
|
570
|
+
rnds[6] = (rnds[6] & 0x0f) | 0x40;
|
|
571
|
+
rnds[8] = (rnds[8] & 0x3f) | 0x80;
|
|
572
|
+
return unsafeStringify(rnds);
|
|
573
|
+
}
|
|
574
|
+
|
|
522
575
|
function _setPrototypeOf(o, p) {
|
|
523
576
|
_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {
|
|
524
577
|
o.__proto__ = p;
|
|
@@ -864,27 +917,6 @@ var isMp4Supported = function isMp4Supported() {
|
|
|
864
917
|
return getSupportedMimeType() === MIME_TYPE$1.mp4;
|
|
865
918
|
};
|
|
866
919
|
|
|
867
|
-
/**
|
|
868
|
-
* Due to the custom axios interceptor for s3Api,
|
|
869
|
-
* it'll return false for cancelled requests instead of a cancelled error object.
|
|
870
|
-
*/
|
|
871
|
-
var isNotCancelledRequest = function isNotCancelledRequest(resolvedResponse) {
|
|
872
|
-
return typeof resolvedResponse !== "boolean";
|
|
873
|
-
};
|
|
874
|
-
var calculateUploadProgress = function calculateUploadProgress(uploadProgress) {
|
|
875
|
-
var total = Object.values(uploadProgress).reduce(function (sum, part) {
|
|
876
|
-
return sum + part.total;
|
|
877
|
-
}, 0);
|
|
878
|
-
var uploaded = Object.values(uploadProgress).reduce(function (sum, part) {
|
|
879
|
-
return sum + part.uploaded;
|
|
880
|
-
}, 0);
|
|
881
|
-
return Math.round(uploaded * 100 / total);
|
|
882
|
-
};
|
|
883
|
-
|
|
884
|
-
function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
885
|
-
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
886
|
-
function _classPrivateFieldInitSpec$1(obj, privateMap, value) { _checkPrivateRedeclaration$1(obj, privateMap); privateMap.set(obj, value); }
|
|
887
|
-
function _checkPrivateRedeclaration$1(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
|
888
920
|
var createPrefixedLogger = function createPrefixedLogger(prefix) {
|
|
889
921
|
return {
|
|
890
922
|
info: function info() {
|
|
@@ -917,6 +949,28 @@ var createPrefixedLogger = function createPrefixedLogger(prefix) {
|
|
|
917
949
|
}
|
|
918
950
|
};
|
|
919
951
|
};
|
|
952
|
+
|
|
953
|
+
/**
|
|
954
|
+
* Due to the custom axios interceptor for s3Api,
|
|
955
|
+
* it'll return false for cancelled requests instead of a cancelled error object.
|
|
956
|
+
*/
|
|
957
|
+
var isNotCancelledRequest = function isNotCancelledRequest(resolvedResponse) {
|
|
958
|
+
return typeof resolvedResponse !== "boolean";
|
|
959
|
+
};
|
|
960
|
+
var calculateUploadProgress = function calculateUploadProgress(uploadProgress) {
|
|
961
|
+
var total = Object.values(uploadProgress).reduce(function (sum, part) {
|
|
962
|
+
return sum + part.total;
|
|
963
|
+
}, 0);
|
|
964
|
+
var uploaded = Object.values(uploadProgress).reduce(function (sum, part) {
|
|
965
|
+
return sum + part.uploaded;
|
|
966
|
+
}, 0);
|
|
967
|
+
return Math.round(uploaded * 100 / total);
|
|
968
|
+
};
|
|
969
|
+
|
|
970
|
+
function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
971
|
+
function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
972
|
+
function _classPrivateFieldInitSpec$1(obj, privateMap, value) { _checkPrivateRedeclaration$1(obj, privateMap); privateMap.set(obj, value); }
|
|
973
|
+
function _checkPrivateRedeclaration$1(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
|
920
974
|
var _recordingId = /*#__PURE__*/new WeakMap();
|
|
921
975
|
var _uploadId = /*#__PURE__*/new WeakMap();
|
|
922
976
|
var _unUploadedChunks = /*#__PURE__*/new WeakMap();
|
|
@@ -930,18 +984,18 @@ var _failedUpload = /*#__PURE__*/new WeakMap();
|
|
|
930
984
|
var _uploadProgress = /*#__PURE__*/new WeakMap();
|
|
931
985
|
var _status = /*#__PURE__*/new WeakMap();
|
|
932
986
|
var _id = /*#__PURE__*/new WeakMap();
|
|
933
|
-
var
|
|
987
|
+
var _logger$1 = /*#__PURE__*/new WeakMap();
|
|
934
988
|
var _status2 = /*#__PURE__*/new WeakMap();
|
|
935
989
|
var _fireCallbacks$1 = /*#__PURE__*/new WeakMap();
|
|
936
990
|
var _uploadChunkToS = /*#__PURE__*/new WeakMap();
|
|
937
991
|
var _getCurrentUnUploadedBlob = /*#__PURE__*/new WeakMap();
|
|
938
|
-
var
|
|
992
|
+
var _isRecordingNotSet = /*#__PURE__*/new WeakMap();
|
|
939
993
|
var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
940
994
|
function MultipartS3Uploader() {
|
|
941
995
|
var _this = this;
|
|
942
996
|
_classCallCheck(this, MultipartS3Uploader);
|
|
943
|
-
_classPrivateFieldInitSpec$1(this,
|
|
944
|
-
get:
|
|
997
|
+
_classPrivateFieldInitSpec$1(this, _isRecordingNotSet, {
|
|
998
|
+
get: _get_isRecordingNotSet,
|
|
945
999
|
set: void 0
|
|
946
1000
|
});
|
|
947
1001
|
_classPrivateFieldInitSpec$1(this, _status2, {
|
|
@@ -999,9 +1053,9 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
999
1053
|
});
|
|
1000
1054
|
_classPrivateFieldInitSpec$1(this, _id, {
|
|
1001
1055
|
writable: true,
|
|
1002
|
-
value:
|
|
1056
|
+
value: v4()
|
|
1003
1057
|
});
|
|
1004
|
-
_classPrivateFieldInitSpec$1(this,
|
|
1058
|
+
_classPrivateFieldInitSpec$1(this, _logger$1, {
|
|
1005
1059
|
writable: true,
|
|
1006
1060
|
value: createPrefixedLogger("[".concat(_classPrivateFieldGet(this, _id), "]"))
|
|
1007
1061
|
});
|
|
@@ -1014,8 +1068,8 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1014
1068
|
if (data.size > 0) {
|
|
1015
1069
|
_classPrivateFieldGet(_this, _unUploadedChunks).push(data);
|
|
1016
1070
|
}
|
|
1017
|
-
if (_classPrivateFieldGet(_this,
|
|
1018
|
-
_classPrivateFieldGet(_this,
|
|
1071
|
+
if (_classPrivateFieldGet(_this, _isRecordingNotSet)) return;
|
|
1072
|
+
_classPrivateFieldGet(_this, _logger$1).info("Current unuploaded data size is ", _classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size / 1024 / 1024, "MB");
|
|
1019
1073
|
if (_classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size > _this.MIN_UPLOAD_CHUNK_SIZE) {
|
|
1020
1074
|
var uploadChunkToS3Promise = _classPrivateFieldGet(_this, _uploadChunkToS).call(_this, _classPrivateFieldGet(_this, _unUploadedChunks));
|
|
1021
1075
|
_classPrivateFieldGet(_this, _pendingS3ChunkUploads).push(uploadChunkToS3Promise);
|
|
@@ -1029,16 +1083,16 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1029
1083
|
case 0:
|
|
1030
1084
|
_context.prev = 0;
|
|
1031
1085
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.uploading);
|
|
1032
|
-
if (!_classPrivateFieldGet(_this,
|
|
1086
|
+
if (!_classPrivateFieldGet(_this, _isRecordingNotSet)) {
|
|
1033
1087
|
_context.next = 5;
|
|
1034
1088
|
break;
|
|
1035
1089
|
}
|
|
1036
|
-
_classPrivateFieldGet(_this,
|
|
1090
|
+
_classPrivateFieldGet(_this, _logger$1).error("completeUpload -> not initialized");
|
|
1037
1091
|
return _context.abrupt("return");
|
|
1038
1092
|
case 5:
|
|
1039
1093
|
// Upload last chunk; only if last chunk has data
|
|
1040
1094
|
if (_classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size > 0) {
|
|
1041
|
-
_classPrivateFieldGet(_this,
|
|
1095
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> need to upload last chunk");
|
|
1042
1096
|
uploadChunkToS3Promise = _classPrivateFieldGet(_this, _uploadChunkToS).call(_this, _classPrivateFieldGet(_this, _unUploadedChunks));
|
|
1043
1097
|
_classPrivateFieldGet(_this, _pendingS3ChunkUploads).push(uploadChunkToS3Promise);
|
|
1044
1098
|
}
|
|
@@ -1051,11 +1105,11 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1051
1105
|
* adding the new presignedUrl part upload to s3PartUploadPromises.
|
|
1052
1106
|
* This results in incorrect partNumbers.
|
|
1053
1107
|
*/
|
|
1054
|
-
_classPrivateFieldGet(_this,
|
|
1108
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> uploading all pending chunks...", _classPrivateFieldGet(_this, _pendingS3ChunkUploads).length);
|
|
1055
1109
|
_context.next = 9;
|
|
1056
1110
|
return Promise.all(_classPrivateFieldGet(_this, _pendingS3ChunkUploads));
|
|
1057
1111
|
case 9:
|
|
1058
|
-
_classPrivateFieldGet(_this,
|
|
1112
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> finishing part uploads...");
|
|
1059
1113
|
_context.next = 12;
|
|
1060
1114
|
return Promise.all(_classPrivateFieldGet(_this, _s3PartUploadPromises));
|
|
1061
1115
|
case 12:
|
|
@@ -1064,7 +1118,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1064
1118
|
_context.next = 18;
|
|
1065
1119
|
break;
|
|
1066
1120
|
}
|
|
1067
|
-
_classPrivateFieldGet(_this,
|
|
1121
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> chunks with these partNumbers failed:", _classPrivateFieldGet(_this, _failedUpload));
|
|
1068
1122
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.error);
|
|
1069
1123
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onError);
|
|
1070
1124
|
return _context.abrupt("return");
|
|
@@ -1073,7 +1127,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1073
1127
|
_context.next = 22;
|
|
1074
1128
|
break;
|
|
1075
1129
|
}
|
|
1076
|
-
_classPrivateFieldGet(_this,
|
|
1130
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> insufficient data");
|
|
1077
1131
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.insufficient_data);
|
|
1078
1132
|
return _context.abrupt("return");
|
|
1079
1133
|
case 22:
|
|
@@ -1085,7 +1139,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1085
1139
|
}).toSorted(function (a, b) {
|
|
1086
1140
|
return Number(a.partNumber) - Number(b.partNumber);
|
|
1087
1141
|
});
|
|
1088
|
-
_classPrivateFieldGet(_this,
|
|
1142
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> uploaded parts: ", parts);
|
|
1089
1143
|
_classPrivateFieldSet(_this, _completeUploadPromise, completeUploadApi.create({
|
|
1090
1144
|
recordingId: _classPrivateFieldGet(_this, _recordingId),
|
|
1091
1145
|
payload: {
|
|
@@ -1097,16 +1151,16 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1097
1151
|
signal: _classPrivateFieldGet(_this, _abortController).signal
|
|
1098
1152
|
}
|
|
1099
1153
|
}));
|
|
1100
|
-
_classPrivateFieldGet(_this,
|
|
1154
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> completing upload... ");
|
|
1101
1155
|
_context.next = 28;
|
|
1102
1156
|
return _classPrivateFieldGet(_this, _completeUploadPromise);
|
|
1103
1157
|
case 28:
|
|
1104
|
-
_classPrivateFieldGet(_this,
|
|
1158
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> upload completed");
|
|
1105
1159
|
if (!(_this.status === UPLOAD_STATUS.aborting)) {
|
|
1106
1160
|
_context.next = 32;
|
|
1107
1161
|
break;
|
|
1108
1162
|
}
|
|
1109
|
-
_classPrivateFieldGet(_this,
|
|
1163
|
+
_classPrivateFieldGet(_this, _logger$1).info("completeUpload -> upload was marked as aborted");
|
|
1110
1164
|
return _context.abrupt("return");
|
|
1111
1165
|
case 32:
|
|
1112
1166
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.completed);
|
|
@@ -1120,7 +1174,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1120
1174
|
if (!axios.isCancel(_context.t0)) {
|
|
1121
1175
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.error);
|
|
1122
1176
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onError);
|
|
1123
|
-
_classPrivateFieldGet(_this,
|
|
1177
|
+
_classPrivateFieldGet(_this, _logger$1).error(_context.t0);
|
|
1124
1178
|
}
|
|
1125
1179
|
case 39:
|
|
1126
1180
|
_context.prev = 39;
|
|
@@ -1146,15 +1200,15 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1146
1200
|
_context2.next = 5;
|
|
1147
1201
|
break;
|
|
1148
1202
|
}
|
|
1149
|
-
_classPrivateFieldGet(_this,
|
|
1203
|
+
_classPrivateFieldGet(_this, _logger$1).info("abortUpload -> already aborting");
|
|
1150
1204
|
return _context2.abrupt("return");
|
|
1151
1205
|
case 5:
|
|
1152
1206
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.aborting);
|
|
1153
|
-
if (!_classPrivateFieldGet(_this,
|
|
1207
|
+
if (!_classPrivateFieldGet(_this, _isRecordingNotSet)) {
|
|
1154
1208
|
_context2.next = 9;
|
|
1155
1209
|
break;
|
|
1156
1210
|
}
|
|
1157
|
-
_classPrivateFieldGet(_this,
|
|
1211
|
+
_classPrivateFieldGet(_this, _logger$1).info("abortUpload -> not initialized");
|
|
1158
1212
|
return _context2.abrupt("return");
|
|
1159
1213
|
case 9:
|
|
1160
1214
|
recordingId = _classPrivateFieldGet(_this, _recordingId);
|
|
@@ -1172,7 +1226,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1172
1226
|
}
|
|
1173
1227
|
});
|
|
1174
1228
|
case 16:
|
|
1175
|
-
_classPrivateFieldGet(_this,
|
|
1229
|
+
_classPrivateFieldGet(_this, _logger$1).info("abortUpload -> abort successful");
|
|
1176
1230
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onAbort);
|
|
1177
1231
|
_classPrivateFieldSet(_this, _unUploadedChunks, []);
|
|
1178
1232
|
_classPrivateFieldSet(_this, _partNumber, 1);
|
|
@@ -1184,7 +1238,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1184
1238
|
case 25:
|
|
1185
1239
|
_context2.prev = 25;
|
|
1186
1240
|
_context2.t0 = _context2["catch"](1);
|
|
1187
|
-
_classPrivateFieldGet(_this,
|
|
1241
|
+
_classPrivateFieldGet(_this, _logger$1).error(_context2.t0);
|
|
1188
1242
|
case 28:
|
|
1189
1243
|
case "end":
|
|
1190
1244
|
return _context2.stop();
|
|
@@ -1233,7 +1287,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1233
1287
|
return _regeneratorRuntime.wrap(function _callee3$(_context3) {
|
|
1234
1288
|
while (1) switch (_context3.prev = _context3.next) {
|
|
1235
1289
|
case 0:
|
|
1236
|
-
_classPrivateFieldGet(_this,
|
|
1290
|
+
_classPrivateFieldGet(_this, _logger$1).info("Part ready to be uploaded: ", _classPrivateFieldGet(_this, _partNumber));
|
|
1237
1291
|
partNumber = _classPrivateFieldGet(_this, _partNumber);
|
|
1238
1292
|
mimeType = getSupportedMimeType();
|
|
1239
1293
|
_classPrivateFieldSet(_this, _partNumber, (_this$partNumber = _classPrivateFieldGet(_this, _partNumber), _this$partNumber++, _this$partNumber));
|
|
@@ -1259,7 +1313,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1259
1313
|
case 8:
|
|
1260
1314
|
_yield$partPresignedU = _context3.sent;
|
|
1261
1315
|
presignedUrl = _yield$partPresignedU.presignedUrl;
|
|
1262
|
-
_classPrivateFieldGet(_this,
|
|
1316
|
+
_classPrivateFieldGet(_this, _logger$1).info("Presigned url created for partNumber:", partNumber);
|
|
1263
1317
|
s3PartUploadPromise = s3Api.presignedUpload({
|
|
1264
1318
|
presignedUrl: presignedUrl,
|
|
1265
1319
|
blob: new Blob(chunks, {
|
|
@@ -1275,7 +1329,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1275
1329
|
};
|
|
1276
1330
|
if (_this.status === UPLOAD_STATUS.uploading) {
|
|
1277
1331
|
var percentCompleted = calculateUploadProgress(_classPrivateFieldGet(_this, _uploadProgress));
|
|
1278
|
-
_classPrivateFieldGet(_this,
|
|
1332
|
+
_classPrivateFieldGet(_this, _logger$1).info("Upload Progress: ".concat(percentCompleted, "%"));
|
|
1279
1333
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onProgress, [percentCompleted]);
|
|
1280
1334
|
}
|
|
1281
1335
|
}
|
|
@@ -1289,7 +1343,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1289
1343
|
_context3.t0 = _context3["catch"](5);
|
|
1290
1344
|
// ignore if aborted
|
|
1291
1345
|
if (!axios.isCancel(_context3.t0)) {
|
|
1292
|
-
_classPrivateFieldGet(_this,
|
|
1346
|
+
_classPrivateFieldGet(_this, _logger$1).error("Failed to upload partNumber:", partNumber);
|
|
1293
1347
|
if (_this.status === UPLOAD_STATUS.uploading) {
|
|
1294
1348
|
_classPrivateFieldSet(_this, _status2, UPLOAD_STATUS.error);
|
|
1295
1349
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onError);
|
|
@@ -1317,7 +1371,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
1317
1371
|
});
|
|
1318
1372
|
}
|
|
1319
1373
|
});
|
|
1320
|
-
_classPrivateFieldGet(this,
|
|
1374
|
+
_classPrivateFieldGet(this, _logger$1).info("Uploader initialized");
|
|
1321
1375
|
}
|
|
1322
1376
|
_createClass(MultipartS3Uploader, [{
|
|
1323
1377
|
key: "status",
|
|
@@ -1336,7 +1390,7 @@ function _set_status(status) {
|
|
|
1336
1390
|
_classPrivateFieldSet(this, _status, status);
|
|
1337
1391
|
useMultipartS3UploadStatus$1.triggerStatusChange();
|
|
1338
1392
|
}
|
|
1339
|
-
function
|
|
1393
|
+
function _get_isRecordingNotSet() {
|
|
1340
1394
|
return isEmpty(_classPrivateFieldGet(this, _uploadId) + _classPrivateFieldGet(this, _recordingId));
|
|
1341
1395
|
}
|
|
1342
1396
|
var multipartS3Uploader = new MultipartS3Uploader();
|
|
@@ -1423,6 +1477,7 @@ var _video = /*#__PURE__*/new WeakMap();
|
|
|
1423
1477
|
var _mediaRecorder = /*#__PURE__*/new WeakMap();
|
|
1424
1478
|
var _mediaStream = /*#__PURE__*/new WeakMap();
|
|
1425
1479
|
var _store = /*#__PURE__*/new WeakMap();
|
|
1480
|
+
var _logger = /*#__PURE__*/new WeakMap();
|
|
1426
1481
|
var _mediaChunks = /*#__PURE__*/new WeakMap();
|
|
1427
1482
|
var _callbacks = /*#__PURE__*/new WeakMap();
|
|
1428
1483
|
var _lastTimerUpdatedAt = /*#__PURE__*/new WeakMap();
|
|
@@ -1470,6 +1525,10 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1470
1525
|
writable: true,
|
|
1471
1526
|
value: void 0
|
|
1472
1527
|
});
|
|
1528
|
+
_classPrivateFieldInitSpec(this, _logger, {
|
|
1529
|
+
writable: true,
|
|
1530
|
+
value: createPrefixedLogger("[ScreenRecorder]")
|
|
1531
|
+
});
|
|
1473
1532
|
_classPrivateFieldInitSpec(this, _mediaChunks, {
|
|
1474
1533
|
writable: true,
|
|
1475
1534
|
value: []
|
|
@@ -1558,25 +1617,27 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1558
1617
|
case 0:
|
|
1559
1618
|
_classPrivateFieldGet(_this, _store).setState(pick(["error"], initialState));
|
|
1560
1619
|
if (_classPrivateFieldGet(_this, _mediaStream)) {
|
|
1561
|
-
_context.next =
|
|
1620
|
+
_context.next = 5;
|
|
1562
1621
|
break;
|
|
1563
1622
|
}
|
|
1564
|
-
|
|
1623
|
+
_classPrivateFieldGet(_this, _logger).info("acquiring media stream");
|
|
1624
|
+
_context.next = 5;
|
|
1565
1625
|
return _classPrivateFieldGet(_this, _acquireMediaStream).call(_this);
|
|
1566
|
-
case
|
|
1626
|
+
case 5:
|
|
1567
1627
|
if (!(_classPrivateFieldGet(_this, _mediaStream) && isStreamEnded(_classPrivateFieldGet(_this, _mediaStream)))) {
|
|
1568
|
-
_context.next =
|
|
1628
|
+
_context.next = 9;
|
|
1569
1629
|
break;
|
|
1570
1630
|
}
|
|
1571
|
-
|
|
1631
|
+
_classPrivateFieldGet(_this, _logger).info("media stream ended, acquiring media stream again");
|
|
1632
|
+
_context.next = 9;
|
|
1572
1633
|
return _classPrivateFieldGet(_this, _acquireMediaStream).call(_this);
|
|
1573
|
-
case
|
|
1634
|
+
case 9:
|
|
1574
1635
|
if (!(!_classPrivateFieldGet(_this, _mediaStream) || isStreamEnded(_classPrivateFieldGet(_this, _mediaStream)))) {
|
|
1575
|
-
_context.next =
|
|
1636
|
+
_context.next = 11;
|
|
1576
1637
|
break;
|
|
1577
1638
|
}
|
|
1578
1639
|
return _context.abrupt("return");
|
|
1579
|
-
case
|
|
1640
|
+
case 11:
|
|
1580
1641
|
options = getMediaRecorderOptions();
|
|
1581
1642
|
_classPrivateFieldSet(_this, _mediaChunks, []);
|
|
1582
1643
|
_classPrivateFieldSet(_this, _mediaRecorder, new MediaRecorder(_classPrivateFieldGet(_this, _mediaStream), options));
|
|
@@ -1590,7 +1651,7 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1590
1651
|
});
|
|
1591
1652
|
};
|
|
1592
1653
|
_classPrivateFieldGet(_this, _countdownAndStartRecording).call(_this);
|
|
1593
|
-
case
|
|
1654
|
+
case 19:
|
|
1594
1655
|
case "end":
|
|
1595
1656
|
return _context.stop();
|
|
1596
1657
|
}
|
|
@@ -1829,7 +1890,7 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1829
1890
|
error: SCREEN_RECORDER_ERROR.MicPermissionDenied,
|
|
1830
1891
|
status: SCREEN_RECORDER_STATUS.idle
|
|
1831
1892
|
});
|
|
1832
|
-
} else if (!
|
|
1893
|
+
} else if (!_classPrivateFieldGet(_this, _mediaStream) || isStreamEnded(_classPrivateFieldGet(_this, _mediaStream))) {
|
|
1833
1894
|
_classPrivateFieldGet(_this, _store).setState({
|
|
1834
1895
|
error: SCREEN_RECORDER_ERROR[_context2.t1.name],
|
|
1835
1896
|
status: SCREEN_RECORDER_STATUS.idle
|
|
@@ -1867,7 +1928,7 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1867
1928
|
writable: true,
|
|
1868
1929
|
value: function value(_ref2) {
|
|
1869
1930
|
var data = _ref2.data;
|
|
1870
|
-
|
|
1931
|
+
_classPrivateFieldGet(_this, _logger).info("received data in onRecordingActive");
|
|
1871
1932
|
if (data.size <= 0) return;
|
|
1872
1933
|
_classPrivateFieldGet(_this, _mediaChunks).push(data);
|
|
1873
1934
|
_classPrivateFieldGet(_this, _fireCallbacks).call(_this, SCREEN_RECORDER_EVENT.onDataAvailable, [data]);
|
|
@@ -1876,7 +1937,7 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1876
1937
|
_classPrivateFieldInitSpec(this, _onRecordingStop, {
|
|
1877
1938
|
writable: true,
|
|
1878
1939
|
value: function value() {
|
|
1879
|
-
|
|
1940
|
+
_classPrivateFieldGet(_this, _logger).info("stopping recording in onRecordingStop");
|
|
1880
1941
|
_classPrivateFieldGet(_this, _store).setState({
|
|
1881
1942
|
status: SCREEN_RECORDER_STATUS.stopped
|
|
1882
1943
|
});
|
|
@@ -1894,6 +1955,7 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1894
1955
|
_classPrivateFieldInitSpec(this, _countdownAndStartRecording, {
|
|
1895
1956
|
writable: true,
|
|
1896
1957
|
value: function value() {
|
|
1958
|
+
if (_classPrivateFieldGet(_this, _countdownTimerId)) return;
|
|
1897
1959
|
_classPrivateFieldSet(_this, _countdownTimerId, setInterval(function () {
|
|
1898
1960
|
_classPrivateFieldGet(_this, _store).setState(function (_ref3) {
|
|
1899
1961
|
var countdownTimeLeft = _ref3.countdownTimeLeft;
|
|
@@ -1909,12 +1971,31 @@ var ScreenRecorder = /*#__PURE__*/function () {
|
|
|
1909
1971
|
status: SCREEN_RECORDER_STATUS.recording
|
|
1910
1972
|
});
|
|
1911
1973
|
clearInterval(_classPrivateFieldGet(_this, _countdownTimerId));
|
|
1974
|
+
_classPrivateFieldSet(_this, _countdownTimerId, null);
|
|
1912
1975
|
_classPrivateFieldSet(_this, _startRecordingTimeoutID, setTimeout(function () {
|
|
1913
1976
|
try {
|
|
1977
|
+
_classPrivateFieldGet(_this, _logger).info("starting mediaRecorder");
|
|
1978
|
+
if (!_classPrivateFieldGet(_this, _mediaRecorder)) {
|
|
1979
|
+
_classPrivateFieldGet(_this, _logger).info("mediaRecorder is not defined");
|
|
1980
|
+
_classPrivateFieldGet(_this, _store).setState({
|
|
1981
|
+
status: SCREEN_RECORDER_STATUS.idle,
|
|
1982
|
+
error: SCREEN_RECORDER_ERROR.FailedToStart
|
|
1983
|
+
});
|
|
1984
|
+
return;
|
|
1985
|
+
}
|
|
1986
|
+
if (!_classPrivateFieldGet(_this, _mediaStream) || isStreamEnded(_classPrivateFieldGet(_this, _mediaStream))) {
|
|
1987
|
+
_classPrivateFieldGet(_this, _logger).info("media stream ended, not starting mediaRecorder");
|
|
1988
|
+
_classPrivateFieldGet(_this, _store).setState({
|
|
1989
|
+
status: SCREEN_RECORDER_STATUS.idle,
|
|
1990
|
+
error: SCREEN_RECORDER_ERROR.FailedToStart
|
|
1991
|
+
});
|
|
1992
|
+
return;
|
|
1993
|
+
}
|
|
1914
1994
|
_classPrivateFieldGet(_this, _mediaRecorder).start(5000);
|
|
1995
|
+
_classPrivateFieldGet(_this, _logger).info("started mediaRecorder");
|
|
1915
1996
|
_classPrivateFieldGet(_this, _startTimer).call(_this);
|
|
1916
1997
|
} catch (error) {
|
|
1917
|
-
|
|
1998
|
+
_classPrivateFieldGet(_this, _logger).info("Failed to start mediaRecorder", error);
|
|
1918
1999
|
_classPrivateFieldGet(_this, _store).setState({
|
|
1919
2000
|
status: SCREEN_RECORDER_STATUS.idle,
|
|
1920
2001
|
error: SCREEN_RECORDER_ERROR.FailedToStart
|