Show More
Commit Description:
allow ta to set model submission
Commit Description:
allow ta to set model submission
References:
File last commit:
Show/Diff file:
Action:
node_modules/crypto-js/lib-typedarrays.js
| 75 lines
| 2.2 KiB
| application/javascript
| JavascriptLexer
|
r789 | ;(function (root, factory) { | ||
if (typeof exports === "object") { | |||
// CommonJS | |||
module.exports = exports = factory(require("./core")); | |||
} | |||
else if (typeof define === "function" && define.amd) { | |||
// AMD | |||
define(["./core"], factory); | |||
} | |||
else { | |||
// Global (browser) | |||
factory(root.CryptoJS); | |||
} | |||
}(this, function (CryptoJS) { | |||
(function () { | |||
// Check if typed arrays are supported | |||
if (typeof ArrayBuffer != 'function') { | |||
return; | |||
} | |||
// Shortcuts | |||
var C = CryptoJS; | |||
var C_lib = C.lib; | |||
var WordArray = C_lib.WordArray; | |||
// Reference original init | |||
var superInit = WordArray.init; | |||
// Augment WordArray.init to handle typed arrays | |||
var subInit = WordArray.init = function (typedArray) { | |||
// Convert buffers to uint8 | |||
if (typedArray instanceof ArrayBuffer) { | |||
typedArray = new Uint8Array(typedArray); | |||
} | |||
// Convert other array views to uint8 | |||
if ( | |||
typedArray instanceof Int8Array || | |||
(typeof Uint8ClampedArray !== "undefined" && typedArray instanceof Uint8ClampedArray) || | |||
typedArray instanceof Int16Array || | |||
typedArray instanceof Uint16Array || | |||
typedArray instanceof Int32Array || | |||
typedArray instanceof Uint32Array || | |||
typedArray instanceof Float32Array || | |||
typedArray instanceof Float64Array | |||
) { | |||
typedArray = new Uint8Array(typedArray.buffer, typedArray.byteOffset, typedArray.byteLength); | |||
} | |||
// Handle Uint8Array | |||
if (typedArray instanceof Uint8Array) { | |||
// Shortcut | |||
var typedArrayByteLength = typedArray.byteLength; | |||
// Extract bytes | |||
var words = []; | |||
for (var i = 0; i < typedArrayByteLength; i++) { | |||
words[i >>> 2] |= typedArray[i] << (24 - (i % 4) * 8); | |||
} | |||
// Initialize this word array | |||
superInit.call(this, words, typedArrayByteLength); | |||
} else { | |||
// Else call normal init | |||
superInit.apply(this, arguments); | |||
} | |||
}; | |||
subInit.prototype = WordArray; | |||
}()); | |||
return CryptoJS.lib.WordArray; | |||
})); |