UNPKG

typia

Version:

Superfast runtime validators with only one line

1 lines 923 B
{"version":3,"file":"_isFormatIriReference.mjs","names":[],"sources":["../../src/internal/_isFormatIriReference.ts"],"sourcesContent":["export const _isFormatIriReference = (str: string): boolean => {\n if (FORBIDDEN.test(str) || INVALID_PERCENT.test(str)) return false;\n const colon: number = str.indexOf(\":\");\n const boundary: number = str.search(/[/?#]/u);\n return (\n colon === -1 || (boundary !== -1 && boundary < colon) || SCHEME.test(str)\n );\n};\n\nconst FORBIDDEN = /[\\u0000-\\u0020\\u007f-\\u009f\\ud800-\\udfff\"<>\\\\^`{|}]/u;\nconst INVALID_PERCENT = /%(?![0-9A-Fa-f]{2})/u;\nconst SCHEME = /^[A-Za-z][A-Za-z0-9+.-]*:/u;\n"],"mappings":";AAAA,MAAa,yBAAyB,QAAyB;CAC7D,IAAI,UAAU,KAAK,GAAG,KAAK,gBAAgB,KAAK,GAAG,GAAG,OAAO;CAC7D,MAAM,QAAgB,IAAI,QAAQ,GAAG;CACrC,MAAM,WAAmB,IAAI,OAAO,QAAQ;CAC5C,OACE,UAAU,MAAO,aAAa,MAAM,WAAW,SAAU,OAAO,KAAK,GAAG;AAE5E;AAEA,MAAM,YAAY;AAClB,MAAM,kBAAkB;AACxB,MAAM,SAAS"}