UNPKG

@scrolia/react

Version:

A headless scrollbar component

1 lines 1.2 kB
{"version":3,"file":"plugin.mjs","names":["error: Error","prefix: string","plugin: Plugin","fn: (...args: Args) => Result","err: unknown"],"sources":["../../src/functions/plugin.ts"],"sourcesContent":["import type { Plugin } from \"#/@types/options\";\n\nconst prefixError = (error: Error, prefix: string): Error => {\n error.message = `${prefix} ${error.message}`;\n return error;\n};\n\nconst tryPlugin = <Args extends unknown[], Result>(\n plugin: Plugin,\n fn: (...args: Args) => Result,\n ...args: Args\n): Result => {\n try {\n return fn(...args);\n } catch (err: unknown) {\n const prefix: string = `[${plugin.name ?? \"plugin\"}]`;\n if (err instanceof Error) throw prefixError(err, prefix);\n throw new Error(`${prefix} ${String(err)}`);\n }\n};\n\nexport { tryPlugin };\n"],"mappings":"AAEA,MAAM,cAAc,CAACA,OAAcC,WAA0B;AACzD,OAAM,UAAU,GAAG,OAAO,CAAC,EAAE,MAAM,SAAS;AAC5C,QAAO;AACV;AAED,MAAM,YAAY,CACdC,QACAC,IACA,GAAG,SACM;AACT,KAAI;AACA,SAAO,GAAG,GAAG,KAAK;CACrB,SAAQC,KAAc;EACnB,MAAMH,SAAiB,CAAC,CAAC,EAAE,OAAO,QAAQ,SAAS,CAAC,CAAC;AACrD,MAAI,eAAe,MAAO,OAAM,YAAY,KAAK,OAAO;AACxD,QAAM,IAAI,MAAM,GAAG,OAAO,CAAC,EAAE,OAAO,IAAI,EAAE;CAC7C;AACJ"}