UNPKG

@stdlib/esm

Version:

ES module distribution for Stdlib, a standard library for JavaScript and Node.js.

3 lines 995 B
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0 import r from"./../assert/is-string.js";import t from"./../string/from-code-point.js";import i from"./../array/uint8.js";function n(r,t,i){var n=r[t];return r[t]=r[i],r[i]=n,r}var e=i,o=n,a=256;function u(r){var t,i,n,u,v;for(i=new e(a),n=0;n<a;n++)i[n]=n;for(t=r.length,u=0,n=0;n<a;n++)v=r.charCodeAt(n%t),u=(u+i[n]+v)%a,o(i,n,u);return i}var v=n;function f(r){var t=r.length,i=0,n=0;return function(){var e;return n=(n+r[i=(i+1)%t])%t,v(r,i,n),e=(r[i]+r[n])%t,r[e]}}var s=r.isPrimitive,m=t,p=u,c=f;function g(r){var t,i;if(!s(r))throw new TypeError("invalid argument. Must provide a string primitive. Value: `"+r+"`.");return i=p(r),t=c(i),function(r){var i,n,e,o;if(!s(r))throw new TypeError("invalid argument. Must provide a string primitive. Value: `"+r+"`.");for(i="",o=0;o<r.length;o++)n=r.charCodeAt(o),e=t(),i+=m(n^e);return i}}var d=g;export default d; //# sourceMappingURL=arc4.js.map