@microsoft/connected-workbooks
Version:
Microsoft backed, Excel advanced xlsx workbook generation JavaScript library
52 lines (51 loc) • 1.69 kB
JavaScript
;
// Copyright (c) Microsoft Corporation.
// Licensed under the MIT license.
Object.defineProperty(exports, "__esModule", { value: true });
exports.ArrayReader = void 0;
var ArrayReader = /** @class */ (function () {
function ArrayReader(array) {
this._array = array;
this._position = 0;
}
ArrayReader.prototype.getInt32 = function () {
var retVal = new DataView(this._array, this._position, 4).getInt32(0, true);
this._position += 4;
return retVal;
};
ArrayReader.prototype.getBytes = function (bytes) {
var retVal = this._array.slice(this._position, bytes ? bytes + this._position : bytes);
this._position += retVal.byteLength;
return new Uint8Array(retVal);
};
ArrayReader.prototype.reset = function () {
this._position = 0;
};
return ArrayReader;
}());
exports.ArrayReader = ArrayReader;
function getInt32Buffer(val) {
var packageSizeBuffer = new ArrayBuffer(4);
new DataView(packageSizeBuffer).setInt32(0, val, true);
return new Uint8Array(packageSizeBuffer);
}
function concatArrays() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var size = 0;
args.forEach(function (arr) { return (size += arr.byteLength); });
var retVal = new Uint8Array(size);
var position = 0;
args.forEach(function (arr) {
retVal.set(arr, position);
position += arr.byteLength;
});
return retVal;
}
exports.default = {
ArrayReader: ArrayReader,
getInt32Buffer: getInt32Buffer,
concatArrays: concatArrays,
};