@hurbis/comum
Version:
Biblioteca contendo rotinas e utilitários para desenvolvimento em Angular.
96 lines • 6.34 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingReturn,uselessCode} checked by tsc
*/
/**
* @record
*/
export function IArquivo() { }
if (false) {
/** @type {?} */
IArquivo.prototype.nome;
/** @type {?} */
IArquivo.prototype.tipo;
/** @type {?} */
IArquivo.prototype.conteudo;
}
var Arquivo = /** @class */ (function () {
function Arquivo() {
}
/**
* @param {?} conteudo
* @param {?=} sliceSize
* @return {?}
*/
Arquivo.fromBase64ToByteArray = /**
* @param {?} conteudo
* @param {?=} sliceSize
* @return {?}
*/
function (conteudo, sliceSize) {
if (sliceSize === void 0) { sliceSize = 512; }
/** @type {?} */
var byteString = window.atob(conteudo);
/** @type {?} */
var byteArrays = [];
for (var offset = 0; offset < byteString.length; offset += sliceSize) {
/** @type {?} */
var slice = byteString.slice(offset, offset + sliceSize);
/** @type {?} */
var byteNumbers = new Array(slice.length);
for (var i = 0; i < slice.length; i++) {
byteNumbers[i] = slice.charCodeAt(i);
}
/** @type {?} */
var byteArray = new Uint8Array(byteNumbers);
byteArrays.push(byteArray);
}
return byteArrays;
};
/**
* @param {?} conteudo
* @param {?} tipo
* @return {?}
*/
Arquivo.fromByteArrayToBlob = /**
* @param {?} conteudo
* @param {?} tipo
* @return {?}
*/
function (conteudo, tipo) {
return new Blob(conteudo, { type: tipo });
};
/**
* @param {?} conteudo
* @param {?=} tipo
* @param {?=} sliceSize
* @return {?}
*/
Arquivo.fromBase64ToBlob = /**
* @param {?} conteudo
* @param {?=} tipo
* @param {?=} sliceSize
* @return {?}
*/
function (conteudo, tipo, sliceSize) {
if (tipo === void 0) { tipo = ""; }
if (sliceSize === void 0) { sliceSize = 512; }
/** @type {?} */
var bytes = Arquivo.fromBase64ToByteArray(conteudo);
return Arquivo.fromByteArrayToBlob(bytes, tipo);
};
/**
* @param {?} arquivo
* @return {?}
*/
Arquivo.toBlob = /**
* @param {?} arquivo
* @return {?}
*/
function (arquivo) {
return Arquivo.fromBase64ToBlob(arquivo.conteudo, arquivo.tipo);
};
return Arquivo;
}());
export { Arquivo };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJxdWl2by5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BodXJiaXMvY29tdW0vIiwic291cmNlcyI6WyJsaWIvdXRpbC9hcnF1aXZvLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSw4QkFJQzs7O0lBSEcsd0JBQWE7O0lBQ2Isd0JBQWE7O0lBQ2IsNEJBQWlCOztBQUdyQjtJQUFBO0lBbUNBLENBQUM7Ozs7OztJQWxDVSw2QkFBcUI7Ozs7O0lBQTVCLFVBQTZCLFFBQWdCLEVBQUUsU0FBdUI7UUFBdkIsMEJBQUEsRUFBQSxlQUF1Qjs7WUFDOUQsVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDOztZQUNsQyxVQUFVLEdBQWlCLEVBQUU7UUFFakMsS0FBSyxJQUFJLE1BQU0sR0FBRyxDQUFDLEVBQUUsTUFBTSxHQUFHLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxJQUFJLFNBQVMsRUFBRTs7Z0JBQzVELEtBQUssR0FBRyxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsU0FBUyxDQUFDOztnQkFFcEQsV0FBVyxHQUFHLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFDM0MsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQ25DLFdBQVcsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQ3hDOztnQkFFSyxTQUFTLEdBQUcsSUFBSSxVQUFVLENBQUMsV0FBVyxDQUFDO1lBRTdDLFVBQVUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDOUI7UUFFRCxPQUFPLFVBQVUsQ0FBQztJQUN0QixDQUFDOzs7Ozs7SUFFTSwyQkFBbUI7Ozs7O0lBQTFCLFVBQTJCLFFBQXNCLEVBQUUsSUFBWTtRQUMzRCxPQUFPLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzlDLENBQUM7Ozs7Ozs7SUFFTSx3QkFBZ0I7Ozs7OztJQUF2QixVQUF3QixRQUFnQixFQUFFLElBQWlCLEVBQUUsU0FBZTtRQUFsQyxxQkFBQSxFQUFBLFNBQWlCO1FBQUUsMEJBQUEsRUFBQSxlQUFlOztZQUNwRSxLQUFLLEdBQWlCLE9BQU8sQ0FBQyxxQkFBcUIsQ0FBQyxRQUFRLENBQUM7UUFFakUsT0FBTyxPQUFPLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ3BELENBQUM7Ozs7O0lBRU0sY0FBTTs7OztJQUFiLFVBQWMsT0FBaUI7UUFDM0IsT0FBTyxPQUFPLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUVMLGNBQUM7QUFBRCxDQUFDLEFBbkNELElBbUNDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBJQXJxdWl2byB7XHJcbiAgICBub21lOiBzdHJpbmc7XHJcbiAgICB0aXBvOiBzdHJpbmc7XHJcbiAgICBjb250ZXVkbzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgQXJxdWl2byB7XHJcbiAgICBzdGF0aWMgZnJvbUJhc2U2NFRvQnl0ZUFycmF5KGNvbnRldWRvOiBzdHJpbmcsIHNsaWNlU2l6ZTogbnVtYmVyID0gNTEyKTogVWludDhBcnJheVtdIHtcclxuICAgICAgICBsZXQgYnl0ZVN0cmluZyA9IHdpbmRvdy5hdG9iKGNvbnRldWRvKTtcclxuICAgICAgICBsZXQgYnl0ZUFycmF5czogVWludDhBcnJheVtdID0gW107XHJcblxyXG4gICAgICAgIGZvciAobGV0IG9mZnNldCA9IDA7IG9mZnNldCA8IGJ5dGVTdHJpbmcubGVuZ3RoOyBvZmZzZXQgKz0gc2xpY2VTaXplKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHNsaWNlID0gYnl0ZVN0cmluZy5zbGljZShvZmZzZXQsIG9mZnNldCArIHNsaWNlU2l6ZSk7XHJcblxyXG4gICAgICAgICAgICBjb25zdCBieXRlTnVtYmVycyA9IG5ldyBBcnJheShzbGljZS5sZW5ndGgpO1xyXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHNsaWNlLmxlbmd0aDsgaSsrKSB7XHJcbiAgICAgICAgICAgICAgICBieXRlTnVtYmVyc1tpXSA9IHNsaWNlLmNoYXJDb2RlQXQoaSk7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IGJ5dGVBcnJheSA9IG5ldyBVaW50OEFycmF5KGJ5dGVOdW1iZXJzKTtcclxuXHJcbiAgICAgICAgICAgIGJ5dGVBcnJheXMucHVzaChieXRlQXJyYXkpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIGJ5dGVBcnJheXM7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGZyb21CeXRlQXJyYXlUb0Jsb2IoY29udGV1ZG86IFVpbnQ4QXJyYXlbXSwgdGlwbzogc3RyaW5nKTogQmxvYiB7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBCbG9iKGNvbnRldWRvLCB7IHR5cGU6IHRpcG8gfSk7XHJcbiAgICB9XHJcblxyXG4gICAgc3RhdGljIGZyb21CYXNlNjRUb0Jsb2IoY29udGV1ZG86IHN0cmluZywgdGlwbzogc3RyaW5nID0gXCJcIiwgc2xpY2VTaXplID0gNTEyKTogQmxvYiB7XHJcbiAgICAgICAgdmFyIGJ5dGVzOiBVaW50OEFycmF5W10gPSBBcnF1aXZvLmZyb21CYXNlNjRUb0J5dGVBcnJheShjb250ZXVkbyk7XHJcblxyXG4gICAgICAgIHJldHVybiBBcnF1aXZvLmZyb21CeXRlQXJyYXlUb0Jsb2IoYnl0ZXMsIHRpcG8pO1xyXG4gICAgfVxyXG5cclxuICAgIHN0YXRpYyB0b0Jsb2IoYXJxdWl2bzogSUFycXVpdm8pOiBCbG9iIHtcclxuICAgICAgICByZXR1cm4gQXJxdWl2by5mcm9tQmFzZTY0VG9CbG9iKGFycXVpdm8uY29udGV1ZG8sIGFycXVpdm8udGlwbyk7XHJcbiAgICB9XHJcblxyXG59Il19