Duffer Derek

Current Path : /var/www/sitesecurity.bitkit.dk/httpdocs/node_modules/next/dist/lib/
Upload File :
Current File : /var/www/sitesecurity.bitkit.dk/httpdocs/node_modules/next/dist/lib/download-swc.js.map

{"version":3,"sources":["../../src/lib/download-swc.ts"],"sourcesContent":["import fs from 'fs'\nimport path from 'path'\nimport * as Log from '../build/output/log'\nimport { x } from 'next/dist/compiled/tar'\nconst { WritableStream } =\n  require('node:stream/web') as typeof import('node:stream/web')\nimport { getRegistry } from './helpers/get-registry'\nimport { getCacheDirectory } from './helpers/get-cache-directory'\n\nconst MAX_VERSIONS_TO_CACHE = 8\n\nasync function extractBinary(\n  outputDirectory: string,\n  pkgName: string,\n  tarFileName: string\n) {\n  const cacheDirectory = getCacheDirectory(\n    'next-swc',\n    process.env['NEXT_SWC_PATH']\n  )\n\n  const extractFromTar = () =>\n    x({\n      file: path.join(cacheDirectory, tarFileName),\n      cwd: outputDirectory,\n      strip: 1,\n    })\n\n  if (!fs.existsSync(path.join(cacheDirectory, tarFileName))) {\n    Log.info(`Downloading swc package ${pkgName}... to ${cacheDirectory}`)\n    await fs.promises.mkdir(cacheDirectory, { recursive: true })\n    const tempFile = path.join(\n      cacheDirectory,\n      `${tarFileName}.temp-${Date.now()}`\n    )\n\n    const registry = getRegistry()\n\n    const downloadUrl = `${registry}${pkgName}/-/${tarFileName}`\n\n    await fetch(downloadUrl).then((res) => {\n      const { ok, body } = res\n      if (!ok || !body) {\n        Log.error(`Failed to download swc package from ${downloadUrl}`)\n      }\n\n      if (!ok) {\n        throw new Error(`request failed with status ${res.status}`)\n      }\n      if (!body) {\n        throw new Error('request failed with empty body')\n      }\n      const cacheWriteStream = fs.createWriteStream(tempFile)\n      return body.pipeTo(\n        new WritableStream({\n          write(chunk) {\n            return new Promise<void>((resolve, reject) =>\n              cacheWriteStream.write(chunk, (error) => {\n                if (error) {\n                  reject(error)\n                  return\n                }\n\n                resolve()\n              })\n            )\n          },\n          close() {\n            return new Promise<void>((resolve, reject) =>\n              cacheWriteStream.close((error) => {\n                if (error) {\n                  reject(error)\n                  return\n                }\n\n                resolve()\n              })\n            )\n          },\n        })\n      )\n    })\n\n    await fs.promises.access(tempFile) // ensure the temp file existed\n    await fs.promises.rename(tempFile, path.join(cacheDirectory, tarFileName))\n  } else {\n    Log.info(`Using cached swc package ${pkgName}...`)\n  }\n  await extractFromTar()\n\n  const cacheFiles = await fs.promises.readdir(cacheDirectory)\n\n  if (cacheFiles.length > MAX_VERSIONS_TO_CACHE) {\n    cacheFiles.sort((a, b) => {\n      if (a.length < b.length) return -1\n      return a.localeCompare(b)\n    })\n\n    // prune oldest versions in cache\n    for (let i = 0; i++; i < cacheFiles.length - MAX_VERSIONS_TO_CACHE) {\n      await fs.promises\n        .unlink(path.join(cacheDirectory, cacheFiles[i]))\n        .catch(() => {})\n    }\n  }\n}\n\nexport async function downloadNativeNextSwc(\n  version: string,\n  bindingsDirectory: string,\n  triplesABI: Array<string>\n) {\n  for (const triple of triplesABI) {\n    const pkgName = `@next/swc-${triple}`\n    const tarFileName = `${pkgName.substring(6)}-${version}.tgz`\n    const outputDirectory = path.join(bindingsDirectory, pkgName)\n\n    if (fs.existsSync(outputDirectory)) {\n      // if the package is already downloaded a different\n      // failure occurred than not being present\n      return\n    }\n\n    await fs.promises.mkdir(outputDirectory, { recursive: true })\n    await extractBinary(outputDirectory, pkgName, tarFileName)\n  }\n}\n\nexport async function downloadWasmSwc(\n  version: string,\n  wasmDirectory: string,\n  variant: 'nodejs' | 'web' = 'nodejs'\n) {\n  const pkgName = `@next/swc-wasm-${variant}`\n  const tarFileName = `${pkgName.substring(6)}-${version}.tgz`\n  const outputDirectory = path.join(wasmDirectory, pkgName)\n\n  if (fs.existsSync(outputDirectory)) {\n    // if the package is already downloaded a different\n    // failure occurred than not being present\n    return\n  }\n\n  await fs.promises.mkdir(outputDirectory, { recursive: true })\n  await extractBinary(outputDirectory, pkgName, tarFileName)\n}\n"],"names":["downloadNativeNextSwc","downloadWasmSwc","WritableStream","require","MAX_VERSIONS_TO_CACHE","extractBinary","outputDirectory","pkgName","tarFileName","cacheDirectory","getCacheDirectory","process","env","extractFromTar","x","file","path","join","cwd","strip","fs","existsSync","Log","info","promises","mkdir","recursive","tempFile","Date","now","registry","getRegistry","downloadUrl","fetch","then","res","ok","body","error","Error","status","cacheWriteStream","createWriteStream","pipeTo","write","chunk","Promise","resolve","reject","close","access","rename","cacheFiles","readdir","length","sort","a","b","localeCompare","i","unlink","catch","version","bindingsDirectory","triplesABI","triple","substring","wasmDirectory","variant"],"mappings":"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","ignoreList":[0]}

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists