init commit
This commit is contained in:
57
remotion/node_modules/@remotion/renderer/dist/serve-handler/range-parser.js
generated
vendored
Normal file
57
remotion/node_modules/@remotion/renderer/dist/serve-handler/range-parser.js
generated
vendored
Normal file
@@ -0,0 +1,57 @@
|
||||
"use strict";
|
||||
/*!
|
||||
* range-parser
|
||||
* Copyright(c) 2012-2014 TJ Holowaychuk
|
||||
* Copyright(c) 2015-2016 Douglas Christopher Wilson
|
||||
* MIT Licensed
|
||||
*/
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.rangeParser = void 0;
|
||||
const rangeParser = (size, str) => {
|
||||
if (typeof str !== 'string') {
|
||||
throw new TypeError('argument str must be a string');
|
||||
}
|
||||
const index = str.indexOf('=');
|
||||
if (index === -1) {
|
||||
return -2;
|
||||
}
|
||||
// split the range string
|
||||
const arr = str.slice(index + 1).split(',');
|
||||
const ranges = [];
|
||||
// add ranges type
|
||||
const type = str.slice(0, index);
|
||||
// parse all ranges
|
||||
for (let i = 0; i < arr.length; i++) {
|
||||
const range = arr[i].split('-');
|
||||
let start = parseInt(range[0], 10);
|
||||
let end = parseInt(range[1], 10);
|
||||
// -nnn
|
||||
if (isNaN(start)) {
|
||||
start = size - end;
|
||||
end = size - 1;
|
||||
// nnn-
|
||||
}
|
||||
else if (isNaN(end)) {
|
||||
end = size - 1;
|
||||
}
|
||||
// limit last-byte-pos to current length
|
||||
if (end > size - 1) {
|
||||
end = size - 1;
|
||||
}
|
||||
// invalid or unsatisifiable
|
||||
if (isNaN(start) || isNaN(end) || start > end || start < 0) {
|
||||
continue;
|
||||
}
|
||||
// add range
|
||||
ranges.push({
|
||||
start,
|
||||
end,
|
||||
});
|
||||
}
|
||||
if (ranges.length < 1) {
|
||||
// unsatisifiable
|
||||
return -1;
|
||||
}
|
||||
return { ranges, type };
|
||||
};
|
||||
exports.rangeParser = rangeParser;
|
||||
Reference in New Issue
Block a user