{
  "manifest": {
    "name": "postcss-import",
    "version": "15.1.0",
    "description": "PostCSS plugin to import CSS files",
    "keywords": [
      "css",
      "postcss",
      "postcss-plugin",
      "import",
      "node modules",
      "npm"
    ],
    "author": {
      "name": "Maxime Thirouin"
    },
    "license": "MIT",
    "repository": {
      "type": "git",
      "url": "https://github.com/postcss/postcss-import.git"
    },
    "files": [
      "index.js",
      "lib"
    ],
    "engines": {
      "node": ">=14.0.0"
    },
    "dependencies": {
      "postcss-value-parser": "^4.0.0",
      "read-cache": "^1.0.0",
      "resolve": "^1.1.7"
    },
    "devDependencies": {
      "ava": "^5.0.0",
      "eslint": "^8.2.0",
      "eslint-config-problems": "^7.0.0",
      "eslint-plugin-prettier": "^4.0.0",
      "postcss": "^8.0.0",
      "postcss-scss": "^4.0.0",
      "prettier": "~2.8.0",
      "sugarss": "^4.0.0"
    },
    "peerDependencies": {
      "postcss": "^8.0.0"
    },
    "scripts": {
      "ci": "eslint . && ava",
      "lint": "eslint . --fix",
      "pretest": "npm run lint",
      "test": "ava"
    },
    "eslintConfig": {
      "extends": "eslint-config-problems",
      "env": {
        "node": true
      },
      "plugins": [
        "prettier"
      ],
      "rules": {
        "prettier/prettier": [
          "error",
          {
            "semi": false,
            "arrowParens": "avoid"
          }
        ]
      }
    },
    "_registry": "npm",
    "_loc": "/homez.1033/heliovt/.cache/yarn/v6/npm-postcss-import-15.1.0-41c64ed8cc0e23735a9698b3249ffdbf704adc70-integrity/node_modules/postcss-import/package.json",
    "readmeFilename": "README.md",
    "readme": "# postcss-import\n\n[![Build](https://img.shields.io/travis/postcss/postcss-import/master)](https://travis-ci.org/postcss/postcss-import)\n[![Version](https://img.shields.io/npm/v/postcss-import)](https://github.com/postcss/postcss-import/blob/master/CHANGELOG.md)\n[![postcss compatibility](https://img.shields.io/npm/dependency-version/postcss-import/peer/postcss)](https://postcss.org/)\n\n> [PostCSS](https://github.com/postcss/postcss) plugin to transform `@import`\nrules by inlining content.\n\nThis plugin can consume local files, node modules or web_modules.\nTo resolve path of an `@import` rule, it can look into root directory\n(by default `process.cwd()`), `web_modules`, `node_modules`\nor local modules.\n_When importing a module, it will look for `index.css` or file referenced in\n`package.json` in the `style` or `main` fields._\nYou can also provide manually multiples paths where to look at.\n\n**Notes:**\n\n- **This plugin should probably be used as the first plugin of your list.\nThis way, other plugins will work on the AST as if there were only a single file\nto process, and will probably work as you can expect**.\n- This plugin works great with\n[postcss-url](https://github.com/postcss/postcss-url) plugin,\nwhich will allow you to adjust assets `url()` (or even inline them) after\ninlining imported files.\n- In order to optimize output, **this plugin will only import a file once** on\na given scope (root, media query...).\nTests are made from the path & the content of imported files (using a hash\ntable).\nIf this behavior is not what you want, look at `skipDuplicates` option\n- If you are looking for **Glob Imports**, you can use [postcss-import-ext-glob](https://github.com/dimitrinicolas/postcss-import-ext-glob) to extend postcss-import.\n- Imports which are not modified (by `options.filter` or because they are remote\n  imports) are moved to the top of the output.\n- **This plugin attempts to follow the CSS `@import` spec**; `@import`\n  statements must precede all other statements (besides `@charset`).\n\n## Installation\n\n```console\n$ npm install -D postcss-import\n```\n\n## Usage\n\nUnless your stylesheet is in the same place where you run postcss\n(`process.cwd()`), you will need to use `from` option to make relative imports\nwork.\n\n```js\n// dependencies\nconst fs = require(\"fs\")\nconst postcss = require(\"postcss\")\nconst atImport = require(\"postcss-import\")\n\n// css to be processed\nconst css = fs.readFileSync(\"css/input.css\", \"utf8\")\n\n// process css\npostcss()\n  .use(atImport())\n  .process(css, {\n    // `from` option is needed here\n    from: \"css/input.css\"\n  })\n  .then((result) => {\n    const output = result.css\n\n    console.log(output)\n  })\n```\n\n`css/input.css`:\n\n```css\n/* can consume `node_modules`, `web_modules` or local modules */\n@import \"cssrecipes-defaults\"; /* == @import \"../node_modules/cssrecipes-defaults/index.css\"; */\n@import \"normalize.css\"; /* == @import \"../node_modules/normalize.css/normalize.css\"; */\n\n@import \"foo.css\"; /* relative to css/ according to `from` option above */\n\n@import \"bar.css\" (min-width: 25em);\n\n@import 'baz.css' layer(baz-layer);\n\nbody {\n  background: black;\n}\n```\n\nwill give you:\n\n```css\n/* ... content of ../node_modules/cssrecipes-defaults/index.css */\n/* ... content of ../node_modules/normalize.css/normalize.css */\n\n/* ... content of css/foo.css */\n\n@media (min-width: 25em) {\n/* ... content of css/bar.css */\n}\n\n@layer baz-layer {\n/* ... content of css/baz.css */\n}\n\nbody {\n  background: black;\n}\n```\n\nCheckout the [tests](test) for more examples.\n\n### Options\n\n### `filter`\nType: `Function`  \nDefault: `() => true`\n\nOnly transform imports for which the test function returns `true`. Imports for\nwhich the test function returns `false` will be left as is. The function gets\nthe path to import as an argument and should return a boolean.\n\n#### `root`\n\nType: `String`  \nDefault: `process.cwd()` or _dirname of\n[the postcss `from`](https://github.com/postcss/postcss#node-source)_\n\nDefine the root where to resolve path (eg: place where `node_modules` are).\nShould not be used that much.  \n_Note: nested `@import` will additionally benefit of the relative dirname of\nimported files._\n\n#### `path`\n\nType: `String|Array`  \nDefault: `[]`\n\nA string or an array of paths in where to look for files.\n\n#### `plugins`\n\nType: `Array`  \nDefault: `undefined`\n\nAn array of plugins to be applied on each imported files.\n\n#### `resolve`\n\nType: `Function`  \nDefault: `null`\n\nYou can provide a custom path resolver with this option. This function gets\n`(id, basedir, importOptions)` arguments and should return a path, an array of\npaths or a promise resolving to the path(s). If you do not return an absolute\npath, your path will be resolved to an absolute path using the default\nresolver.\nYou can use [resolve](https://github.com/substack/node-resolve) for this.\n\n#### `load`\n\nType: `Function`  \nDefault: null\n\nYou can overwrite the default loading way by setting this option.\nThis function gets `(filename, importOptions)` arguments and returns content or\npromised content.\n\n#### `skipDuplicates`\n\nType: `Boolean`  \nDefault: `true`\n\nBy default, similar files (based on the same content) are being skipped.\nIt's to optimize output and skip similar files like `normalize.css` for example.\nIf this behavior is not what you want, just set this option to `false` to\ndisable it.\n\n#### `addModulesDirectories`\n\nType: `Array`  \nDefault: `[]`\n\nAn array of folder names to add to [Node's resolver](https://github.com/substack/node-resolve).\nValues will be appended to the default resolve directories:\n`[\"node_modules\", \"web_modules\"]`.\n\nThis option is only for adding additional directories to default resolver. If\nyou provide your own resolver via the `resolve` configuration option above, then\nthis value will be ignored.\n\n#### `nameLayer`\n\nType: `Function`\nDefault: `null`\n\nYou can provide a custom naming function for anonymous layers (`@import 'baz.css' layer;`).\nThis function gets `(index, rootFilename)` arguments and should return a unique string.\n\nThis option only influences imports without a layer name.\nWithout this option the plugin will warn on anonymous layers.\n\n#### Example with some options\n\n```js\nconst postcss = require(\"postcss\")\nconst atImport = require(\"postcss-import\")\n\npostcss()\n  .use(atImport({\n    path: [\"src/css\"],\n  }))\n  .process(cssString)\n  .then((result) => {\n    const { css } = result\n  })\n```\n\n## `dependency` Message Support\n\n`postcss-import` adds a message to `result.messages` for each `@import`. Messages are in the following format:\n\n```\n{\n  type: 'dependency',\n  file: absoluteFilePath,\n  parent: fileContainingTheImport\n}\n```\n\nThis is mainly for use by postcss runners that implement file watching.\n\n---\n\n## CONTRIBUTING\n\n* ⇄ Pull requests and ★ Stars are always welcome.\n* For bugs and feature requests, please create an issue.\n* Pull requests must be accompanied by passing automated tests (`$ npm test`).\n\n## [Changelog](CHANGELOG.md)\n\n## [License](LICENSE)\n",
    "licenseText": "The MIT License (MIT)\n\nCopyright (c) 2014 Maxime Thirouin, Jason Campbell & Kevin Mårtensson\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of\nthis software and associated documentation files (the \"Software\"), to deal in\nthe Software without restriction, including without limitation the rights to\nuse, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\nthe Software, and to permit persons to whom the Software is furnished to do so,\nsubject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all\ncopies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\nFOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\nCOPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\nIN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\nCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  "artifacts": [],
  "remote": {
    "resolved": "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz#41c64ed8cc0e23735a9698b3249ffdbf704adc70",
    "type": "tarball",
    "reference": "https://registry.yarnpkg.com/postcss-import/-/postcss-import-15.1.0.tgz",
    "hash": "41c64ed8cc0e23735a9698b3249ffdbf704adc70",
    "integrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew==",
    "registry": "npm",
    "packageName": "postcss-import",
    "cacheIntegrity": "sha512-hpr+J05B2FVYUAXHeK1YyI267J/dDDhMU6B6civm8hSY1jYJnBXxzKDKDswzJmtLHryrjhnDjqqp/49t8FALew== sha1-QcZO2MwOI3NalpizJJ/9v3BK3HA="
  },
  "registry": "npm",
  "hash": "41c64ed8cc0e23735a9698b3249ffdbf704adc70"
}