Initial
This commit is contained in:
80
resources/app/node_modules/@aws-crypto/sha256-browser/build/ie11Sha256.js
generated
vendored
Normal file
80
resources/app/node_modules/@aws-crypto/sha256-browser/build/ie11Sha256.js
generated
vendored
Normal file
@@ -0,0 +1,80 @@
|
||||
"use strict";
|
||||
Object.defineProperty(exports, "__esModule", { value: true });
|
||||
exports.Sha256 = void 0;
|
||||
var isEmptyData_1 = require("./isEmptyData");
|
||||
var constants_1 = require("./constants");
|
||||
var util_utf8_browser_1 = require("@aws-sdk/util-utf8-browser");
|
||||
var util_locate_window_1 = require("@aws-sdk/util-locate-window");
|
||||
var Sha256 = /** @class */ (function () {
|
||||
function Sha256(secret) {
|
||||
this.secret = secret;
|
||||
this.reset();
|
||||
}
|
||||
Sha256.prototype.update = function (toHash) {
|
||||
var _this = this;
|
||||
if ((0, isEmptyData_1.isEmptyData)(toHash)) {
|
||||
return;
|
||||
}
|
||||
this.operation = this.operation.then(function (operation) {
|
||||
operation.onerror = function () {
|
||||
_this.operation = Promise.reject(new Error("Error encountered updating hash"));
|
||||
};
|
||||
operation.process(toArrayBufferView(toHash));
|
||||
return operation;
|
||||
});
|
||||
this.operation.catch(function () { });
|
||||
};
|
||||
Sha256.prototype.digest = function () {
|
||||
return this.operation.then(function (operation) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
operation.onerror = function () {
|
||||
reject(new Error("Error encountered finalizing hash"));
|
||||
};
|
||||
operation.oncomplete = function () {
|
||||
if (operation.result) {
|
||||
resolve(new Uint8Array(operation.result));
|
||||
}
|
||||
reject(new Error("Error encountered finalizing hash"));
|
||||
};
|
||||
operation.finish();
|
||||
});
|
||||
});
|
||||
};
|
||||
Sha256.prototype.reset = function () {
|
||||
if (this.secret) {
|
||||
this.operation = getKeyPromise(this.secret).then(function (keyData) {
|
||||
return (0, util_locate_window_1.locateWindow)().msCrypto.subtle.sign(constants_1.SHA_256_HMAC_ALGO, keyData);
|
||||
});
|
||||
this.operation.catch(function () { });
|
||||
}
|
||||
else {
|
||||
this.operation = Promise.resolve((0, util_locate_window_1.locateWindow)().msCrypto.subtle.digest("SHA-256"));
|
||||
}
|
||||
};
|
||||
return Sha256;
|
||||
}());
|
||||
exports.Sha256 = Sha256;
|
||||
function getKeyPromise(secret) {
|
||||
return new Promise(function (resolve, reject) {
|
||||
var keyOperation = (0, util_locate_window_1.locateWindow)().msCrypto.subtle.importKey("raw", toArrayBufferView(secret), constants_1.SHA_256_HMAC_ALGO, false, ["sign"]);
|
||||
keyOperation.oncomplete = function () {
|
||||
if (keyOperation.result) {
|
||||
resolve(keyOperation.result);
|
||||
}
|
||||
reject(new Error("ImportKey completed without importing key."));
|
||||
};
|
||||
keyOperation.onerror = function () {
|
||||
reject(new Error("ImportKey failed to import key."));
|
||||
};
|
||||
});
|
||||
}
|
||||
function toArrayBufferView(data) {
|
||||
if (typeof data === "string") {
|
||||
return (0, util_utf8_browser_1.fromUtf8)(data);
|
||||
}
|
||||
if (ArrayBuffer.isView(data)) {
|
||||
return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);
|
||||
}
|
||||
return new Uint8Array(data);
|
||||
}
|
||||
//# sourceMappingURL=ie11Sha256.js.map
|
||||
Reference in New Issue
Block a user