diff --git a/package-lock.json b/package-lock.json index 2a11d31..70dca24 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12132,7 +12132,7 @@ }, "packages/tailwindcss-intellisense": { "name": "vscode-tailwindcss", - "version": "0.5.2", + "version": "0.5.3", "license": "MIT", "dependencies": { "@types/debounce": "^1.2.0", @@ -12147,6 +12147,7 @@ "dlv": "^1.1.3", "dset": "^2.0.1", "esm": "^3.2.25", + "execa": "^3.4.0", "fast-glob": "^3.2.4", "glob-exec": "^0.1.1", "import-from": "^3.0.0", @@ -20171,6 +20172,7 @@ "dlv": "^1.1.3", "dset": "^2.0.1", "esm": "^3.2.25", + "execa": "^3.4.0", "fast-glob": "^3.2.4", "glob-exec": "^0.1.1", "import-from": "^3.0.0", diff --git a/packages/tailwindcss-intellisense/package-lock.json b/packages/tailwindcss-intellisense/package-lock.json index 1d238c0..5ed9145 100644 --- a/packages/tailwindcss-intellisense/package-lock.json +++ b/packages/tailwindcss-intellisense/package-lock.json @@ -21,6 +21,7 @@ "dlv": "^1.1.3", "dset": "^2.0.1", "esm": "^3.2.25", + "execa": "^3.4.0", "fast-glob": "^3.2.4", "glob-exec": "^0.1.1", "import-from": "^3.0.0", diff --git a/packages/tailwindcss-intellisense/package.json b/packages/tailwindcss-intellisense/package.json index 0996ab0..a6488ac 100755 --- a/packages/tailwindcss-intellisense/package.json +++ b/packages/tailwindcss-intellisense/package.json @@ -191,6 +191,7 @@ "dlv": "^1.1.3", "dset": "^2.0.1", "esm": "^3.2.25", + "execa": "^3.4.0", "fast-glob": "^3.2.4", "glob-exec": "^0.1.1", "import-from": "^3.0.0", diff --git a/packages/tailwindcss-intellisense/src/class-names/index.js b/packages/tailwindcss-intellisense/src/class-names/index.js index 922900d..737b5be 100644 --- a/packages/tailwindcss-intellisense/src/class-names/index.js +++ b/packages/tailwindcss-intellisense/src/class-names/index.js @@ -15,6 +15,7 @@ import * as fs from 'fs' import { getUtilityConfigMap } from './getUtilityConfigMap' import glob from 'fast-glob' import normalizePath from 'normalize-path' +import execa from 'execa' function arraysEqual(arr1, arr2) { return ( @@ -33,7 +34,6 @@ export default async function getClassNames( async function run() { let postcss let tailwindcss - let browserslistModule let version let featureFlags = { future: [], experimental: [] } @@ -62,11 +62,6 @@ export default async function getClassNames( version = importFrom(configDir, 'tailwindcss/package.json').version console.log(`Found tailwindcss v${version}: ${tailwindBase}`) - try { - // this is not required - browserslistModule = importFrom(tailwindBase, 'browserslist') - } catch (_) {} - try { featureFlags = importFrom(tailwindBase, './lib/featureFlags.js').default } catch (_) {} @@ -130,11 +125,21 @@ export default async function getClassNames( } const resolvedConfig = resolveConfig({ cwd: configDir, config }) - const browserslist = browserslistModule - ? browserslistModule(undefined, { - path: configDir, - }) - : [] + + let browserslist = [] + try { + const { stdout, stderr } = await execa('browserslist', [], { + preferLocal: true, + localDir: configDir, + cwd: configDir, + }) + if (stderr) { + throw Error(stderr) + } + browserslist = stdout.split('\n') + } catch (error) { + console.error('Failed to load browserslist:', error) + } return { version,