sanity-plugin-mux-input 1.1.3 → 1.1.4-v3-studio.3
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 +10 -7
- package/sanity.json +2 -10
- package/v2-incompatible.js +11 -0
- package/build/actions/assets.js +0 -37
- package/build/actions/assets.js.map +0 -1
- package/build/actions/secrets.js +0 -125
- package/build/actions/secrets.js.map +0 -1
- package/build/actions/upload.js +0 -280
- package/build/actions/upload.js.map +0 -1
- package/build/clients/SanityClient.js +0 -19
- package/build/clients/SanityClient.js.map +0 -1
- package/build/clients/upChunkObservable.js +0 -66
- package/build/clients/upChunkObservable.js.map +0 -1
- package/build/components/FileInputButton.js +0 -84
- package/build/components/FileInputButton.js.map +0 -1
- package/build/components/Input.css +0 -30
- package/build/components/Input.js +0 -823
- package/build/components/Input.js.map +0 -1
- package/build/components/MuxLogo.js +0 -19
- package/build/components/MuxLogo.js.map +0 -1
- package/build/components/Preview.css +0 -16
- package/build/components/Preview.js +0 -95
- package/build/components/Preview.js.map +0 -1
- package/build/components/SelectAsset.css +0 -56
- package/build/components/SelectAsset.js +0 -162
- package/build/components/SelectAsset.js.map +0 -1
- package/build/components/Setup.css +0 -7
- package/build/components/Setup.js +0 -311
- package/build/components/Setup.js.map +0 -1
- package/build/components/UploadPlaceholder.css +0 -81
- package/build/components/UploadPlaceholder.js +0 -92
- package/build/components/UploadPlaceholder.js.map +0 -1
- package/build/components/Uploader.css +0 -28
- package/build/components/Uploader.js +0 -534
- package/build/components/Uploader.js.map +0 -1
- package/build/components/Video.css +0 -21
- package/build/components/Video.js +0 -360
- package/build/components/Video.js.map +0 -1
- package/build/config.js +0 -17
- package/build/config.js.map +0 -1
- package/build/index.js +0 -22
- package/build/index.js.map +0 -1
- package/build/schema/mux.video.js +0 -41
- package/build/schema/mux.video.js.map +0 -1
- package/build/schema/mux.videoAsset.js +0 -29
- package/build/schema/mux.videoAsset.js.map +0 -1
- package/build/util/extractFiles.js +0 -70
- package/build/util/extractFiles.js.map +0 -1
- package/build/util/formatTime.js +0 -28
- package/build/util/formatTime.js.map +0 -1
- package/build/util/generateJwt.js +0 -30
- package/build/util/generateJwt.js.map +0 -1
- package/build/util/getPosterSrc.js +0 -46
- package/build/util/getPosterSrc.js.map +0 -1
- package/build/util/getStoryboardSrc.js +0 -26
- package/build/util/getStoryboardSrc.js.map +0 -1
- package/build/util/getVideoSrc.js +0 -23
- package/build/util/getVideoSrc.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sanity-plugin-mux-input",
|
|
3
|
-
"version": "1.1.3",
|
|
3
|
+
"version": "1.1.4-v3-studio.3",
|
|
4
4
|
"description": "An input component that integrates Sanity Studio with Mux video encoding/hosting service.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"sanity",
|
|
@@ -22,16 +22,17 @@
|
|
|
22
22
|
"author": "Sanity.io <hello@sanity.io>",
|
|
23
23
|
"main": "build/index.js",
|
|
24
24
|
"files": [
|
|
25
|
-
"
|
|
25
|
+
"build",
|
|
26
26
|
"config.dist.json",
|
|
27
|
-
"
|
|
27
|
+
"sanity.json",
|
|
28
|
+
"v2-incompatible.js"
|
|
28
29
|
],
|
|
29
30
|
"scripts": {
|
|
30
|
-
"build": "
|
|
31
|
+
"build": "true",
|
|
31
32
|
"prepare": "husky install",
|
|
32
|
-
"prepublishOnly": "npm run test &&
|
|
33
|
+
"prepublishOnly": "npm run test && true",
|
|
33
34
|
"test": "eslint .",
|
|
34
|
-
"watch": "
|
|
35
|
+
"watch": "true"
|
|
35
36
|
},
|
|
36
37
|
"prettier": {
|
|
37
38
|
"arrowParens": "always",
|
|
@@ -59,6 +60,7 @@
|
|
|
59
60
|
"dependencies": {
|
|
60
61
|
"@mux/upchunk": "2.2.2",
|
|
61
62
|
"@sanity/icons": "^1.2.1",
|
|
63
|
+
"@sanity/incompatible-plugin": "^0.0.1-studio-v3.1",
|
|
62
64
|
"@sanity/ui": "^0.36.12",
|
|
63
65
|
"@sanity/uuid": "^3.0.1",
|
|
64
66
|
"hls.js": "^0.11.0",
|
|
@@ -93,5 +95,6 @@
|
|
|
93
95
|
},
|
|
94
96
|
"publishConfig": {
|
|
95
97
|
"access": "public"
|
|
96
|
-
}
|
|
98
|
+
},
|
|
99
|
+
"sanityExchangeUrl": "https://www.sanity.io/plugins/sanity-plugin-mux-input"
|
|
97
100
|
}
|
package/sanity.json
CHANGED
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"paths": {
|
|
3
|
-
"source": "./src",
|
|
4
|
-
"compiled": "./build"
|
|
5
|
-
},
|
|
6
2
|
"parts": [
|
|
7
3
|
{
|
|
8
|
-
"implements": "part:@sanity/base/
|
|
9
|
-
"path": "
|
|
10
|
-
},
|
|
11
|
-
{
|
|
12
|
-
"implements": "part:@sanity/base/schema-type",
|
|
13
|
-
"path": "schema/mux.videoAsset.js"
|
|
4
|
+
"implements": "part:@sanity/base/sanity-root",
|
|
5
|
+
"path": "./v2-incompatible.js"
|
|
14
6
|
}
|
|
15
7
|
]
|
|
16
8
|
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
const {showIncompatiblePluginDialog} = require('@sanity/incompatible-plugin')
|
|
2
|
+
const {name, version, sanityExchangeUrl} = require('./package.json')
|
|
3
|
+
|
|
4
|
+
export default showIncompatiblePluginDialog({
|
|
5
|
+
name: name,
|
|
6
|
+
versions: {
|
|
7
|
+
v3: version,
|
|
8
|
+
v2: '1.1.1',
|
|
9
|
+
},
|
|
10
|
+
sanityExchangeUrl,
|
|
11
|
+
})
|
package/build/actions/assets.js
DELETED
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = void 0;
|
|
7
|
-
exports.deleteAsset = deleteAsset;
|
|
8
|
-
exports.getAsset = getAsset;
|
|
9
|
-
|
|
10
|
-
var _SanityClient = _interopRequireDefault(require("../clients/SanityClient"));
|
|
11
|
-
|
|
12
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
13
|
-
|
|
14
|
-
function deleteAsset(assetId) {
|
|
15
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
16
|
-
return _SanityClient.default.request({
|
|
17
|
-
url: "/addons/mux/assets/".concat(dataset, "/").concat(assetId),
|
|
18
|
-
withCredentials: true,
|
|
19
|
-
method: 'DELETE'
|
|
20
|
-
});
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
function getAsset(assetId) {
|
|
24
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
25
|
-
return _SanityClient.default.request({
|
|
26
|
-
url: "/addons/mux/assets/".concat(dataset, "/data/").concat(assetId),
|
|
27
|
-
withCredentials: true,
|
|
28
|
-
method: 'GET'
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
var _default = {
|
|
33
|
-
getAsset,
|
|
34
|
-
deleteAsset
|
|
35
|
-
};
|
|
36
|
-
exports.default = _default;
|
|
37
|
-
//# sourceMappingURL=assets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"assets.js","names":["deleteAsset","assetId","dataset","client","clientConfig","request","url","withCredentials","method","getAsset"],"sources":["../../src/actions/assets.js"],"sourcesContent":["import client from '../clients/SanityClient'\n\nexport function deleteAsset(assetId) {\n const dataset = client.clientConfig.dataset\n return client.request({\n url: `/addons/mux/assets/${dataset}/${assetId}`,\n withCredentials: true,\n method: 'DELETE',\n })\n}\n\nexport function getAsset(assetId) {\n const dataset = client.clientConfig.dataset\n return client.request({\n url: `/addons/mux/assets/${dataset}/data/${assetId}`,\n withCredentials: true,\n method: 'GET',\n })\n}\n\nexport default {getAsset, deleteAsset}\n"],"mappings":";;;;;;;;;AAAA;;;;AAEO,SAASA,WAAT,CAAqBC,OAArB,EAA8B;EACnC,IAAMC,OAAO,GAAGC,qBAAA,CAAOC,YAAP,CAAoBF,OAApC;EACA,OAAOC,qBAAA,CAAOE,OAAP,CAAe;IACpBC,GAAG,+BAAwBJ,OAAxB,cAAmCD,OAAnC,CADiB;IAEpBM,eAAe,EAAE,IAFG;IAGpBC,MAAM,EAAE;EAHY,CAAf,CAAP;AAKD;;AAEM,SAASC,QAAT,CAAkBR,OAAlB,EAA2B;EAChC,IAAMC,OAAO,GAAGC,qBAAA,CAAOC,YAAP,CAAoBF,OAApC;EACA,OAAOC,qBAAA,CAAOE,OAAP,CAAe;IACpBC,GAAG,+BAAwBJ,OAAxB,mBAAwCD,OAAxC,CADiB;IAEpBM,eAAe,EAAE,IAFG;IAGpBC,MAAM,EAAE;EAHY,CAAf,CAAP;AAKD;;eAEc;EAACC,QAAD;EAAWT;AAAX,C"}
|
package/build/actions/secrets.js
DELETED
|
@@ -1,125 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.createSigningKeys = createSigningKeys;
|
|
7
|
-
exports.fetchSecrets = fetchSecrets;
|
|
8
|
-
exports.haveValidSigningKeys = haveValidSigningKeys;
|
|
9
|
-
exports.saveSecrets = saveSecrets;
|
|
10
|
-
exports.testSecrets = testSecrets;
|
|
11
|
-
exports.testSecretsObservable = testSecretsObservable;
|
|
12
|
-
|
|
13
|
-
var _rxjs = require("rxjs");
|
|
14
|
-
|
|
15
|
-
var _SanityClient = _interopRequireDefault(require("../clients/SanityClient"));
|
|
16
|
-
|
|
17
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
18
|
-
|
|
19
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
20
|
-
|
|
21
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
22
|
-
|
|
23
|
-
var cache = {
|
|
24
|
-
secrets: null,
|
|
25
|
-
exists: false
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
function fetchSecrets() {
|
|
29
|
-
if (cache.exists) {
|
|
30
|
-
return Promise.resolve(cache);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
return _SanityClient.default.fetch('*[_id == "secrets.mux"][0]').then(secrets => {
|
|
34
|
-
cache.exists = Boolean(secrets);
|
|
35
|
-
cache.secrets = {
|
|
36
|
-
token: (secrets === null || secrets === void 0 ? void 0 : secrets.token) || null,
|
|
37
|
-
secretKey: (secrets === null || secrets === void 0 ? void 0 : secrets.secretKey) || null,
|
|
38
|
-
enableSignedUrls: (secrets === null || secrets === void 0 ? void 0 : secrets.enableSignedUrls) || false,
|
|
39
|
-
signingKeyId: (secrets === null || secrets === void 0 ? void 0 : secrets.signingKeyId) || null,
|
|
40
|
-
signingKeyPrivate: (secrets === null || secrets === void 0 ? void 0 : secrets.signingKeyPrivate) || null
|
|
41
|
-
};
|
|
42
|
-
return cache;
|
|
43
|
-
});
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
function saveSecrets(token, secretKey, enableSignedUrls, signingKeyId, signingKeyPrivate) {
|
|
47
|
-
var doc = {
|
|
48
|
-
_id: 'secrets.mux',
|
|
49
|
-
_type: 'mux.apiKey',
|
|
50
|
-
token,
|
|
51
|
-
secretKey,
|
|
52
|
-
enableSignedUrls,
|
|
53
|
-
signingKeyId,
|
|
54
|
-
signingKeyPrivate
|
|
55
|
-
};
|
|
56
|
-
return _SanityClient.default.createOrReplace(doc).then(() => {
|
|
57
|
-
cache.exists = true;
|
|
58
|
-
cache.secrets = {
|
|
59
|
-
token,
|
|
60
|
-
secretKey,
|
|
61
|
-
enableSignedUrls,
|
|
62
|
-
signingKeyId,
|
|
63
|
-
signingKeyPrivate
|
|
64
|
-
};
|
|
65
|
-
return cache.secrets;
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
function createSigningKeys() {
|
|
70
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
71
|
-
return _SanityClient.default.request({
|
|
72
|
-
url: "/addons/mux/signing-keys/".concat(dataset),
|
|
73
|
-
withCredentials: true,
|
|
74
|
-
method: 'POST'
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
function testSecrets() {
|
|
79
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
80
|
-
return _SanityClient.default.request({
|
|
81
|
-
url: "/addons/mux/secrets/".concat(dataset, "/test"),
|
|
82
|
-
withCredentials: true,
|
|
83
|
-
method: 'GET'
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
function haveValidSigningKeys(_x, _x2) {
|
|
88
|
-
return _haveValidSigningKeys.apply(this, arguments);
|
|
89
|
-
}
|
|
90
|
-
|
|
91
|
-
function _haveValidSigningKeys() {
|
|
92
|
-
_haveValidSigningKeys = _asyncToGenerator(function* (signingKeyId, signingKeyPrivate) {
|
|
93
|
-
if (!(signingKeyId && signingKeyPrivate)) {
|
|
94
|
-
return false;
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
98
|
-
|
|
99
|
-
try {
|
|
100
|
-
var res = yield _SanityClient.default.request({
|
|
101
|
-
url: "/addons/mux/signing-keys/".concat(dataset, "/").concat(signingKeyId),
|
|
102
|
-
withCredentials: true,
|
|
103
|
-
method: 'GET'
|
|
104
|
-
}); //
|
|
105
|
-
// if this signing key is valid it will return { data: { id: 'xxxx' } }
|
|
106
|
-
//
|
|
107
|
-
|
|
108
|
-
return !!(res.data && res.data.id);
|
|
109
|
-
} catch (e) {
|
|
110
|
-
console.error('Error fetching signingKeyId', signingKeyId, 'assuming it is not valid');
|
|
111
|
-
return false;
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
return _haveValidSigningKeys.apply(this, arguments);
|
|
115
|
-
}
|
|
116
|
-
|
|
117
|
-
function testSecretsObservable() {
|
|
118
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
119
|
-
return (0, _rxjs.defer)(() => _SanityClient.default.observable.request({
|
|
120
|
-
url: "/addons/mux/secrets/".concat(dataset, "/test"),
|
|
121
|
-
withCredentials: true,
|
|
122
|
-
method: 'GET'
|
|
123
|
-
}));
|
|
124
|
-
}
|
|
125
|
-
//# sourceMappingURL=secrets.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"secrets.js","names":["cache","secrets","exists","fetchSecrets","Promise","resolve","client","fetch","then","Boolean","token","secretKey","enableSignedUrls","signingKeyId","signingKeyPrivate","saveSecrets","doc","_id","_type","createOrReplace","createSigningKeys","dataset","clientConfig","request","url","withCredentials","method","testSecrets","haveValidSigningKeys","res","data","id","e","console","error","testSecretsObservable","defer","observable"],"sources":["../../src/actions/secrets.js"],"sourcesContent":["import {defer} from 'rxjs'\nimport client from '../clients/SanityClient'\n\nconst cache = {\n secrets: null,\n exists: false,\n}\n\nexport function fetchSecrets() {\n if (cache.exists) {\n return Promise.resolve(cache)\n }\n\n return client.fetch('*[_id == \"secrets.mux\"][0]').then((secrets) => {\n cache.exists = Boolean(secrets)\n cache.secrets = {\n token: secrets?.token || null,\n secretKey: secrets?.secretKey || null,\n enableSignedUrls: secrets?.enableSignedUrls || false,\n signingKeyId: secrets?.signingKeyId || null,\n signingKeyPrivate: secrets?.signingKeyPrivate || null,\n }\n return cache\n })\n}\n\nexport function saveSecrets(token, secretKey, enableSignedUrls, signingKeyId, signingKeyPrivate) {\n const doc = {\n _id: 'secrets.mux',\n _type: 'mux.apiKey',\n token,\n secretKey,\n enableSignedUrls,\n signingKeyId,\n signingKeyPrivate,\n }\n\n return client.createOrReplace(doc).then(() => {\n cache.exists = true\n cache.secrets = {\n token,\n secretKey,\n enableSignedUrls,\n signingKeyId,\n signingKeyPrivate,\n }\n return cache.secrets\n })\n}\n\nexport function createSigningKeys() {\n const dataset = client.clientConfig.dataset\n return client.request({\n url: `/addons/mux/signing-keys/${dataset}`,\n withCredentials: true,\n method: 'POST',\n })\n}\n\nexport function testSecrets() {\n const dataset = client.clientConfig.dataset\n return client.request({\n url: `/addons/mux/secrets/${dataset}/test`,\n withCredentials: true,\n method: 'GET',\n })\n}\n\nexport async function haveValidSigningKeys(signingKeyId, signingKeyPrivate) {\n if (!(signingKeyId && signingKeyPrivate)) {\n return false\n }\n\n const dataset = client.clientConfig.dataset\n try {\n const res = await client.request({\n url: `/addons/mux/signing-keys/${dataset}/${signingKeyId}`,\n withCredentials: true,\n method: 'GET',\n })\n //\n // if this signing key is valid it will return { data: { id: 'xxxx' } }\n //\n return !!(res.data && res.data.id)\n } catch (e) {\n console.error('Error fetching signingKeyId', signingKeyId, 'assuming it is not valid')\n return false\n }\n}\n\nexport function testSecretsObservable() {\n const dataset = client.clientConfig.dataset\n return defer(() =>\n client.observable.request({\n url: `/addons/mux/secrets/${dataset}/test`,\n withCredentials: true,\n method: 'GET',\n })\n )\n}\n"],"mappings":"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"}
|
package/build/actions/upload.js
DELETED
|
@@ -1,280 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.cancelUpload = cancelUpload;
|
|
7
|
-
exports.default = void 0;
|
|
8
|
-
exports.getUpload = getUpload;
|
|
9
|
-
exports.uploadFile = uploadFile;
|
|
10
|
-
exports.uploadUrl = uploadUrl;
|
|
11
|
-
|
|
12
|
-
var _uuid = require("@sanity/uuid");
|
|
13
|
-
|
|
14
|
-
var _config = _interopRequireDefault(require("../config"));
|
|
15
|
-
|
|
16
|
-
var _lodash = require("lodash");
|
|
17
|
-
|
|
18
|
-
var _rxjs = require("rxjs");
|
|
19
|
-
|
|
20
|
-
var _operators = require("rxjs/operators");
|
|
21
|
-
|
|
22
|
-
var _assets = require("../actions/assets");
|
|
23
|
-
|
|
24
|
-
var _secrets = require("../actions/secrets");
|
|
25
|
-
|
|
26
|
-
var _SanityClient = _interopRequireDefault(require("../clients/SanityClient"));
|
|
27
|
-
|
|
28
|
-
var _upChunkObservable = require("../clients/upChunkObservable");
|
|
29
|
-
|
|
30
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
31
|
-
|
|
32
|
-
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
|
|
33
|
-
|
|
34
|
-
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
|
|
35
|
-
|
|
36
|
-
function ownKeys(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; }
|
|
37
|
-
|
|
38
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
39
|
-
|
|
40
|
-
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; }
|
|
41
|
-
|
|
42
|
-
function cancelUpload(uuid) {
|
|
43
|
-
return _SanityClient.default.observable.request({
|
|
44
|
-
url: "/addons/mux/uploads/".concat(_SanityClient.default.clientConfig.dataset, "/").concat(uuid),
|
|
45
|
-
withCredentials: true,
|
|
46
|
-
method: 'DELETE'
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
function uploadUrl(url) {
|
|
51
|
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
52
|
-
return testUrl(url).pipe((0, _operators.switchMap)(validUrl => {
|
|
53
|
-
return (0, _rxjs.concat)((0, _rxjs.of)({
|
|
54
|
-
type: 'url',
|
|
55
|
-
url: validUrl
|
|
56
|
-
}), (0, _secrets.testSecretsObservable)().pipe((0, _operators.switchMap)(json => {
|
|
57
|
-
if (!json || !json.status) {
|
|
58
|
-
return (0, _rxjs.throwError)(new Error('Invalid credentials'));
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
var uuid = (0, _uuid.uuid)();
|
|
62
|
-
var enableSignedUrls = options.enableSignedUrls;
|
|
63
|
-
var muxBody = {
|
|
64
|
-
input: validUrl,
|
|
65
|
-
playback_policy: [enableSignedUrls ? 'signed' : 'public'],
|
|
66
|
-
mp4_support: _config.default.mp4_support
|
|
67
|
-
};
|
|
68
|
-
var query = {
|
|
69
|
-
muxBody: JSON.stringify(muxBody),
|
|
70
|
-
filename: validUrl.split('/').slice(-1)[0]
|
|
71
|
-
};
|
|
72
|
-
var dataset = _SanityClient.default.clientConfig.dataset;
|
|
73
|
-
return (0, _rxjs.defer)(() => _SanityClient.default.observable.request({
|
|
74
|
-
url: "/addons/mux/assets/".concat(dataset),
|
|
75
|
-
withCredentials: true,
|
|
76
|
-
method: 'POST',
|
|
77
|
-
headers: {
|
|
78
|
-
'MUX-Proxy-UUID': uuid,
|
|
79
|
-
'Content-Type': 'application/json'
|
|
80
|
-
},
|
|
81
|
-
query
|
|
82
|
-
})).pipe((0, _operators.mergeMap)(result => {
|
|
83
|
-
var asset = result && result.results && result.results[0] && result.results[0].document || null;
|
|
84
|
-
|
|
85
|
-
if (!asset) {
|
|
86
|
-
return (0, _rxjs.throwError)(new Error('No asset document returned'));
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
return (0, _rxjs.of)({
|
|
90
|
-
type: 'success',
|
|
91
|
-
id: uuid,
|
|
92
|
-
asset
|
|
93
|
-
});
|
|
94
|
-
}));
|
|
95
|
-
})));
|
|
96
|
-
}));
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
function uploadFile(file) {
|
|
100
|
-
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
101
|
-
return testFile(file).pipe((0, _operators.switchMap)(fileOptions => {
|
|
102
|
-
return (0, _rxjs.concat)((0, _rxjs.of)({
|
|
103
|
-
type: 'file',
|
|
104
|
-
file: fileOptions
|
|
105
|
-
}), (0, _secrets.testSecretsObservable)().pipe((0, _operators.switchMap)(json => {
|
|
106
|
-
if (!json || !json.status) {
|
|
107
|
-
return (0, _rxjs.throwError)(new Error('Invalid credentials'));
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
var uuid = (0, _uuid.uuid)();
|
|
111
|
-
var enableSignedUrls = options.enableSignedUrls;
|
|
112
|
-
var body = {
|
|
113
|
-
mp4_support: _config.default.mp4_support,
|
|
114
|
-
playback_policy: [enableSignedUrls ? 'signed' : 'public']
|
|
115
|
-
};
|
|
116
|
-
return (0, _rxjs.concat)((0, _rxjs.of)({
|
|
117
|
-
type: 'uuid',
|
|
118
|
-
uuid
|
|
119
|
-
}), (0, _rxjs.defer)(() => _SanityClient.default.observable.request({
|
|
120
|
-
url: "/addons/mux/uploads/".concat(_SanityClient.default.clientConfig.dataset),
|
|
121
|
-
withCredentials: true,
|
|
122
|
-
method: 'POST',
|
|
123
|
-
headers: {
|
|
124
|
-
'MUX-Proxy-UUID': uuid,
|
|
125
|
-
'Content-Type': 'application/json'
|
|
126
|
-
},
|
|
127
|
-
body
|
|
128
|
-
})).pipe((0, _operators.mergeMap)(result => {
|
|
129
|
-
return (0, _upChunkObservable.createUpChunkObservable)(uuid, result.upload.url, file).pipe( // eslint-disable-next-line max-nested-callbacks
|
|
130
|
-
(0, _operators.mergeMap)(event => {
|
|
131
|
-
if (event.type !== 'success') {
|
|
132
|
-
return (0, _rxjs.of)(event);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
return (0, _rxjs.from)(updateAssetDocumentFromUpload(uuid)).pipe( // eslint-disable-next-line max-nested-callbacks
|
|
136
|
-
(0, _operators.mergeMap)(doc => (0, _rxjs.of)(_objectSpread(_objectSpread({}, event), {}, {
|
|
137
|
-
asset: doc
|
|
138
|
-
}))));
|
|
139
|
-
}), // eslint-disable-next-line max-nested-callbacks
|
|
140
|
-
(0, _operators.catchError)(err => {
|
|
141
|
-
// Delete asset document
|
|
142
|
-
return cancelUpload(uuid).pipe((0, _operators.mergeMapTo)((0, _rxjs.throwError)(err)));
|
|
143
|
-
}));
|
|
144
|
-
})));
|
|
145
|
-
})));
|
|
146
|
-
}));
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
function getUpload(assetId) {
|
|
150
|
-
return _SanityClient.default.request({
|
|
151
|
-
url: "/addons/mux/uploads/".concat(_SanityClient.default.clientConfig.dataset, "/").concat(assetId),
|
|
152
|
-
withCredentials: true,
|
|
153
|
-
method: 'GET'
|
|
154
|
-
});
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
var _default = {
|
|
158
|
-
uploadUrl,
|
|
159
|
-
uploadFile,
|
|
160
|
-
getUpload
|
|
161
|
-
};
|
|
162
|
-
exports.default = _default;
|
|
163
|
-
|
|
164
|
-
function pollUpload(uuid) {
|
|
165
|
-
var maxTries = 10;
|
|
166
|
-
var pollInterval;
|
|
167
|
-
var tries = 0;
|
|
168
|
-
var assetId;
|
|
169
|
-
var upload;
|
|
170
|
-
return new Promise((resolve, reject) => {
|
|
171
|
-
pollInterval = setInterval( /*#__PURE__*/_asyncToGenerator(function* () {
|
|
172
|
-
try {
|
|
173
|
-
upload = yield getUpload(uuid);
|
|
174
|
-
} catch (err) {
|
|
175
|
-
reject(err);
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
assetId = upload && upload.data && upload.data.asset_id;
|
|
180
|
-
|
|
181
|
-
if (assetId) {
|
|
182
|
-
clearInterval(pollInterval);
|
|
183
|
-
resolve(upload);
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
if (tries > maxTries) {
|
|
187
|
-
clearInterval(pollInterval);
|
|
188
|
-
reject(new Error('Upload did not finish'));
|
|
189
|
-
}
|
|
190
|
-
|
|
191
|
-
tries++;
|
|
192
|
-
}), 2000);
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
function updateAssetDocumentFromUpload(_x) {
|
|
197
|
-
return _updateAssetDocumentFromUpload.apply(this, arguments);
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
function _updateAssetDocumentFromUpload() {
|
|
201
|
-
_updateAssetDocumentFromUpload = _asyncToGenerator(function* (uuid) {
|
|
202
|
-
var upload;
|
|
203
|
-
var asset;
|
|
204
|
-
|
|
205
|
-
try {
|
|
206
|
-
upload = yield pollUpload(uuid);
|
|
207
|
-
} catch (err) {
|
|
208
|
-
return Promise.reject(err);
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
try {
|
|
212
|
-
asset = yield (0, _assets.getAsset)(upload.data.asset_id);
|
|
213
|
-
} catch (err) {
|
|
214
|
-
return Promise.reject(err);
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
var doc = {
|
|
218
|
-
_id: uuid,
|
|
219
|
-
_type: 'mux.videoAsset',
|
|
220
|
-
status: asset.data.status,
|
|
221
|
-
data: asset.data,
|
|
222
|
-
assetId: asset.data.id,
|
|
223
|
-
playbackId: asset.data.playback_ids[0].id,
|
|
224
|
-
uploadId: upload.data.id
|
|
225
|
-
};
|
|
226
|
-
return _SanityClient.default.createOrReplace(doc).then(() => {
|
|
227
|
-
return doc;
|
|
228
|
-
});
|
|
229
|
-
});
|
|
230
|
-
return _updateAssetDocumentFromUpload.apply(this, arguments);
|
|
231
|
-
}
|
|
232
|
-
|
|
233
|
-
function testFile(file) {
|
|
234
|
-
if (typeof window !== 'undefined' && file instanceof window.File) {
|
|
235
|
-
var fileOptions = optionsFromFile(file);
|
|
236
|
-
return (0, _rxjs.of)(fileOptions);
|
|
237
|
-
}
|
|
238
|
-
|
|
239
|
-
return (0, _rxjs.throwError)(new Error('Invalid file'));
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
function testUrl(url) {
|
|
243
|
-
var error = new Error('Invalid URL');
|
|
244
|
-
|
|
245
|
-
if (!(0, _lodash.isString)(url)) {
|
|
246
|
-
return (0, _rxjs.throwError)(error);
|
|
247
|
-
}
|
|
248
|
-
|
|
249
|
-
var parsed;
|
|
250
|
-
|
|
251
|
-
try {
|
|
252
|
-
parsed = new URL(url);
|
|
253
|
-
} catch (err) {
|
|
254
|
-
return (0, _rxjs.throwError)(error);
|
|
255
|
-
}
|
|
256
|
-
|
|
257
|
-
if (parsed && !parsed.protocol.match(/http:|https:/)) {
|
|
258
|
-
return (0, _rxjs.throwError)(error);
|
|
259
|
-
}
|
|
260
|
-
|
|
261
|
-
return (0, _rxjs.of)(url);
|
|
262
|
-
}
|
|
263
|
-
|
|
264
|
-
function optionsFromFile(opts, file) {
|
|
265
|
-
if (typeof window === 'undefined' || !(file instanceof window.File)) {
|
|
266
|
-
return opts;
|
|
267
|
-
}
|
|
268
|
-
|
|
269
|
-
var fileOpts = {
|
|
270
|
-
filename: opts.preserveFilename === false ? undefined : file.name,
|
|
271
|
-
contentType: file.type
|
|
272
|
-
};
|
|
273
|
-
return _objectSpread(_objectSpread({}, {
|
|
274
|
-
filename: opts.preserveFilename === false ? undefined : file.name,
|
|
275
|
-
contentType: file.type
|
|
276
|
-
}), {}, {
|
|
277
|
-
fileOpts
|
|
278
|
-
});
|
|
279
|
-
}
|
|
280
|
-
//# sourceMappingURL=upload.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"upload.js","names":["cancelUpload","uuid","client","observable","request","url","clientConfig","dataset","withCredentials","method","uploadUrl","options","testUrl","pipe","switchMap","validUrl","concat","of","type","testSecretsObservable","json","status","throwError","Error","generateUuid","enableSignedUrls","muxBody","input","playback_policy","mp4_support","config","query","JSON","stringify","filename","split","slice","defer","headers","mergeMap","result","asset","results","document","id","uploadFile","file","testFile","fileOptions","body","createUpChunkObservable","upload","event","from","updateAssetDocumentFromUpload","doc","catchError","err","mergeMapTo","getUpload","assetId","pollUpload","maxTries","pollInterval","tries","Promise","resolve","reject","setInterval","data","asset_id","clearInterval","getAsset","_id","_type","playbackId","playback_ids","uploadId","createOrReplace","then","window","File","optionsFromFile","error","isString","parsed","URL","protocol","match","opts","fileOpts","preserveFilename","undefined","name","contentType"],"sources":["../../src/actions/upload.js"],"sourcesContent":["/* eslint-disable camelcase */\nimport {uuid as generateUuid} from '@sanity/uuid'\nimport config from '../config'\nimport {isString} from 'lodash'\nimport {concat, defer, from, of, throwError} from 'rxjs'\nimport {catchError, mergeMap, mergeMapTo, switchMap} from 'rxjs/operators'\nimport {getAsset} from '../actions/assets'\nimport {testSecretsObservable} from '../actions/secrets'\nimport client from '../clients/SanityClient'\nimport {createUpChunkObservable} from '../clients/upChunkObservable'\n\nexport function cancelUpload(uuid) {\n return client.observable.request({\n url: `/addons/mux/uploads/${client.clientConfig.dataset}/${uuid}`,\n withCredentials: true,\n method: 'DELETE',\n })\n}\n\nexport function uploadUrl(url, options = {}) {\n return testUrl(url).pipe(\n switchMap((validUrl) => {\n return concat(\n of({type: 'url', url: validUrl}),\n testSecretsObservable().pipe(\n switchMap((json) => {\n if (!json || !json.status) {\n return throwError(new Error('Invalid credentials'))\n }\n const uuid = generateUuid()\n const {enableSignedUrls} = options\n const muxBody = {\n input: validUrl,\n playback_policy: [enableSignedUrls ? 'signed' : 'public'],\n mp4_support: config.mp4_support,\n }\n const query = {\n muxBody: JSON.stringify(muxBody),\n filename: validUrl.split('/').slice(-1)[0],\n }\n\n const dataset = client.clientConfig.dataset\n return defer(() =>\n client.observable.request({\n url: `/addons/mux/assets/${dataset}`,\n withCredentials: true,\n method: 'POST',\n headers: {\n 'MUX-Proxy-UUID': uuid,\n 'Content-Type': 'application/json',\n },\n query,\n })\n ).pipe(\n mergeMap((result) => {\n const asset =\n (result && result.results && result.results[0] && result.results[0].document) ||\n null\n\n if (!asset) {\n return throwError(new Error('No asset document returned'))\n }\n return of({type: 'success', id: uuid, asset})\n })\n )\n })\n )\n )\n })\n )\n}\n\nexport function uploadFile(file, options = {}) {\n return testFile(file).pipe(\n switchMap((fileOptions) => {\n return concat(\n of({type: 'file', file: fileOptions}),\n testSecretsObservable().pipe(\n switchMap((json) => {\n if (!json || !json.status) {\n return throwError(new Error('Invalid credentials'))\n }\n const uuid = generateUuid()\n const {enableSignedUrls} = options\n const body = {\n mp4_support: config.mp4_support,\n playback_policy: [enableSignedUrls ? 'signed' : 'public'],\n }\n\n return concat(\n of({type: 'uuid', uuid}),\n defer(() =>\n client.observable.request({\n url: `/addons/mux/uploads/${client.clientConfig.dataset}`,\n withCredentials: true,\n method: 'POST',\n headers: {\n 'MUX-Proxy-UUID': uuid,\n 'Content-Type': 'application/json',\n },\n body,\n })\n ).pipe(\n mergeMap((result) => {\n return createUpChunkObservable(uuid, result.upload.url, file).pipe(\n // eslint-disable-next-line max-nested-callbacks\n mergeMap((event) => {\n if (event.type !== 'success') {\n return of(event)\n }\n return from(updateAssetDocumentFromUpload(uuid)).pipe(\n // eslint-disable-next-line max-nested-callbacks\n mergeMap((doc) => of({...event, asset: doc}))\n )\n }),\n // eslint-disable-next-line max-nested-callbacks\n catchError((err) => {\n // Delete asset document\n return cancelUpload(uuid).pipe(mergeMapTo(throwError(err)))\n })\n )\n })\n )\n )\n })\n )\n )\n })\n )\n}\n\nexport function getUpload(assetId) {\n return client.request({\n url: `/addons/mux/uploads/${client.clientConfig.dataset}/${assetId}`,\n withCredentials: true,\n method: 'GET',\n })\n}\n\nexport default {uploadUrl, uploadFile, getUpload}\n\nfunction pollUpload(uuid) {\n const maxTries = 10\n let pollInterval\n let tries = 0\n let assetId\n let upload\n return new Promise((resolve, reject) => {\n pollInterval = setInterval(async () => {\n try {\n upload = await getUpload(uuid)\n } catch (err) {\n reject(err)\n return\n }\n assetId = upload && upload.data && upload.data.asset_id\n if (assetId) {\n clearInterval(pollInterval)\n resolve(upload)\n }\n if (tries > maxTries) {\n clearInterval(pollInterval)\n reject(new Error('Upload did not finish'))\n }\n tries++\n }, 2000)\n })\n}\n\nasync function updateAssetDocumentFromUpload(uuid) {\n let upload\n let asset\n try {\n upload = await pollUpload(uuid)\n } catch (err) {\n return Promise.reject(err)\n }\n try {\n asset = await getAsset(upload.data.asset_id)\n } catch (err) {\n return Promise.reject(err)\n }\n\n const doc = {\n _id: uuid,\n _type: 'mux.videoAsset',\n status: asset.data.status,\n data: asset.data,\n assetId: asset.data.id,\n playbackId: asset.data.playback_ids[0].id,\n uploadId: upload.data.id,\n }\n return client.createOrReplace(doc).then(() => {\n return doc\n })\n}\n\nfunction testFile(file) {\n if (typeof window !== 'undefined' && file instanceof window.File) {\n const fileOptions = optionsFromFile(file)\n return of(fileOptions)\n }\n return throwError(new Error('Invalid file'))\n}\n\nfunction testUrl(url) {\n const error = new Error('Invalid URL')\n if (!isString(url)) {\n return throwError(error)\n }\n let parsed\n try {\n parsed = new URL(url)\n } catch (err) {\n return throwError(error)\n }\n if (parsed && !parsed.protocol.match(/http:|https:/)) {\n return throwError(error)\n }\n return of(url)\n}\n\nfunction optionsFromFile(opts, file) {\n if (typeof window === 'undefined' || !(file instanceof window.File)) {\n return opts\n }\n const fileOpts = {\n filename: opts.preserveFilename === false ? undefined : file.name,\n contentType: file.type,\n }\n\n return {\n ...{\n filename: opts.preserveFilename === false ? undefined : file.name,\n contentType: file.type,\n },\n fileOpts,\n }\n}\n"],"mappings":"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"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.default = exports.client = void 0;
|
|
7
|
-
|
|
8
|
-
var _client = _interopRequireDefault(require("part:@sanity/base/client"));
|
|
9
|
-
|
|
10
|
-
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
11
|
-
|
|
12
|
-
var isContentLakeSupported = typeof _client.default.withConfig === 'function';
|
|
13
|
-
var client = isContentLakeSupported ? _client.default.withConfig({
|
|
14
|
-
apiVersion: '2021-05-17'
|
|
15
|
-
}) : _client.default;
|
|
16
|
-
exports.client = client;
|
|
17
|
-
var _default = client;
|
|
18
|
-
exports.default = _default;
|
|
19
|
-
//# sourceMappingURL=SanityClient.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"SanityClient.js","names":["isContentLakeSupported","sanityClient","withConfig","client","apiVersion"],"sources":["../../src/clients/SanityClient.js"],"sourcesContent":["import sanityClient from 'part:@sanity/base/client'\n\nconst isContentLakeSupported = typeof sanityClient.withConfig === 'function'\n\nexport const client = isContentLakeSupported\n ? sanityClient.withConfig({apiVersion: '2021-05-17'})\n : sanityClient\n\nexport default client\n"],"mappings":";;;;;;;AAAA;;;;AAEA,IAAMA,sBAAsB,GAAG,OAAOC,eAAA,CAAaC,UAApB,KAAmC,UAAlE;AAEO,IAAMC,MAAM,GAAGH,sBAAsB,GACxCC,eAAA,CAAaC,UAAb,CAAwB;EAACE,UAAU,EAAE;AAAb,CAAxB,CADwC,GAExCH,eAFG;;eAIQE,M"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.createUpChunkObservable = createUpChunkObservable;
|
|
7
|
-
|
|
8
|
-
var UpChunk = _interopRequireWildcard(require("@mux/upchunk"));
|
|
9
|
-
|
|
10
|
-
var _rxjs = require("rxjs");
|
|
11
|
-
|
|
12
|
-
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); }
|
|
13
|
-
|
|
14
|
-
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; }
|
|
15
|
-
|
|
16
|
-
function createUpChunkObservable(uuid, uploadUrl, source) {
|
|
17
|
-
return new _rxjs.Observable(subscriber => {
|
|
18
|
-
var upchunk = UpChunk.createUpload({
|
|
19
|
-
endpoint: uploadUrl,
|
|
20
|
-
file: source,
|
|
21
|
-
chunkSize: 5120 // Uploads the file in ~5mb chunks
|
|
22
|
-
|
|
23
|
-
});
|
|
24
|
-
|
|
25
|
-
var successHandler = () => {
|
|
26
|
-
subscriber.next({
|
|
27
|
-
type: 'success',
|
|
28
|
-
id: uuid
|
|
29
|
-
});
|
|
30
|
-
subscriber.complete();
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
var errorHandler = data => subscriber.error(new Error(data.detail.message));
|
|
34
|
-
|
|
35
|
-
var progressHandler = data => {
|
|
36
|
-
return subscriber.next({
|
|
37
|
-
type: 'progress',
|
|
38
|
-
percent: data.detail
|
|
39
|
-
});
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
var offlineHandler = data => {
|
|
43
|
-
upchunk.pause();
|
|
44
|
-
subscriber.next({
|
|
45
|
-
type: 'pause',
|
|
46
|
-
id: uuid
|
|
47
|
-
});
|
|
48
|
-
};
|
|
49
|
-
|
|
50
|
-
var onlineHandler = data => {
|
|
51
|
-
upchunk.resume();
|
|
52
|
-
subscriber.next({
|
|
53
|
-
type: 'resume',
|
|
54
|
-
id: uuid
|
|
55
|
-
});
|
|
56
|
-
};
|
|
57
|
-
|
|
58
|
-
upchunk.on('success', successHandler);
|
|
59
|
-
upchunk.on('error', errorHandler);
|
|
60
|
-
upchunk.on('progress', progressHandler);
|
|
61
|
-
upchunk.on('offline', offlineHandler);
|
|
62
|
-
upchunk.on('online', onlineHandler);
|
|
63
|
-
return () => upchunk.abort();
|
|
64
|
-
});
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=upChunkObservable.js.map
|