ts-string-generator
Version:
Created with Typescript for Node.js. This package works with both Typescript and Javascript.
34 lines (26 loc) • 964 B
text/typescript
import { Options } from "./interfaces/options";
import { createPool, generateArrayOfCharacters, validateStrictString } from './services/generator'
import { convertToString, } from "./services/utils";
async function generateString(options?: Options): Promise<string> {
const pool = await createPool(options);
const generateStringArray = await generateArrayOfCharacters(options ?? {}, pool);
const generatedString = await convertToString(generateStringArray);
if (options?.strict) {
try {
await validateStrictString(generatedString, options);
} catch (e) {
return generateString(options);
}
}
return generatedString;
}
export function generate(options?: Options): Promise<string> {
return generateString(options)
}
export function generateMultiple(amount: number, options?: Options) {
let strings = [];
for (let i = 1; i <= amount; i++) {
strings.push(generateString(options))
}
return Promise.all(strings)
}