{"version":3,"sources":["jsdelivr-header.js","/npm/@axetroy/fslint@0.3.15/lib/index.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,MAAQ,QAAQ,iBAAiB,MACjC,GAAK,QAAQ,MACb,KAAO,QAAQ,QAEf,SAAW,GAAG,WACd,KAAO,GAAG,OAEV,gBAAkB,IAAI,MAAM,yCAE5B,YAAc,CAClB,MAAO,CACL,KAAM,qBACN,IAAK,qBACL,MAAO,uBACP,IAAK,wBAEP,OAAQ,CACN,MAAO,sBACP,IAAK,uBAEP,MAAO,CACL,KAAM,mBACN,IAAK,mBACL,MAAO,qBACP,IAAK,qBACL,KAAM,oBACN,OAAQ,sBACR,OAAQ,sBACR,SAAU,yBAEZ,QAAS,CACP,KAAM,qBACN,IAAK,qBACL,MAAO,uBACP,IAAK,wBAEP,QAAS,CACP,KAAM,qBACN,IAAK,qBACL,MAAO,uBACP,IAAK,yBAIH,QAAU,YAAY,UAE5B,IAAK,QAAS,MAAM,gBAEpB,MAAM,oBAAsB,QAAQ,MAEpC,IAAK,oBAAqB,MAAM,gBAEhC,MAAM,iBAAmB,KAAK,QAC5B,QAAQ,QAAQ,YAAY,qCAGxB,mBAAqB,UAAyB,UAAb,SAAuB,OAAS,IAEjE,mBAAqB,KAAK,KAAK,iBAAkB,oBAQvD,SAAS,KAAK,EAAM,EAAe,CAAC,GAMlC,OALW,MAAM,mBAAoB,EAAM,IACtC,EACH,OAAQ,SAIZ,CAQA,SAAS,QAAO,OAAE,EAAM,SAAE,IACxB,MAAM,EAAO,CAAC,SAAU,aAAc,WAAY,GAE9C,IACF,EAAK,KAAK,eACV,EAAK,KAAK,IAGZ,MAAM,EAAK,KAAK,EAAM,CACpB,OAAQ,OACR,OAAQ,SAGV,IAAI,EAAS,OAAO,KAAK,IACrB,EAAS,OAAO,KAAK,IAUzB,OARA,EAAG,OAAO,GAAG,QAA+B,IAC1C,EAAS,OAAO,OAAO,EAAQ,EAAI,IAGrC,EAAG,OAAO,GAAG,QAA+B,IAC1C,EAAS,OAAO,OAAO,EAAQ,EAAI,IAG9B,IAAI,SAAQ,CAAC,EAAS,KAC3B,EAAG,GAAG,QAAS,IACb,GAAa,IAAT,EAAY,CACd,MAAM,EAAS,EAAO,SAAS,SAAS,OAExC,IACE,EAAQ,KAAK,MAAM,GACrB,CAAE,MAAO,GACP,EAAO,EACT,CACF,MACE,EAAO,IAAI,MAAM,mBAAmB,EAAO,SAAS,SAAS,UAC/D,GACA,GAEN,CAEA,OAAO,QAAU,OACjB,OAAO,QAAQ,OAAS,OACxB,OAAO,QAAQ,KAAO","file":"/npm/@axetroy/fslint@0.3.15/lib/index.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/@axetroy/fslint@0.3.15/lib/index.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","const spawn = require(\"child_process\").spawn;\nconst os = require(\"os\");\nconst path = require(\"path\");\n\nconst platform = os.platform();\nconst arch = os.arch();\n\nconst ERR_NOT_SUPPORT = new Error(\"fslint does not support your platform\");\n\nconst platformMap = {\n  win32: {\n    ia32: \"fslint-windows-386\",\n    arm: \"fslint-windows-arm\",\n    arm64: \"fslint-windows-arm64\",\n    x64: \"fslint-windows-amd64\",\n  },\n  darwin: {\n    arm64: \"fslint-darwin-arm64\",\n    x64: \"fslint-darwin-amd64\",\n  },\n  linux: {\n    ia32: \"fslint-linux-386\",\n    arm: \"fslint-linux-arm\",\n    arm64: \"fslint-linux-arm64\",\n    x64: \"fslint-linux-amd64\",\n    mips: \"fslint-linux-mips\",\n    mipsel: \"fslint-linux-mipsel\",\n    mips64: \"fslint-linux-mips64\",\n    mips64el: \"fslint-linux-mips64el\",\n  },\n  freebsd: {\n    ia32: \"fslint-freebsd-386\",\n    arm: \"fslint-freebsd-arm\",\n    arm64: \"fslint-freebsd-arm64\",\n    x64: \"fslint-freebsd-amd64\",\n  },\n  openbsd: {\n    ia32: \"fslint-openbsd-386\",\n    arm: \"fslint-openbsd-arm\",\n    arm64: \"fslint-openbsd-arm64\",\n    x64: \"fslint-openbsd-amd64\",\n  },\n};\n\nconst archMap = platformMap[platform];\n\nif (!archMap) throw ERR_NOT_SUPPORT;\n\nconst prebuildPackageName = archMap[arch];\n\nif (!prebuildPackageName) throw ERR_NOT_SUPPORT;\n\nconst binaryPackageDir = path.dirname(\n  require.resolve(`@axetroy/${prebuildPackageName}/package.json`)\n);\n\nconst executableFileName = \"fslint\" + (platform === \"win32\" ? \".exe\" : \"\");\n\nconst executableFilePath = path.join(binaryPackageDir, executableFileName);\n\n/**\n *\n * @param {Array<string>} argv\n * @param {SpawnOptionsWithoutStdio} [spawnOptions]\n * @returns\n */\nfunction exec(argv, spawnOptions = {}) {\n  const ps = spawn(executableFilePath, argv, {\n    ...spawnOptions,\n    stdout: \"piped\",\n  });\n\n  return ps;\n}\n\n/**\n * @param {Object} params0\n * @param {string} params0.config The config file path\n * @param {number} [params0.maxError] The max error\n * @returns {Promise<any>}\n */\nfunction fslint({ config, maxError }) {\n  const args = [\"--json\", \"--no-color\", \"--config\", config];\n\n  if (maxError) {\n    args.push(\"--max-error\");\n    args.push(maxError);\n  }\n\n  const ps = exec(args, {\n    stdout: \"pipe\",\n    stderr: \"pipe\",\n  });\n\n  let stdout = Buffer.from(\"\");\n  let stderr = Buffer.from(\"\");\n\n  ps.stdout.on(\"data\", (/** @type {Buffer} */ buf) => {\n    stdout = Buffer.concat(stdout, buf);\n  });\n\n  ps.stderr.on(\"data\", (/** @type {Buffer} */ buf) => {\n    stderr = Buffer.concat(stderr, buf);\n  });\n\n  return new Promise((resolve, reject) => {\n    ps.on(\"exit\", (code) => {\n      if (code === 0) {\n        const output = stdout.toString(\"utf-8\").trim();\n\n        try {\n          resolve(JSON.parse(output));\n        } catch (err) {\n          reject(err);\n        }\n      } else {\n        reject(new Error(`fslint error: \\n${stderr.toString(\"utf-8\").trim()}`));\n      }\n    });\n  });\n}\n\nmodule.exports = fslint;\nmodule.exports.fslint = fslint;\nmodule.exports.exec = exec;\n"]}