UNPKG

@squarecloud/api

Version:
1 lines 2.78 kB
{"version":3,"sources":["../../src/assertions/common.ts","../../src/assertions/literal.ts","../../src/structures/error.ts"],"sourcesContent":["import { SquareCloudAPIError } from \"../structures\";\n\nexport interface AssertionProps {\n\tvalidate: (value: unknown) => boolean;\n\texpect: string;\n\tvalue: unknown;\n\tname?: string;\n}\n\nexport function assert({ validate, value, expect, name }: AssertionProps) {\n\tif (!validate(value)) {\n\t\tconst code = name ? `INVALID_${name}` : \"VALIDATION_ERROR\";\n\t\tconst message = `Expected ${expect}, got ${typeof value}`;\n\n\t\tthrow new SquareCloudAPIError(code, message);\n\t}\n}\n\nexport function makeAssertion(\n\texpect: string,\n\tvalidate: (value: unknown) => boolean,\n) {\n\treturn (value: unknown, name?: string) => {\n\t\tassert({ validate, value, expect, name });\n\t};\n}\n","import { makeAssertion } from \"./common\";\n\nexport const assertString = makeAssertion(\n\t\"string\",\n\t(value) => typeof value === \"string\",\n);\n\nexport const assertBoolean = makeAssertion(\n\t\"boolean\",\n\t(value) => typeof value === \"boolean\",\n);\n\nexport const assertPathLike = makeAssertion(\n\t\"string or Buffer\",\n\t(value) => typeof value === \"string\" || value instanceof Buffer,\n);\n","export class SquareCloudAPIError extends TypeError {\n\tconstructor(\n\t\tcode: string,\n\t\tmessage?: string,\n\t\toptions?: { stack?: string; cause?: unknown },\n\t) {\n\t\tsuper(code);\n\n\t\tthis.name = \"SquareCloudAPIError\";\n\n\t\tthis.message =\n\t\t\t(code\n\t\t\t\t?.replaceAll(\"_\", \" \")\n\t\t\t\t.toLowerCase()\n\t\t\t\t.replace(/(^|\\s)\\S/g, (L) => L.toUpperCase()) || \"UNKNOWN_CODE\") +\n\t\t\t(message ? `: ${message}` : \"\");\n\n\t\tif (options?.stack) {\n\t\t\tthis.stack = options.stack;\n\t\t}\n\n\t\tif (options?.cause) {\n\t\t\tthis.cause = options.cause;\n\t\t}\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACEO,IAAM,eAAe;AAAA,EAC3B;AAAA,EACA,CAAC,UAAU,OAAO,UAAU;AAC7B;AAEO,IAAM,gBAAgB;AAAA,EAC5B;AAAA,EACA,CAAC,UAAU,OAAO,UAAU;AAC7B;AAEO,IAAM,iBAAiB;AAAA,EAC7B;AAAA,EACA,CAAC,UAAU,OAAO,UAAU,YAAY,iBAAiB;AAC1D;;;ACfO,IAAM,sBAAN,cAAkC,UAAU;AAAA,EAClD,YACC,MACA,SACA,SACC;AACD,UAAM,IAAI;AAEV,SAAK,OAAO;AAEZ,SAAK,WACH,MACE,WAAW,KAAK,GAAG,EACpB,YAAY,EACZ,QAAQ,aAAa,CAAC,MAAM,EAAE,YAAY,CAAC,KAAK,mBACjD,UAAU,KAAK,OAAO,KAAK;AAE7B,QAAI,SAAS,OAAO;AACnB,WAAK,QAAQ,QAAQ;AAAA,IACtB;AAEA,QAAI,SAAS,OAAO;AACnB,WAAK,QAAQ,QAAQ;AAAA,IACtB;AAAA,EACD;AACD;;;AFhBO,SAAS,OAAO,EAAE,UAAU,OAAO,QAAQ,KAAK,GAAmB;AACzE,MAAI,CAAC,SAAS,KAAK,GAAG;AACrB,UAAM,OAAO,OAAO,WAAW,IAAI,KAAK;AACxC,UAAM,UAAU,YAAY,MAAM,SAAS,OAAO,KAAK;AAEvD,UAAM,IAAI,oBAAoB,MAAM,OAAO;AAAA,EAC5C;AACD;AAEO,SAAS,cACf,QACA,UACC;AACD,SAAO,CAAC,OAAgB,SAAkB;AACzC,WAAO,EAAE,UAAU,OAAO,QAAQ,KAAK,CAAC;AAAA,EACzC;AACD;","names":[]}