UNPKG

502 BPlain TextView Raw
1export type UnpkgFileURLProvider = ({
2 filename,
3 line,
4}: {
5 filename: string;
6 line?: number;
7}) => string | undefined;
8
9export function getUnpkgFileURLProvider({
10 id,
11}: {
12 id?: string;
13}): UnpkgFileURLProvider {
14 if (!id) {
15 return () => undefined;
16 }
17
18 return ({ filename, line }) => {
19 const fileURL = `https://unpkg.com/browse/${id}/${filename}`;
20 if (!line) {
21 return fileURL;
22 }
23
24 return `${fileURL}#L${line}`;
25 };
26}