Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/instructure/webpack-esmac-plugin
Control access to modules bundled by Webpack
https://github.com/instructure/webpack-esmac-plugin
Last synced: 8 days ago
JSON representation
Control access to modules bundled by Webpack
- Host: GitHub
- URL: https://github.com/instructure/webpack-esmac-plugin
- Owner: instructure
- License: mit
- Created: 2021-10-05T07:27:05.000Z (about 3 years ago)
- Default Branch: master
- Last Pushed: 2022-06-21T12:04:35.000Z (over 2 years ago)
- Last Synced: 2024-09-30T21:08:18.934Z (about 1 month ago)
- Language: JavaScript
- Size: 136 KB
- Stars: 0
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Webpack ESMAC Plugin
An implementation of [esmac] for Webpack to control access between modules. See
that project for more details.## Usage
The plugin has a familiar Webpack interface for filtering the files it runs
against, similar to what you would do with a loader. `rules` is the only
required argument, which is the set of rules to provide to [esmac].```javascript
// file: webpack.config.js
const ESMACPlugin = require('webpack-esmac-plugin')module.exports = {
plugins: [
new ESMACPlugin({
rules: [ ... ]
})
]
}
```The plugin can generate 2 types of errors that are added to the compilation's
list of errors after the modules have been built:- `AccessViolationError` when no rule was found to cover the dependency
- `SpecifierMismatchError` when a rule was found but the specifier check failedYou can choose to format the errors into something meaningful to your users
by implementing the `formatter` function, described in Options.## Options
See [./types.d.ts](./types.d.ts) for the available options.
## License
MIT
[esmac]: https://github.com/instructure/esmac