Files
Nikolay Vitkov 2a1b3b34b1 Update StyleLint to v16
Stylelint v16 deprecated CJS so I moved our lint script to ESM,
and fixed all the deprecation warning.
The only place I needed to silence them were tests,
as we import CJS there.

Bug: none
Change-Id: Iae4d2df76c855a9738b774a2d035f22509770215
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6138610
Commit-Queue: Nikolay Vitkov <nvitkov@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
2025-01-03 02:57:06 -08:00

32 lines
871 B
JavaScript

import process from 'node:process';
import { cosmiconfig } from 'cosmiconfig';
import FileCache from './utils/FileCache.mjs';
import { augmentConfigExtended } from './augmentConfig.mjs';
const IS_TEST = process.env.NODE_ENV === 'test';
const STOP_DIR = IS_TEST ? process.cwd() : undefined;
/**
* @type {import('stylelint').PublicApi['_createLinter']}
*/
export default function createStylelint(options = {}) {
// [INSERT HERE] CommonJS deprecation code
const cwd = options.cwd || process.cwd();
return {
_options: { ...options, cwd },
_extendExplorer: cosmiconfig('', {
transform: augmentConfigExtended(cwd),
stopDir: STOP_DIR,
searchStrategy: 'global', // for backward compatibility
}),
_specifiedConfigCache: new Map(),
_postcssResultCache: new Map(),
_fileCache: new FileCache(options.cacheLocation, options.cacheStrategy, cwd),
};
}