Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.
 
 
 
Anoop 4ec47c764d Initial Commit pirms 2 gadiem
.idea Initial Commit pirms 2 gadiem
dist Initial Commit pirms 2 gadiem
src Initial Commit pirms 2 gadiem
test Initial Commit pirms 2 gadiem
.gitignore Initial Commit pirms 2 gadiem
.npmignore Initial Commit pirms 2 gadiem
.prettierignore Initial Commit pirms 2 gadiem
.prettierrc Initial Commit pirms 2 gadiem
LICENSE Initial Commit pirms 2 gadiem
README.md Initial Commit pirms 2 gadiem
build.js Initial Commit pirms 2 gadiem
package.json Initial Commit pirms 2 gadiem
tsconfig.json Initial Commit pirms 2 gadiem
yarn.lock Initial Commit pirms 2 gadiem

README.md

esbuild-plugin-postcss2

This plugin is an optimized, type-friendly version of esbuild-plugin-postcss. It supports CSS preprocessors and CSS modules.

Install

yarn add -D esbuild-plugin-postcss2

or

npm i -D esbuild-plugin-postcss2

Usage

Add the plugin to your esbuild plugins:

const esbuild = require("esbuild");
const postCssPlugin = require("esbuild-plugin-postcss2");

esbuild.build({
  ...
  plugins: [
    postCssPlugin.default()
  ]
  ...
});

PostCSS plugins

Add your desired PostCSS plugin to the plugins array:

const autoprefixer = require("autoprefixer");

esbuild.build({
  ...
  plugins: [
    postCssPlugin.default({
      plugins: [autoprefixer]
    })
  ]
  ...
});

CSS modules

PostCSS modules are enabled by default. You can pass in a config or disable it with the modules field:

postCssPlugin.default({
  // pass in `postcss-modules` custom options
  // set to false to disable
  modules: {
    getJSON(cssFileName, json, outputFileName) {
      const path = require("path");
      const cssName = path.basename(cssFileName, ".css");
      const jsonFileName = path.resolve("./build/" + cssName + ".json");

      fs.writeFileSync(jsonFileName, JSON.stringify(json));
    }
  }
});

As per standard any file having module before the extension (ie somefile.module.css) will be treated as a module. The option fileIsModule allows to override this behavior.

postCssPlugin.default({
  // pass a custom `fileIsModule` option to tell whether a file should be treated as a module
  // in this example we want everything to be a module except file finishing with `global.css`
  fileIsModule: (filepath) => !filepath.endsWith(".global.css")
});

Preprocessors

To use preprocessors (sass, scss, stylus, less), just add the desired preprocessor as a devDependency:

yarn add -D sass