UNPKG

@storm-software/eslint

Version:

A package containing the base ESLint configuration used by Storm Software across many projects.

88 lines (82 loc) 3.44 kB
'use strict'; var localPkg = require('local-pkg'); var process = require('process'); var url = require('url'); function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; } var process__default = /*#__PURE__*/_interopDefault(process); // ../../node_modules/.pnpm/tsup@8.4.0_patch_hash=751a554d775c3572381af4e7e5fa22eeda6dd6856012fb1cf521d6806eb2dc74__c6e5a1ff3e71b7415dce15be46368d04/node_modules/tsup/assets/cjs_shims.js var getImportMetaUrl = () => typeof document === "undefined" ? new URL(`file:${__filename}`).href : document.currentScript && document.currentScript.src || new URL("main.js", document.baseURI).href; var importMetaUrl = /* @__PURE__ */ getImportMetaUrl(); var scopeUrl = url.fileURLToPath(new URL(".", importMetaUrl)); var isCwdInScope = localPkg.isPackageExists("@storm-software/eslint"); var parserPlain = { meta: { name: "parser-plain" }, parseForESLint: (code) => ({ ast: { body: [], comments: [], loc: { end: code.length, start: 0 }, range: [0, code.length], tokens: [], type: "Program" }, scopeManager: null, services: { isPlain: true }, visitorKeys: { Program: [] } }) }; function isInGitHooksOrLintStaged() { return !!(process__default.default.env.GIT_PARAMS || process__default.default.env.VSCODE_GIT_COMMAND || process__default.default.env.npm_lifecycle_script?.startsWith("lint-staged") || process__default.default.env.npm_lifecycle_script?.startsWith("lefthook") || process__default.default.env.npm_lifecycle_script === "push"); } function isInEditorEnv() { if (process__default.default.env.CI) return false; if (isInGitHooksOrLintStaged()) return false; return !!(process__default.default.env.VSCODE_PID || process__default.default.env.VSCODE_CWD || process__default.default.env.JETBRAINS_IDE || process__default.default.env.VIM || process__default.default.env.NVIM); } async function interopDefault(m) { const resolved = await m; return resolved.default || resolved; } function isPackageInScope(name) { return localPkg.isPackageExists(name, { paths: [scopeUrl] }); } async function ensurePackages(packages) { if (process__default.default.env.CI || process__default.default.stdout.isTTY === false || isCwdInScope === false) return; const nonExistingPackages = packages.filter( (i) => i && !isPackageInScope(i) ); if (nonExistingPackages.length === 0) return; const p = await import('@clack/prompts'); const result = await p.confirm({ message: `${nonExistingPackages.length === 1 ? "Package is" : "Packages are"} required for this config: ${nonExistingPackages.join( ", " )}. Do you want to install them?` }); if (result) await import('@antfu/install-pkg').then( (i) => i.installPackage(nonExistingPackages, { dev: true }) ); } function renameRules(rules, map) { return Object.fromEntries( Object.entries(rules).map(([key, value]) => { for (const [from, to] of Object.entries(map)) { if (key.startsWith(`${from}/`)) return [to + key.slice(from.length), value]; } return [key, value]; }) ); } exports.ensurePackages = ensurePackages; exports.interopDefault = interopDefault; exports.isInEditorEnv = isInEditorEnv; exports.isInGitHooksOrLintStaged = isInGitHooksOrLintStaged; exports.isPackageInScope = isPackageInScope; exports.parserPlain = parserPlain; exports.renameRules = renameRules;