INNER CODE UNIT · TypeScript

resolveBilibiliAssetUrl

Purewhiter/mobilegym · apps/Bilibili/data/index.ts:10

export const resolveBilibiliAssetUrl = (raw: unknown): unknown => {
  const s = typeof raw === 'string' ? raw : null;
  if (!s) return raw;
  if (s.startsWith('http') || s.startsWith('data:') || s.startsWith('blob:')) return raw;
  if (s.startsWith('/cdn/')) return resolveCdnUrl(s);
  if (s.startsWith('./images/') || s.startsWith('images/')) {
    return resolveCdnUrl(s, 'bilibili');
  }
  if (s.startsWith('/')) return raw;
  if (!ASSET_EXT_RE.test(s)) return raw;
  return resolveCdnUrl(s, 'bilibili');
};

export const resolveBilibiliAssetsDeep = (value: unknown): unknown => {
  if (Array.isArray(value)) return value.map(resolveBilibiliAssetsDeep);
  if (value && typeof value === 'object') {
    const out: Record<string, unknown> = {};
    for (const [key, child] of Object.entries(value as Record<string, unknown>)) {

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…