UNPKG

2.02 kBSource Map (JSON)View Raw
1{"version":3,"names":["escapeStringRegexp","extractPathFromURL","prefixes","url","prefix","protocol","match","host","replace","RegExp","prefixRegex","split","map","it","join","normalizedURL","test","undefined"],"sources":["extractPathFromURL.tsx"],"sourcesContent":["import escapeStringRegexp from 'escape-string-regexp';\n\nexport default function extractPathFromURL(prefixes: string[], url: string) {\n for (const prefix of prefixes) {\n const protocol = prefix.match(/^[^:]+:/)?.[0] ?? '';\n const host = prefix\n .replace(new RegExp(`^${escapeStringRegexp(protocol)}`), '')\n .replace(/\\/+/g, '/') // Replace multiple slash (//) with single ones\n .replace(/^\\//, ''); // Remove extra leading slash\n\n const prefixRegex = new RegExp(\n `^${escapeStringRegexp(protocol)}(/)*${host\n .split('.')\n .map((it) => (it === '*' ? '[^/]+' : escapeStringRegexp(it)))\n .join('\\\\.')}`\n );\n\n const normalizedURL = url.replace(/\\/+/g, '/');\n\n if (prefixRegex.test(normalizedURL)) {\n return normalizedURL.replace(prefixRegex, '');\n }\n }\n\n return undefined;\n}\n"],"mappings":"AAAA,OAAOA,kBAAP,MAA+B,sBAA/B;AAEA,eAAe,SAASC,kBAAT,CAA4BC,QAA5B,EAAgDC,GAAhD,EAA6D;EAC1E,KAAK,MAAMC,MAAX,IAAqBF,QAArB,EAA+B;IAAA;;IAC7B,MAAMG,QAAQ,sCAAGD,MAAM,CAACE,KAAP,CAAa,SAAb,CAAH,kDAAG,cAA0B,CAA1B,CAAH,2DAAmC,EAAjD;IACA,MAAMC,IAAI,GAAGH,MAAM,CAChBI,OADU,CACF,IAAIC,MAAJ,CAAY,IAAGT,kBAAkB,CAACK,QAAD,CAAW,EAA5C,CADE,EAC8C,EAD9C,EAEVG,OAFU,CAEF,MAFE,EAEM,GAFN,EAEW;IAFX,CAGVA,OAHU,CAGF,KAHE,EAGK,EAHL,CAAb,CAF6B,CAKN;;IAEvB,MAAME,WAAW,GAAG,IAAID,MAAJ,CACjB,IAAGT,kBAAkB,CAACK,QAAD,CAAW,OAAME,IAAI,CACxCI,KADoC,CAC9B,GAD8B,EAEpCC,GAFoC,CAE/BC,EAAD,IAASA,EAAE,KAAK,GAAP,GAAa,OAAb,GAAuBb,kBAAkB,CAACa,EAAD,CAFlB,EAGpCC,IAHoC,CAG/B,KAH+B,CAGxB,EAJG,CAApB;IAOA,MAAMC,aAAa,GAAGZ,GAAG,CAACK,OAAJ,CAAY,MAAZ,EAAoB,GAApB,CAAtB;;IAEA,IAAIE,WAAW,CAACM,IAAZ,CAAiBD,aAAjB,CAAJ,EAAqC;MACnC,OAAOA,aAAa,CAACP,OAAd,CAAsBE,WAAtB,EAAmC,EAAnC,CAAP;IACD;EACF;;EAED,OAAOO,SAAP;AACD"}
\No newline at end of file