UNPKG

gnablib

Version:

A lean, zero dependency library to provide a useful base for your project.

2 lines 435 B
/*! Copyright 2023-2024 the gnablib contributors MPL-1.1 */ import{sNum as t}from"../safe/safe.js";export function shift(o,s=13,e=5){t("distA",s).atLeast(-25).atMost(25).throwNot(),t("distD",e).atLeast(-9).atMost(9).throwNot();const n=new Uint8Array(o.length);for(let t=0;t<o.length;t++){const r=o[t],a=32|r;let f=0;if(a>=97&&a<=122){const t=a-97;f=(26+t+s)%26-t}else if(r>=48&&r<=57){const t=r-48;f=(10+t+e)%10-t}n[t]=o[t]+f}return n}