UNPKG

typia

Version:

Superfast runtime validators with only one line

1 lines 1.3 kB
{"version":3,"file":"_randomString.mjs","names":[],"sources":["../../src/internal/_randomString.ts"],"sourcesContent":["import type { OpenApi } from \"@typia/interface\";\n\nimport { _randomInteger } from \"./_randomInteger\";\n\nconst DEFAULT_MIN_LENGTH = 5;\nconst DEFAULT_RANGE = 5;\n\nexport const _randomString = (props: OpenApi.IJsonSchema.IString) => {\n const minimum: number =\n props.minLength ??\n Math.min(props.maxLength ?? DEFAULT_MIN_LENGTH, DEFAULT_MIN_LENGTH);\n const length: number = _randomInteger({\n type: \"integer\",\n minimum,\n maximum: props.maxLength ?? minimum + DEFAULT_RANGE,\n });\n return new Array(length)\n .fill(0)\n .map(() => ALPHABETS[random()])\n .join(\"\");\n};\n\nconst ALPHABETS = \"abcdefghijklmnopqrstuvwxyz\";\n\nconst random = () =>\n _randomInteger({\n type: \"integer\",\n minimum: 0,\n maximum: ALPHABETS.length - 1,\n });\n"],"mappings":";;AAIA,MAAM,qBAAqB;AAC3B,MAAM,gBAAgB;AAEtB,MAAa,iBAAiB,UAAuC;CACnE,MAAM,UACJ,MAAM,aACN,KAAK,IAAI,MAAM,aAAa,oBAAoB,kBAAkB;CACpE,MAAM,SAAiB,eAAe;EACpC,MAAM;EACN;EACA,SAAS,MAAM,aAAa,UAAU;CACxC,CAAC;CACD,OAAO,IAAI,MAAM,MAAM,CAAC,CACrB,KAAK,CAAC,CAAC,CACP,UAAU,UAAU,OAAO,EAAE,CAAC,CAC9B,KAAK,EAAE;AACZ;AAEA,MAAM,YAAY;AAElB,MAAM,eACJ,eAAe;CACb,MAAM;CACN,SAAS;CACT,SAAS;AACX,CAAC"}