UNPKG

@hurbis/comum

Version:

Biblioteca contendo rotinas e utilitários para desenvolvimento em Angular.

96 lines • 6.34 kB
/** * @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