{
  "name": "esbuild-plugin-sass",
  "version": "1.0.1",
  "description": "Plugin for esbuild to support SASS styles",
  "main": "index.js",
  "types": "index.d.ts",
  "author": {
    "name": "Nikolai Mavrenkov",
    "email": "koluch@koluch.ru",
    "url": "koluch.ru"
  },
  "license": "ISC",
  "repository": {
    "type": "git",
    "url": "https://github.com/koluch/esbuild-plugin-sass.git"
  },
  "keywords": [
    "esbuild",
    "plugin",
    "sass"
  ],
  "dependencies": {
    "css-tree": "1.1.3",
    "fs-extra": "10.0.0",
    "sass": "1.47.0",
    "tmp": "0.2.1"
  },
  "peerDependencies": {
    "esbuild": ">=0.11.14"
  },
  "devDependencies": {
    "@types/css-tree": "1.0.7",
    "@types/fs-extra": "9.0.13",
    "@types/node": "14.14.35",
    "@types/sass": "1.43.1",
    "@types/tmp": "0.2.3",
    "esbuild": "0.14.10",
    "husky": "7.0.4",
    "lint-staged": "12.1.7",
    "npm-run-all": "4.1.5",
    "pack-to-folder": "1.0.0",
    "prettier": "2.5.1",
    "rimraf": "3.0.2",
    "tape": "5.4.0",
    "typescript": "4.5.4"
  },
  "husky": {
    "hooks": {
      "pre-commit": "pnpm exec lint-staged"
    }
  },
  "lint-staged": {
    "*.js": [
      "npx prettier --write"
    ]
  },
  "files": [
    "index.js",
    "index.d.ts",
    "index.d.ts.map",
    "internals/*.js",
    "internals/*.d.ts",
    "internals/*.d.ts.map"
  ],
  "scripts": {
    "all": "npm-run-all --serial --print-label",
    "build": "pnpm exec tsc",
    "test:prepare": "pnpm exec pack-to-folder --renameTo=.npm-package --forceRewrite",
    "test:unit": "pnpm exec tape \"tests/*.js\"",
    "test:clean": "pnpm exec rimraf .npm-package",
    "test": "pnpm run all build test:*"
  },
  "readme": "# esbuild-plugin-sass\n\n![Node.js CI](https://github.com/koluch/esbuild-plugin-sass/workflows/Node.js%20CI/badge.svg)\n\nPlugin for [esbuild](https://esbuild.github.io/) to support Sass style sheets\n\n## Install\n\n```shell\nnpm i esbuild esbuild-plugin-sass\n```\n\nor, using [pnpm](https://pnpm.io/):\n\n```shell\npnpm add esbuild esbuild-plugin-sass\n```\n\n## Usage example\n\nCreate file `src/test.scss`:\n\n```scss\nbody {\n  &.isRed {\n    background: red;\n  }\n}\n```\n\nCreate file `src/index.js`:\n\n```js\nimport \"./test.scss\";\n```\n\nCreate file `build.js`:\n\n```js\nconst esbuild = require(\"esbuild\");\nconst sassPlugin = require(\"esbuild-plugin-sass\");\n\nesbuild\n  .build({\n    entryPoints: [\"src/index.js\"],\n    bundle: true,\n    outfile: \"bundle.js\",\n    plugins: [sassPlugin()],\n  })\n  .catch((e) => console.error(e.message));\n```\n\nRun:\n\n```console\n$ node build.js\n```\n\nFile named `bundle.css` with following content will be created:\n\n```css\nbody.isRed {\n  background: red;\n}\n```\n\n# API\n\nModule default-exports a function, which need to be called with or without options object:\n\n```typescript\nimport sass = require(\"sass\");\n\ninterface Options {\n  rootDir?: string;\n  customSassOptions?: Omit<sass.Options, \"file\">;\n}\n\nexport = (options: Options = {}) => Plugin;\n```\n\nSupported options:\n\n- `rootDir` - folder to resolve paths against\n- `customSassOptions` - options object passed to `sass` [compile](https://sass-lang.com/documentation/js-api/modules#compile) function, except `file` option, which is overriden by plugin for each processed file\n"
}