@bigbinary/neeto-media-recorder 1.0.7 → 1.0.9
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/README.md +10 -2
- package/constants.js +18 -1
- package/constants.js.map +1 -1
- package/core.js +46 -25
- package/core.js.map +1 -1
- package/index.js +96 -68
- package/index.js.map +1 -1
- package/package.json +6 -1
- package/utils.js +3 -2
- package/utils.js.map +1 -1
package/README.md
CHANGED
|
@@ -42,8 +42,8 @@ This package exports four different sets of functions and components.
|
|
|
42
42
|
import { generatePublicUrl } from "@bigbinary/neeto-media-recorder/utils"
|
|
43
43
|
```
|
|
44
44
|
|
|
45
|
-
- #### `generatePublicUrl(recordingId)`
|
|
46
|
-
Can be used to generate the public URL for a screen recording by providing the `recordingId` as
|
|
45
|
+
- #### `generatePublicUrl(recordingId, baseURL = window.location.origin)`
|
|
46
|
+
Can be used to generate the public URL for a screen recording by providing the `recordingId` and `baseURL` as arguments.
|
|
47
47
|
|
|
48
48
|
### Constants
|
|
49
49
|
|
|
@@ -100,6 +100,14 @@ This package exports four different sets of functions and components.
|
|
|
100
100
|
onDiscardDuringCountdown: "onDiscardDuringCountdown",
|
|
101
101
|
onRestart: "onRestart",
|
|
102
102
|
};
|
|
103
|
+
|
|
104
|
+
const HAS_CHROME_NAMESPACE = typeof chrome === "object";
|
|
105
|
+
|
|
106
|
+
const IS_EXTENSION = HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);
|
|
107
|
+
|
|
108
|
+
const IS_SAFARI = platform.name === "Safari";
|
|
109
|
+
|
|
110
|
+
const IS_SAFARI_EXTENSION = IS_SAFARI && IS_EXTENSION;
|
|
103
111
|
```
|
|
104
112
|
|
|
105
113
|
### Core
|
package/constants.js
CHANGED
|
@@ -1,3 +1,16 @@
|
|
|
1
|
+
import platform from 'platform';
|
|
2
|
+
import { isNotNil } from 'ramda';
|
|
3
|
+
|
|
4
|
+
function _typeof(obj) {
|
|
5
|
+
"@babel/helpers - typeof";
|
|
6
|
+
|
|
7
|
+
return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
|
|
8
|
+
return typeof obj;
|
|
9
|
+
} : function (obj) {
|
|
10
|
+
return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
|
|
11
|
+
}, _typeof(obj);
|
|
12
|
+
}
|
|
13
|
+
|
|
1
14
|
// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
|
|
2
15
|
var RETRIABLE_ERRORS = [500, 503];
|
|
3
16
|
var ONE_SECOND_IN_MILLISECONDS = 1000;
|
|
@@ -59,6 +72,10 @@ var DEFAULT_RETRY_CONFIG = {
|
|
|
59
72
|
// No need to localize this since it will only be used in the code
|
|
60
73
|
// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized
|
|
61
74
|
var NETWORK_ERROR = "Network Error";
|
|
75
|
+
var HAS_CHROME_NAMESPACE = (typeof chrome === "undefined" ? "undefined" : _typeof(chrome)) === "object";
|
|
76
|
+
var IS_EXTENSION = HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);
|
|
77
|
+
var IS_SAFARI = platform.name === "Safari";
|
|
78
|
+
var IS_SAFARI_EXTENSION = IS_SAFARI && IS_EXTENSION;
|
|
62
79
|
|
|
63
|
-
export { DEFAULT_RETRY_CONFIG, INITIAL_RETRY_DELAY, MAX_RETRY_DELAY, NETWORK_ERROR, ONE_MINUTE_IN_MILLISECONDS, ONE_SECOND, ONE_SECOND_IN_MILLISECONDS, RETRIABLE_ERRORS, SCREEN_RECORDER_ERROR, SCREEN_RECORDER_EVENT, SCREEN_RECORDER_STATUS, TOTAL_RETRIES, UPLOAD_EVENT, UPLOAD_STATUS };
|
|
80
|
+
export { DEFAULT_RETRY_CONFIG, HAS_CHROME_NAMESPACE, INITIAL_RETRY_DELAY, IS_EXTENSION, IS_SAFARI, IS_SAFARI_EXTENSION, MAX_RETRY_DELAY, NETWORK_ERROR, ONE_MINUTE_IN_MILLISECONDS, ONE_SECOND, ONE_SECOND_IN_MILLISECONDS, RETRIABLE_ERRORS, SCREEN_RECORDER_ERROR, SCREEN_RECORDER_EVENT, SCREEN_RECORDER_STATUS, TOTAL_RETRIES, UPLOAD_EVENT, UPLOAD_STATUS };
|
|
64
81
|
//# sourceMappingURL=constants.js.map
|
package/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sources":["src/constants.js"],"sourcesContent":["// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList\nexport const RETRIABLE_ERRORS = [500, 503];\n\nexport const ONE_SECOND_IN_MILLISECONDS = 1000;\n\nexport const ONE_MINUTE_IN_MILLISECONDS = 60 * ONE_SECOND_IN_MILLISECONDS;\n\nexport const ONE_SECOND = 1;\n\nexport const UPLOAD_EVENT = { onComplete: \"onComplete\" };\n\nexport const UPLOAD_STATUS = {\n uploading: \"uploading\",\n completed: \"completed\",\n aborting: \"aborting\",\n};\n\nexport const SCREEN_RECORDER_STATUS = {\n media_aborted: \"media_aborted\",\n permission_denied: \"permission_denied\",\n no_specified_media_found: \"no_specified_media_found\",\n media_in_use: \"media_in_use\",\n invalid_media_constraints: \"invalid_media_constraints\",\n no_chrome_flags_set: \"no_chrome_flags_set\",\n recorder_error: \"recorder_error\",\n idle: \"idle\",\n acquiring_media: \"acquiring_media\",\n media_acquired: \"media_acquired\",\n restarting: \"restarting\",\n recording: \"recording\",\n stopping: \"stopping\",\n stopped: \"stopped\",\n paused: \"paused\",\n};\n\nexport const SCREEN_RECORDER_ERROR = {\n AbortError: \"media_aborted\",\n NotAllowedError: \"permission_denied\",\n NotFoundError: \"no_specified_media_found\",\n NotReadableError: \"media_in_use\",\n OverconstrainedError: \"invalid_media_constraints\",\n TypeError: \"no_chrome_flags_set\",\n None: \"\",\n NoRecorder: \"recorder_error\",\n UnSupportedBrowser: \"unsupported_browser\",\n};\n\nexport const SCREEN_RECORDER_EVENT = {\n onStart: \"onStart\",\n onStop: \"onStop\",\n onDiscard: \"onDiscard\",\n onDataAvailable: \"onDataAvailable\",\n onDiscardDuringCountdown: \"onDiscardDuringCountdown\",\n onRestart: \"onRestart\",\n};\n\nexport const TOTAL_RETRIES = 30;\nexport const INITIAL_RETRY_DELAY = 4000;\nexport const MAX_RETRY_DELAY = 16000;\n\nexport const DEFAULT_RETRY_CONFIG = {\n retries: TOTAL_RETRIES,\n retryDelay: INITIAL_RETRY_DELAY,\n retryableStatuses: [],\n};\n\n// No need to localize this since it will only be used in the code\n// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized\nexport const NETWORK_ERROR = \"Network Error\";\n"],"names":["RETRIABLE_ERRORS","ONE_SECOND_IN_MILLISECONDS","ONE_MINUTE_IN_MILLISECONDS","ONE_SECOND","UPLOAD_EVENT","onComplete","UPLOAD_STATUS","uploading","completed","aborting","SCREEN_RECORDER_STATUS","media_aborted","permission_denied","no_specified_media_found","media_in_use","invalid_media_constraints","no_chrome_flags_set","recorder_error","idle","acquiring_media","media_acquired","restarting","recording","stopping","stopped","paused","SCREEN_RECORDER_ERROR","AbortError","NotAllowedError","NotFoundError","NotReadableError","OverconstrainedError","TypeError","None","NoRecorder","UnSupportedBrowser","SCREEN_RECORDER_EVENT","onStart","onStop","onDiscard","onDataAvailable","onDiscardDuringCountdown","onRestart","TOTAL_RETRIES","INITIAL_RETRY_DELAY","MAX_RETRY_DELAY","DEFAULT_RETRY_CONFIG","retries","retryDelay","retryableStatuses","NETWORK_ERROR"],"mappings":"
|
|
1
|
+
{"version":3,"file":"constants.js","sources":["node_modules/@babel/runtime/helpers/esm/typeof.js","src/constants.js"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import platform from \"platform\";\nimport { isNotNil } from \"ramda\";\n\n// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList\nexport const RETRIABLE_ERRORS = [500, 503];\n\nexport const ONE_SECOND_IN_MILLISECONDS = 1000;\n\nexport const ONE_MINUTE_IN_MILLISECONDS = 60 * ONE_SECOND_IN_MILLISECONDS;\n\nexport const ONE_SECOND = 1;\n\nexport const UPLOAD_EVENT = { onComplete: \"onComplete\" };\n\nexport const UPLOAD_STATUS = {\n uploading: \"uploading\",\n completed: \"completed\",\n aborting: \"aborting\",\n};\n\nexport const SCREEN_RECORDER_STATUS = {\n media_aborted: \"media_aborted\",\n permission_denied: \"permission_denied\",\n no_specified_media_found: \"no_specified_media_found\",\n media_in_use: \"media_in_use\",\n invalid_media_constraints: \"invalid_media_constraints\",\n no_chrome_flags_set: \"no_chrome_flags_set\",\n recorder_error: \"recorder_error\",\n idle: \"idle\",\n acquiring_media: \"acquiring_media\",\n media_acquired: \"media_acquired\",\n restarting: \"restarting\",\n recording: \"recording\",\n stopping: \"stopping\",\n stopped: \"stopped\",\n paused: \"paused\",\n};\n\nexport const SCREEN_RECORDER_ERROR = {\n AbortError: \"media_aborted\",\n NotAllowedError: \"permission_denied\",\n NotFoundError: \"no_specified_media_found\",\n NotReadableError: \"media_in_use\",\n OverconstrainedError: \"invalid_media_constraints\",\n TypeError: \"no_chrome_flags_set\",\n None: \"\",\n NoRecorder: \"recorder_error\",\n UnSupportedBrowser: \"unsupported_browser\",\n};\n\nexport const SCREEN_RECORDER_EVENT = {\n onStart: \"onStart\",\n onStop: \"onStop\",\n onDiscard: \"onDiscard\",\n onDataAvailable: \"onDataAvailable\",\n onDiscardDuringCountdown: \"onDiscardDuringCountdown\",\n onRestart: \"onRestart\",\n};\n\nexport const TOTAL_RETRIES = 30;\nexport const INITIAL_RETRY_DELAY = 4000;\nexport const MAX_RETRY_DELAY = 16000;\n\nexport const DEFAULT_RETRY_CONFIG = {\n retries: TOTAL_RETRIES,\n retryDelay: INITIAL_RETRY_DELAY,\n retryableStatuses: [],\n};\n\n// No need to localize this since it will only be used in the code\n// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized\nexport const NETWORK_ERROR = \"Network Error\";\n\nexport const HAS_CHROME_NAMESPACE = typeof chrome === \"object\";\n\nexport const IS_EXTENSION = HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);\n\nexport const IS_SAFARI = platform.name === \"Safari\";\n\nexport const IS_SAFARI_EXTENSION = IS_SAFARI && IS_EXTENSION;\n"],"names":["RETRIABLE_ERRORS","ONE_SECOND_IN_MILLISECONDS","ONE_MINUTE_IN_MILLISECONDS","ONE_SECOND","UPLOAD_EVENT","onComplete","UPLOAD_STATUS","uploading","completed","aborting","SCREEN_RECORDER_STATUS","media_aborted","permission_denied","no_specified_media_found","media_in_use","invalid_media_constraints","no_chrome_flags_set","recorder_error","idle","acquiring_media","media_acquired","restarting","recording","stopping","stopped","paused","SCREEN_RECORDER_ERROR","AbortError","NotAllowedError","NotFoundError","NotReadableError","OverconstrainedError","TypeError","None","NoRecorder","UnSupportedBrowser","SCREEN_RECORDER_EVENT","onStart","onStop","onDiscard","onDataAvailable","onDiscardDuringCountdown","onRestart","TOTAL_RETRIES","INITIAL_RETRY_DELAY","MAX_RETRY_DELAY","DEFAULT_RETRY_CONFIG","retries","retryDelay","retryableStatuses","NETWORK_ERROR","HAS_CHROME_NAMESPACE","chrome","_typeof","IS_EXTENSION","isNotNil","extension","IS_SAFARI","platform","name","IS_SAFARI_EXTENSION"],"mappings":"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"}
|
package/core.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { isPresent, isNot, existsBy, isNotEmpty } from '@bigbinary/neeto-cist';
|
|
3
|
-
import { min, identity, isNil, pick } from 'ramda';
|
|
4
3
|
import { RETRIABLE_ERRORS, UPLOAD_EVENT, UPLOAD_STATUS, SCREEN_RECORDER_STATUS, SCREEN_RECORDER_ERROR, SCREEN_RECORDER_EVENT, ONE_SECOND, ONE_SECOND_IN_MILLISECONDS } from '@bigbinary/neeto-media-recorder/constants';
|
|
4
|
+
import { isNotNil, min, identity, isEmpty, isNil, pick } from 'ramda';
|
|
5
|
+
import platform from 'platform';
|
|
5
6
|
import withImmutableActions from '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
|
|
6
7
|
import { create as create$3 } from 'zustand';
|
|
7
8
|
|
|
@@ -521,7 +522,6 @@ try {
|
|
|
521
522
|
|
|
522
523
|
var _regeneratorRuntime = /*@__PURE__*/getDefaultExportFromCjs(regenerator);
|
|
523
524
|
|
|
524
|
-
// https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList
|
|
525
525
|
var TOTAL_RETRIES = 30;
|
|
526
526
|
var INITIAL_RETRY_DELAY = 4000;
|
|
527
527
|
var MAX_RETRY_DELAY = 16000;
|
|
@@ -534,6 +534,9 @@ var DEFAULT_RETRY_CONFIG = {
|
|
|
534
534
|
// No need to localize this since it will only be used in the code
|
|
535
535
|
// eslint-disable-next-line @bigbinary/neeto/hard-coded-strings-should-be-localized
|
|
536
536
|
var NETWORK_ERROR = "Network Error";
|
|
537
|
+
var HAS_CHROME_NAMESPACE = (typeof chrome === "undefined" ? "undefined" : _typeof$1(chrome)) === "object";
|
|
538
|
+
HAS_CHROME_NAMESPACE && isNotNil(chrome.extension);
|
|
539
|
+
platform.name === "Safari";
|
|
537
540
|
|
|
538
541
|
var sleep = function sleep(delay) {
|
|
539
542
|
return new Promise(function (resolve) {
|
|
@@ -680,10 +683,15 @@ var _pendingS3ChunkUploads = /*#__PURE__*/new WeakMap();
|
|
|
680
683
|
var _fireCallbacks$1 = /*#__PURE__*/new WeakMap();
|
|
681
684
|
var _uploadChunkToS = /*#__PURE__*/new WeakMap();
|
|
682
685
|
var _getCurrentUnUploadedBlob = /*#__PURE__*/new WeakMap();
|
|
686
|
+
var _isNotInitialized = /*#__PURE__*/new WeakMap();
|
|
683
687
|
var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
684
688
|
function MultipartS3Uploader() {
|
|
685
689
|
var _this = this;
|
|
686
690
|
_classCallCheck(this, MultipartS3Uploader);
|
|
691
|
+
_classPrivateFieldInitSpec$1(this, _isNotInitialized, {
|
|
692
|
+
get: _get_isNotInitialized,
|
|
693
|
+
set: void 0
|
|
694
|
+
});
|
|
687
695
|
_defineProperty(this, "MIN_UPLOAD_CHUNK_SIZE", 5 * 1024 * 1024);
|
|
688
696
|
_classPrivateFieldInitSpec$1(this, _recordingId, {
|
|
689
697
|
writable: true,
|
|
@@ -730,6 +738,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
730
738
|
if (data.size > 0) {
|
|
731
739
|
_classPrivateFieldGet(_this, _unUploadedChunks).push(data);
|
|
732
740
|
}
|
|
741
|
+
if (_classPrivateFieldGet(_this, _isNotInitialized)) return;
|
|
733
742
|
logger.info("Current unuploaded data size is ", _classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size / 1024 / 1024, "MB");
|
|
734
743
|
if (_classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size > _this.MIN_UPLOAD_CHUNK_SIZE) {
|
|
735
744
|
var uploadChunkToS3Promise = _classPrivateFieldGet(_this, _uploadChunkToS).call(_this, _classPrivateFieldGet(_this, _unUploadedChunks));
|
|
@@ -746,7 +755,12 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
746
755
|
_classPrivateFieldGet(_this, _store$1).setState({
|
|
747
756
|
status: UPLOAD_STATUS.uploading
|
|
748
757
|
});
|
|
749
|
-
|
|
758
|
+
if (!_classPrivateFieldGet(_this, _isNotInitialized)) {
|
|
759
|
+
_context.next = 4;
|
|
760
|
+
break;
|
|
761
|
+
}
|
|
762
|
+
return _context.abrupt("return");
|
|
763
|
+
case 4:
|
|
750
764
|
// Upload last chunk; only if last chunk has data
|
|
751
765
|
if (_classPrivateFieldGet(_this, _getCurrentUnUploadedBlob).call(_this).size > 0) {
|
|
752
766
|
uploadChunkToS3Promise = _classPrivateFieldGet(_this, _uploadChunkToS).call(_this, _classPrivateFieldGet(_this, _unUploadedChunks));
|
|
@@ -761,12 +775,12 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
761
775
|
* adding the new presignedUrl part upload to s3PartUploadPromises.
|
|
762
776
|
* This results in incorrect partNumbers.
|
|
763
777
|
*/
|
|
764
|
-
_context.next = 5;
|
|
765
|
-
return Promise.all(_classPrivateFieldGet(_this, _pendingS3ChunkUploads));
|
|
766
|
-
case 5:
|
|
767
778
|
_context.next = 7;
|
|
768
|
-
return Promise.all(_classPrivateFieldGet(_this,
|
|
779
|
+
return Promise.all(_classPrivateFieldGet(_this, _pendingS3ChunkUploads));
|
|
769
780
|
case 7:
|
|
781
|
+
_context.next = 9;
|
|
782
|
+
return Promise.all(_classPrivateFieldGet(_this, _s3PartUploadPromises));
|
|
783
|
+
case 9:
|
|
770
784
|
resolvedS3PartUploadPromises = _context.sent;
|
|
771
785
|
parts = resolvedS3PartUploadPromises.map(function (resolvedResponse) {
|
|
772
786
|
return {
|
|
@@ -776,7 +790,7 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
776
790
|
}).toSorted(function (a, b) {
|
|
777
791
|
return Number(a.partNumber) - Number(b.partNumber);
|
|
778
792
|
});
|
|
779
|
-
_context.next =
|
|
793
|
+
_context.next = 13;
|
|
780
794
|
return completeUploadApi.create({
|
|
781
795
|
recordingId: _classPrivateFieldGet(_this, _recordingId),
|
|
782
796
|
payload: {
|
|
@@ -784,24 +798,24 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
784
798
|
uploadId: _classPrivateFieldGet(_this, _uploadId)
|
|
785
799
|
}
|
|
786
800
|
});
|
|
787
|
-
case
|
|
788
|
-
_context.next =
|
|
801
|
+
case 13:
|
|
802
|
+
_context.next = 15;
|
|
789
803
|
return _classPrivateFieldGet(_this, _store$1).setState({
|
|
790
804
|
status: UPLOAD_STATUS.completed
|
|
791
805
|
});
|
|
792
|
-
case
|
|
806
|
+
case 15:
|
|
793
807
|
_classPrivateFieldGet(_this, _fireCallbacks$1).call(_this, UPLOAD_EVENT.onComplete);
|
|
794
|
-
_context.next =
|
|
808
|
+
_context.next = 21;
|
|
795
809
|
break;
|
|
796
|
-
case
|
|
797
|
-
_context.prev =
|
|
810
|
+
case 18:
|
|
811
|
+
_context.prev = 18;
|
|
798
812
|
_context.t0 = _context["catch"](0);
|
|
799
813
|
logger.error(_context.t0);
|
|
800
|
-
case
|
|
814
|
+
case 21:
|
|
801
815
|
case "end":
|
|
802
816
|
return _context.stop();
|
|
803
817
|
}
|
|
804
|
-
}, _callee, null, [[0,
|
|
818
|
+
}, _callee, null, [[0, 18]]);
|
|
805
819
|
})));
|
|
806
820
|
_defineProperty(this, "abortUpload", /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee2() {
|
|
807
821
|
return _regeneratorRuntime.wrap(function _callee2$(_context2) {
|
|
@@ -811,15 +825,21 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
811
825
|
_classPrivateFieldGet(_this, _store$1).setState({
|
|
812
826
|
status: UPLOAD_STATUS.aborting
|
|
813
827
|
});
|
|
828
|
+
if (!_classPrivateFieldGet(_this, _isNotInitialized)) {
|
|
829
|
+
_context2.next = 4;
|
|
830
|
+
break;
|
|
831
|
+
}
|
|
832
|
+
return _context2.abrupt("return");
|
|
833
|
+
case 4:
|
|
814
834
|
_classPrivateFieldGet(_this, _abortController).abort();
|
|
815
|
-
_context2.next =
|
|
835
|
+
_context2.next = 7;
|
|
816
836
|
return abortUploadApi.create({
|
|
817
837
|
recordingId: _classPrivateFieldGet(_this, _recordingId),
|
|
818
838
|
payload: {
|
|
819
839
|
uploadId: _classPrivateFieldGet(_this, _uploadId)
|
|
820
840
|
}
|
|
821
841
|
});
|
|
822
|
-
case
|
|
842
|
+
case 7:
|
|
823
843
|
_classPrivateFieldSet(_this, _unUploadedChunks, []);
|
|
824
844
|
_classPrivateFieldSet(_this, _partNumber, 1);
|
|
825
845
|
_classPrivateFieldSet(_this, _s3PartUploadPromises, []);
|
|
@@ -827,17 +847,17 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
827
847
|
status: ""
|
|
828
848
|
});
|
|
829
849
|
_classPrivateFieldSet(_this, _abortController, null);
|
|
830
|
-
_context2.next =
|
|
850
|
+
_context2.next = 17;
|
|
831
851
|
break;
|
|
832
|
-
case
|
|
833
|
-
_context2.prev =
|
|
852
|
+
case 14:
|
|
853
|
+
_context2.prev = 14;
|
|
834
854
|
_context2.t0 = _context2["catch"](0);
|
|
835
855
|
logger.error(_context2.t0);
|
|
836
|
-
case
|
|
856
|
+
case 17:
|
|
837
857
|
case "end":
|
|
838
858
|
return _context2.stop();
|
|
839
859
|
}
|
|
840
|
-
}, _callee2, null, [[0,
|
|
860
|
+
}, _callee2, null, [[0, 14]]);
|
|
841
861
|
})));
|
|
842
862
|
_defineProperty(this, "resetState", function () {
|
|
843
863
|
_classPrivateFieldSet(_this, _recordingId, "");
|
|
@@ -910,8 +930,6 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
910
930
|
_context3.t0 = _context3["catch"](1);
|
|
911
931
|
if (!axios.isCancel(_context3.t0)) logger.error(_context3.t0);
|
|
912
932
|
case 13:
|
|
913
|
-
return _context3.abrupt("return");
|
|
914
|
-
case 14:
|
|
915
933
|
case "end":
|
|
916
934
|
return _context3.stop();
|
|
917
935
|
}
|
|
@@ -943,6 +961,9 @@ var MultipartS3Uploader = /*#__PURE__*/function () {
|
|
|
943
961
|
}]);
|
|
944
962
|
return MultipartS3Uploader;
|
|
945
963
|
}();
|
|
964
|
+
function _get_isNotInitialized() {
|
|
965
|
+
return isEmpty(_classPrivateFieldGet(this, _uploadId) + _classPrivateFieldGet(this, _recordingId));
|
|
966
|
+
}
|
|
946
967
|
var multipartS3Uploader = new MultipartS3Uploader();
|
|
947
968
|
|
|
948
969
|
// https://www.w3.org/TR/screen-capture/#displaycapturesurfacetype
|