@pixwel/pixwel-sdk 2.0.0 → 2.1.0
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/.babelrc +2 -1
- package/README.md +60 -0
- package/coverage/clover.xml +581 -430
- package/coverage/coverage-final.json +15 -9
- package/coverage/lcov-report/Ass.js.html +212 -212
- package/coverage/lcov-report/Asset.js.html +27 -27
- package/coverage/lcov-report/AssetType.js.html +98 -0
- package/coverage/lcov-report/Encode.js.html +98 -0
- package/coverage/lcov-report/File.js.html +98 -0
- package/coverage/lcov-report/Filename.js.html +9 -726
- package/coverage/lcov-report/Ingest.js.html +1239 -279
- package/coverage/lcov-report/IngestFile.js.html +5 -5
- package/coverage/lcov-report/Model.js.html +821 -0
- package/coverage/lcov-report/Order.js.html +25 -25
- package/coverage/lcov-report/Srt.js.html +102 -102
- package/coverage/lcov-report/Sub.js.html +43 -43
- package/coverage/lcov-report/Tag.js.html +98 -0
- package/coverage/lcov-report/TimeFormat.js.html +63 -63
- package/coverage/lcov-report/fileType.js.html +188 -0
- package/coverage/lcov-report/index.html +164 -86
- package/coverage/lcov.info +1159 -846
- package/dist/index.js +74 -22
- package/dist/src/Asset.js +10 -5
- package/dist/src/AssetType.js +54 -0
- package/dist/src/Encode.js +54 -0
- package/dist/src/File.js +54 -0
- package/dist/src/Filename.js +7 -228
- package/dist/src/Ingest.js +365 -33
- package/dist/src/IngestFile.js +6 -2
- package/dist/src/Model.js +569 -0
- package/dist/src/Order.js +20 -9
- package/dist/src/Srt.js +5 -1
- package/dist/src/Tag.js +54 -0
- package/dist/src/fileType.js +43 -0
- package/index.js +14 -0
- package/package.json +9 -3
- package/src/AssetType.js +11 -0
- package/src/Encode.js +11 -0
- package/src/File.js +11 -0
- package/src/Filename.js +0 -239
- package/src/Ingest.js +347 -27
- package/src/Model.js +252 -0
- package/src/Tag.js +11 -0
- package/src/fileType.js +41 -0
- package/test/Filename.spec.js +3 -707
- package/test/Ingest.spec.js +1107 -152
- package/test/Model.spec.js +328 -0
package/dist/index.js
CHANGED
|
@@ -1,52 +1,104 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
4
|
+
value: true
|
|
5
5
|
});
|
|
6
6
|
|
|
7
7
|
var _Asset = require('./src/Asset');
|
|
8
8
|
|
|
9
9
|
Object.defineProperty(exports, 'Asset', {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
10
|
+
enumerable: true,
|
|
11
|
+
get: function get() {
|
|
12
|
+
return _interopRequireDefault(_Asset).default;
|
|
13
|
+
}
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
var _AssetType = require('./src/AssetType');
|
|
17
|
+
|
|
18
|
+
Object.defineProperty(exports, 'AssetType', {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _interopRequireDefault(_AssetType).default;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
|
|
25
|
+
var _Encode = require('./src/Encode');
|
|
26
|
+
|
|
27
|
+
Object.defineProperty(exports, 'Encode', {
|
|
28
|
+
enumerable: true,
|
|
29
|
+
get: function get() {
|
|
30
|
+
return _interopRequireDefault(_Encode).default;
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
var _File = require('./src/File');
|
|
35
|
+
|
|
36
|
+
Object.defineProperty(exports, 'File', {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function get() {
|
|
39
|
+
return _interopRequireDefault(_File).default;
|
|
40
|
+
}
|
|
14
41
|
});
|
|
15
42
|
|
|
16
43
|
var _Filename = require('./src/Filename');
|
|
17
44
|
|
|
18
45
|
Object.defineProperty(exports, 'Filename', {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
46
|
+
enumerable: true,
|
|
47
|
+
get: function get() {
|
|
48
|
+
return _interopRequireDefault(_Filename).default;
|
|
49
|
+
}
|
|
23
50
|
});
|
|
24
51
|
|
|
25
52
|
var _Ingest = require('./src/Ingest');
|
|
26
53
|
|
|
27
54
|
Object.defineProperty(exports, 'Ingest', {
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
55
|
+
enumerable: true,
|
|
56
|
+
get: function get() {
|
|
57
|
+
return _interopRequireDefault(_Ingest).default;
|
|
58
|
+
}
|
|
32
59
|
});
|
|
33
60
|
|
|
34
61
|
var _IngestFile = require('./src/IngestFile');
|
|
35
62
|
|
|
36
63
|
Object.defineProperty(exports, 'IngestFile', {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
64
|
+
enumerable: true,
|
|
65
|
+
get: function get() {
|
|
66
|
+
return _interopRequireDefault(_IngestFile).default;
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
var _Model = require('./src/Model');
|
|
71
|
+
|
|
72
|
+
Object.defineProperty(exports, 'Model', {
|
|
73
|
+
enumerable: true,
|
|
74
|
+
get: function get() {
|
|
75
|
+
return _interopRequireDefault(_Model).default;
|
|
76
|
+
}
|
|
41
77
|
});
|
|
42
78
|
|
|
43
79
|
var _Order = require('./src/Order');
|
|
44
80
|
|
|
45
81
|
Object.defineProperty(exports, 'Order', {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
82
|
+
enumerable: true,
|
|
83
|
+
get: function get() {
|
|
84
|
+
return _interopRequireDefault(_Order).default;
|
|
85
|
+
}
|
|
50
86
|
});
|
|
51
87
|
|
|
52
|
-
|
|
88
|
+
var _Tag = require('./src/Tag');
|
|
89
|
+
|
|
90
|
+
Object.defineProperty(exports, 'Tag', {
|
|
91
|
+
enumerable: true,
|
|
92
|
+
get: function get() {
|
|
93
|
+
return _interopRequireDefault(_Tag).default;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
|
|
97
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
98
|
+
|
|
99
|
+
var Pixwel = exports.Pixwel = {
|
|
100
|
+
credentials: {
|
|
101
|
+
token: null
|
|
102
|
+
},
|
|
103
|
+
endpoint: 'https://api.pixwel.com/api'
|
|
104
|
+
};
|
package/dist/src/Asset.js
CHANGED
|
@@ -4,16 +4,22 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
10
|
+
|
|
11
|
+
var _createClass2 = require("babel-runtime/helpers/createClass");
|
|
12
|
+
|
|
13
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
14
|
+
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
10
16
|
|
|
11
17
|
var Asset = function () {
|
|
12
18
|
function Asset() {
|
|
13
|
-
|
|
19
|
+
(0, _classCallCheck3.default)(this, Asset);
|
|
14
20
|
}
|
|
15
21
|
|
|
16
|
-
|
|
22
|
+
(0, _createClass3.default)(Asset, null, [{
|
|
17
23
|
key: "mapFromOrder",
|
|
18
24
|
value: function mapFromOrder(order) {
|
|
19
25
|
if (!order) {
|
|
@@ -34,7 +40,6 @@ var Asset = function () {
|
|
|
34
40
|
return asset;
|
|
35
41
|
}
|
|
36
42
|
}]);
|
|
37
|
-
|
|
38
43
|
return Asset;
|
|
39
44
|
}();
|
|
40
45
|
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
|
8
|
+
|
|
9
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
|
10
|
+
|
|
11
|
+
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
|
12
|
+
|
|
13
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
14
|
+
|
|
15
|
+
var _createClass2 = require('babel-runtime/helpers/createClass');
|
|
16
|
+
|
|
17
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
18
|
+
|
|
19
|
+
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
|
20
|
+
|
|
21
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
22
|
+
|
|
23
|
+
var _inherits2 = require('babel-runtime/helpers/inherits');
|
|
24
|
+
|
|
25
|
+
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
26
|
+
|
|
27
|
+
var _Model2 = require('./Model');
|
|
28
|
+
|
|
29
|
+
var _Model3 = _interopRequireDefault(_Model2);
|
|
30
|
+
|
|
31
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
32
|
+
|
|
33
|
+
var AssetType = function (_Model) {
|
|
34
|
+
(0, _inherits3.default)(AssetType, _Model);
|
|
35
|
+
|
|
36
|
+
function AssetType(data) {
|
|
37
|
+
(0, _classCallCheck3.default)(this, AssetType);
|
|
38
|
+
|
|
39
|
+
var _this = (0, _possibleConstructorReturn3.default)(this, (AssetType.__proto__ || (0, _getPrototypeOf2.default)(AssetType)).call(this, data));
|
|
40
|
+
|
|
41
|
+
_this._resource = 'assettypes';
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
(0, _createClass3.default)(AssetType, null, [{
|
|
46
|
+
key: '_resource',
|
|
47
|
+
get: function get() {
|
|
48
|
+
return 'assettypes';
|
|
49
|
+
}
|
|
50
|
+
}]);
|
|
51
|
+
return AssetType;
|
|
52
|
+
}(_Model3.default);
|
|
53
|
+
|
|
54
|
+
exports.default = AssetType;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
|
8
|
+
|
|
9
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
|
10
|
+
|
|
11
|
+
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
|
12
|
+
|
|
13
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
14
|
+
|
|
15
|
+
var _createClass2 = require('babel-runtime/helpers/createClass');
|
|
16
|
+
|
|
17
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
18
|
+
|
|
19
|
+
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
|
20
|
+
|
|
21
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
22
|
+
|
|
23
|
+
var _inherits2 = require('babel-runtime/helpers/inherits');
|
|
24
|
+
|
|
25
|
+
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
26
|
+
|
|
27
|
+
var _Model2 = require('./Model');
|
|
28
|
+
|
|
29
|
+
var _Model3 = _interopRequireDefault(_Model2);
|
|
30
|
+
|
|
31
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
32
|
+
|
|
33
|
+
var Encode = function (_Model) {
|
|
34
|
+
(0, _inherits3.default)(Encode, _Model);
|
|
35
|
+
|
|
36
|
+
function Encode(data) {
|
|
37
|
+
(0, _classCallCheck3.default)(this, Encode);
|
|
38
|
+
|
|
39
|
+
var _this = (0, _possibleConstructorReturn3.default)(this, (Encode.__proto__ || (0, _getPrototypeOf2.default)(Encode)).call(this, data));
|
|
40
|
+
|
|
41
|
+
_this._resource = 'encodes';
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
(0, _createClass3.default)(Encode, null, [{
|
|
46
|
+
key: '_resource',
|
|
47
|
+
get: function get() {
|
|
48
|
+
return 'encodes';
|
|
49
|
+
}
|
|
50
|
+
}]);
|
|
51
|
+
return Encode;
|
|
52
|
+
}(_Model3.default);
|
|
53
|
+
|
|
54
|
+
exports.default = Encode;
|
package/dist/src/File.js
ADDED
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
|
|
7
|
+
var _getPrototypeOf = require("babel-runtime/core-js/object/get-prototype-of");
|
|
8
|
+
|
|
9
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
|
10
|
+
|
|
11
|
+
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
|
|
12
|
+
|
|
13
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
14
|
+
|
|
15
|
+
var _createClass2 = require("babel-runtime/helpers/createClass");
|
|
16
|
+
|
|
17
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
|
18
|
+
|
|
19
|
+
var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn");
|
|
20
|
+
|
|
21
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
|
22
|
+
|
|
23
|
+
var _inherits2 = require("babel-runtime/helpers/inherits");
|
|
24
|
+
|
|
25
|
+
var _inherits3 = _interopRequireDefault(_inherits2);
|
|
26
|
+
|
|
27
|
+
var _Model2 = require("./Model");
|
|
28
|
+
|
|
29
|
+
var _Model3 = _interopRequireDefault(_Model2);
|
|
30
|
+
|
|
31
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
32
|
+
|
|
33
|
+
var File = function (_Model) {
|
|
34
|
+
(0, _inherits3.default)(File, _Model);
|
|
35
|
+
|
|
36
|
+
function File(data) {
|
|
37
|
+
(0, _classCallCheck3.default)(this, File);
|
|
38
|
+
|
|
39
|
+
var _this = (0, _possibleConstructorReturn3.default)(this, (File.__proto__ || (0, _getPrototypeOf2.default)(File)).call(this, data));
|
|
40
|
+
|
|
41
|
+
_this._resource = "files";
|
|
42
|
+
return _this;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
(0, _createClass3.default)(File, null, [{
|
|
46
|
+
key: "_resource",
|
|
47
|
+
get: function get() {
|
|
48
|
+
return 'files';
|
|
49
|
+
}
|
|
50
|
+
}]);
|
|
51
|
+
return File;
|
|
52
|
+
}(_Model3.default);
|
|
53
|
+
|
|
54
|
+
exports.default = File;
|
package/dist/src/Filename.js
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
|
|
4
|
+
value: true
|
|
5
5
|
});
|
|
6
6
|
|
|
7
|
-
var
|
|
7
|
+
var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
|
|
8
|
+
|
|
9
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
|
8
10
|
|
|
9
11
|
var _lodash = require("lodash");
|
|
10
12
|
|
|
@@ -12,236 +14,13 @@ var _lodash2 = _interopRequireDefault(_lodash);
|
|
|
12
14
|
|
|
13
15
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
14
16
|
|
|
15
|
-
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
16
|
-
|
|
17
17
|
/**
|
|
18
18
|
* The Filename class parses a filename into tokens, and can also take a set of
|
|
19
19
|
* tokens and create a valid Pixwel filename.
|
|
20
20
|
* @type class
|
|
21
21
|
*/
|
|
22
|
-
var Filename = function () {
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
_createClass(Filename, null, [{
|
|
28
|
-
key: "render",
|
|
29
|
-
|
|
30
|
-
/**
|
|
31
|
-
* Renders a valid filename given all tags, all types, an asset, and metadata
|
|
32
|
-
* options likely parsed from the file itself.
|
|
33
|
-
* @param {Array} [allTags=[]] Collection of all known tags
|
|
34
|
-
* @param {Array} [allTypes=[]] Collection of all known types
|
|
35
|
-
* @param {Object} [asset={}] A Platform Asset
|
|
36
|
-
* @param {Object} [options={}] options containing metadata about file
|
|
37
|
-
* @param {String} [mediaType=''] Indicates video, audio, image and allows for stricter required fields
|
|
38
|
-
* @return {String} A valid filename
|
|
39
|
-
*/
|
|
40
|
-
value: function render(params) {
|
|
41
|
-
var _params$allTags = params.allTags,
|
|
42
|
-
allTags = _params$allTags === undefined ? [] : _params$allTags,
|
|
43
|
-
_params$allTypes = params.allTypes,
|
|
44
|
-
allTypes = _params$allTypes === undefined ? [] : _params$allTypes,
|
|
45
|
-
_params$asset = params.asset,
|
|
46
|
-
asset = _params$asset === undefined ? {} : _params$asset,
|
|
47
|
-
_params$options = params.options,
|
|
48
|
-
options = _params$options === undefined ? {} : _params$options,
|
|
49
|
-
_params$mediaType = params.mediaType,
|
|
50
|
-
mediaType = _params$mediaType === undefined ? "" : _params$mediaType;
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
if (!asset.project) {
|
|
54
|
-
throw new Error("missing asset.project");
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
if (asset.project && !asset.project.filePrefix) {
|
|
58
|
-
throw new Error("missing asset.project.filePrefix");
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
if (!asset.name) {
|
|
62
|
-
throw new Error("missing asset.name");
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
if (!asset.type) {
|
|
66
|
-
throw new Error("missing asset.type");
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
var defaults = {
|
|
70
|
-
language: null,
|
|
71
|
-
country: null,
|
|
72
|
-
version: null,
|
|
73
|
-
tags: {
|
|
74
|
-
Usage: null,
|
|
75
|
-
Aspect: null,
|
|
76
|
-
SubDub: {
|
|
77
|
-
sub: null,
|
|
78
|
-
dub: null
|
|
79
|
-
},
|
|
80
|
-
Resolution: null,
|
|
81
|
-
"Frame Mode": null,
|
|
82
|
-
Framerate: null,
|
|
83
|
-
Text: null,
|
|
84
|
-
Codec: null,
|
|
85
|
-
Extra: []
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
options = _lodash2.default.merge(defaults, options);
|
|
89
|
-
|
|
90
|
-
if (!options.language) {
|
|
91
|
-
throw new Error("missing options.language");
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
if (mediaType && mediaType == "video" && !options.tags.Codec) {
|
|
95
|
-
throw new Error("missing options.tags.Codec");
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
if (mediaType && mediaType == "video" && !options.tags.Resolution) {
|
|
99
|
-
throw new Error("missing options.tags.Resolution");
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
if (mediaType && mediaType == "video" && !options.tags.Framerate) {
|
|
103
|
-
throw new Error("missing options.tags.Framerate");
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
if (mediaType == "video" && !options.tags["Frame Mode"]) {
|
|
107
|
-
throw new Error("missing options.tags[Frame Mode]");
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
function assetType(asset, types) {
|
|
111
|
-
if (/trailer/.test(asset.type)) {
|
|
112
|
-
return false;
|
|
113
|
-
}
|
|
114
|
-
|
|
115
|
-
var matchingType = _lodash2.default.find(types, { name: asset.type });
|
|
116
|
-
if (!matchingType) {
|
|
117
|
-
throw new Error("Asset type \"" + asset.type + "\" could not be found");
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
return matchingType.file || matchingType.name.replace(".", "-").toUpperCase();
|
|
121
|
-
}
|
|
122
|
-
|
|
123
|
-
function assetTitle(asset) {
|
|
124
|
-
var prefix = "";
|
|
125
|
-
var name = asset.slug.toUpperCase().replace("INT-L", "INTL");
|
|
126
|
-
if (/trailer/.test(asset.type)) {
|
|
127
|
-
switch (asset.type) {
|
|
128
|
-
case "trailer.intl":
|
|
129
|
-
prefix = "ITR-";
|
|
130
|
-
name = name.replace(/INTL-TRAILER-/, "");
|
|
131
|
-
break;
|
|
132
|
-
case "trailer":
|
|
133
|
-
prefix = "TR-";
|
|
134
|
-
name = name.replace(/TRAILER-/, "");
|
|
135
|
-
break;
|
|
136
|
-
case "trailer.us":
|
|
137
|
-
prefix = "DTR-";
|
|
138
|
-
name = name.replace(/DOMESTIC-TRAILER-/, "");
|
|
139
|
-
break;
|
|
140
|
-
}
|
|
141
|
-
}
|
|
142
|
-
return prefix + name;
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
function runningTime(asset) {
|
|
146
|
-
var matches = asset.type.match(/^film-clip|^featurette/);
|
|
147
|
-
if (!matches) {
|
|
148
|
-
return;
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
var minutes = Math.floor(asset.length / 60);
|
|
152
|
-
var seconds = asset.length % 60;
|
|
153
|
-
|
|
154
|
-
var result = "";
|
|
155
|
-
|
|
156
|
-
if (minutes > 0) {
|
|
157
|
-
result += minutes + "min";
|
|
158
|
-
}
|
|
159
|
-
|
|
160
|
-
if (seconds > 0) {
|
|
161
|
-
result += seconds + "sec";
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
return result;
|
|
165
|
-
}
|
|
166
|
-
|
|
167
|
-
function locale(country, language) {
|
|
168
|
-
if (language.includes("-")) {
|
|
169
|
-
country = "";
|
|
170
|
-
}
|
|
171
|
-
return [language, country].filter(function (str) {
|
|
172
|
-
return !!str && str !== "WW";
|
|
173
|
-
}).join("-");
|
|
174
|
-
}
|
|
175
|
-
|
|
176
|
-
function textType(subDub, text) {
|
|
177
|
-
if (!subDub || !subDub.sub && !subDub.dub) {
|
|
178
|
-
return text;
|
|
179
|
-
}
|
|
180
|
-
|
|
181
|
-
var result = [];
|
|
182
|
-
if (subDub.sub) {
|
|
183
|
-
result.push("sub");
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
if (subDub.dub) {
|
|
187
|
-
result.push("dub");
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
return result;
|
|
191
|
-
}
|
|
192
|
-
|
|
193
|
-
function matchSet(allTags, tags) {
|
|
194
|
-
var selectedTags = (0, _lodash2.default)(tags).values().flatten().value();
|
|
195
|
-
|
|
196
|
-
var setTag = (0, _lodash2.default)(allTags).filter("set").find(function (setTag) {
|
|
197
|
-
return _lodash2.default.difference(setTag.set, selectedTags).length === 0;
|
|
198
|
-
});
|
|
199
|
-
|
|
200
|
-
if (setTag) {
|
|
201
|
-
return setTag.name;
|
|
202
|
-
}
|
|
203
|
-
}
|
|
204
|
-
|
|
205
|
-
var tags = options.tags,
|
|
206
|
-
parts = [asset.project.filePrefix, assetType(asset, allTypes), assetTitle(asset), runningTime(asset), locale(options.country, options.language), textType(tags.SubDub, tags.Text), tags.Extra.join("_"), options.version, tags.Codec];
|
|
207
|
-
|
|
208
|
-
parts = (0, _lodash2.default)(parts).flatten().filter().map(function (part) {
|
|
209
|
-
return part.toUpperCase();
|
|
210
|
-
});
|
|
211
|
-
|
|
212
|
-
var matchedSet = matchSet(allTags, options.tags);
|
|
213
|
-
var requiredInfo = tags.Resolution && tags["Frame Mode"] && tags.Framerate;
|
|
214
|
-
|
|
215
|
-
if (matchedSet) {
|
|
216
|
-
parts = parts.push(matchedSet);
|
|
217
|
-
} else if (mediaType == "video" && tags.Resolution && !requiredInfo) {
|
|
218
|
-
parts = parts.push(tags.Resolution.replace(/\d+x/, ""));
|
|
219
|
-
} else if (mediaType == "image" && tags.Resolution) {
|
|
220
|
-
parts = parts.push(tags.Resolution);
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
var name = parts.join("_");
|
|
224
|
-
|
|
225
|
-
var hasResInfo = name.match(/\d+(i|p)/i);
|
|
226
|
-
var hasAllInfo = name.match(/\d+(i|p)\d+/i);
|
|
227
|
-
|
|
228
|
-
if (requiredInfo && !hasResInfo && !hasAllInfo) {
|
|
229
|
-
var res = tags.Resolution;
|
|
230
|
-
var encodeTag = [hasResInfo ? "" : res.indexOf("x") ? res.replace(/\d+x/, "") : res, res.match(/i|p/i) && !hasResInfo ? "" : tags["Frame Mode"].toLowerCase().slice(0, 1), tags.Framerate.replace(".", "").toUpperCase()].filter(function (val) {
|
|
231
|
-
return val;
|
|
232
|
-
}).join("");
|
|
233
|
-
|
|
234
|
-
var match = new RegExp(encodeTag, "i");
|
|
235
|
-
name = name.match(match) ? name.replace(match, encodeTag) : name + "_" + encodeTag;
|
|
236
|
-
} else if (hasResInfo && !hasAllInfo && tags.Framerate) {
|
|
237
|
-
name += tags.Framerate.replace(".", "").toUpperCase();
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
return name;
|
|
241
|
-
}
|
|
242
|
-
}]);
|
|
243
|
-
|
|
244
|
-
return Filename;
|
|
245
|
-
}();
|
|
22
|
+
var Filename = function Filename() {
|
|
23
|
+
(0, _classCallCheck3.default)(this, Filename);
|
|
24
|
+
};
|
|
246
25
|
|
|
247
26
|
exports.default = Filename;
|