mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-12-17 07:15:22 +01:00
Added lefthook to enforce no non-type export in src/@types
This commit is contained in:
parent
88e4ab978b
commit
f3f746ebdc
@ -1,6 +1,18 @@
|
|||||||
/** @type {import('dependency-cruiser').IConfiguration} */
|
/** @type {import('dependency-cruiser').IConfiguration} */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
forbidden: [
|
forbidden: [
|
||||||
|
{
|
||||||
|
name: "no-non-type-@type-exports",
|
||||||
|
severity: "error",
|
||||||
|
comment:
|
||||||
|
"Files in @types should not export anything but types and interfaces. " +
|
||||||
|
"The folder is intended to house imports that are removed at runtime, " +
|
||||||
|
"and thus should not contain anything with a bearing on runtime code.",
|
||||||
|
to: {
|
||||||
|
path: "(^|/)src/@types",
|
||||||
|
dependencyTypesNot: ["type-only"],
|
||||||
|
},
|
||||||
|
},
|
||||||
{
|
{
|
||||||
name: "only-type-imports",
|
name: "only-type-imports",
|
||||||
severity: "error",
|
severity: "error",
|
||||||
@ -218,7 +230,7 @@ module.exports = {
|
|||||||
module systems it knows of. It's the default because it's the safe option
|
module systems it knows of. It's the default because it's the safe option
|
||||||
It might come at a performance penalty, though.
|
It might come at a performance penalty, though.
|
||||||
moduleSystems: ['amd', 'cjs', 'es6', 'tsd']
|
moduleSystems: ['amd', 'cjs', 'es6', 'tsd']
|
||||||
|
|
||||||
As in practice only commonjs ('cjs') and ecmascript modules ('es6')
|
As in practice only commonjs ('cjs') and ecmascript modules ('es6')
|
||||||
are widely used, you can limit the moduleSystems to those.
|
are widely used, you can limit the moduleSystems to those.
|
||||||
*/
|
*/
|
||||||
@ -226,7 +238,7 @@ module.exports = {
|
|||||||
// moduleSystems: ['cjs', 'es6'],
|
// moduleSystems: ['cjs', 'es6'],
|
||||||
|
|
||||||
/* prefix for links in html and svg output (e.g. 'https://github.com/you/yourrepo/blob/main/'
|
/* prefix for links in html and svg output (e.g. 'https://github.com/you/yourrepo/blob/main/'
|
||||||
to open it on your online repo or `vscode://file/${process.cwd()}/` to
|
to open it on your online repo or `vscode://file/${process.cwd()}/` to
|
||||||
open it in visual studio code),
|
open it in visual studio code),
|
||||||
*/
|
*/
|
||||||
// prefix: `vscode://file/${process.cwd()}/`,
|
// prefix: `vscode://file/${process.cwd()}/`,
|
||||||
@ -271,7 +283,7 @@ module.exports = {
|
|||||||
to './webpack.conf.js'.
|
to './webpack.conf.js'.
|
||||||
|
|
||||||
The (optional) `env` and `arguments` attributes contain the parameters
|
The (optional) `env` and `arguments` attributes contain the parameters
|
||||||
to be passed if your webpack config is a function and takes them (see
|
to be passed if your webpack config is a function and takes them (see
|
||||||
webpack documentation for details)
|
webpack documentation for details)
|
||||||
*/
|
*/
|
||||||
// webpackConfig: {
|
// webpackConfig: {
|
||||||
@ -322,8 +334,8 @@ module.exports = {
|
|||||||
A list of alias fields in package.jsons
|
A list of alias fields in package.jsons
|
||||||
See [this specification](https://github.com/defunctzombie/package-browser-field-spec) and
|
See [this specification](https://github.com/defunctzombie/package-browser-field-spec) and
|
||||||
the webpack [resolve.alias](https://webpack.js.org/configuration/resolve/#resolvealiasfields)
|
the webpack [resolve.alias](https://webpack.js.org/configuration/resolve/#resolvealiasfields)
|
||||||
documentation
|
documentation
|
||||||
|
|
||||||
Defaults to an empty array (= don't use alias fields).
|
Defaults to an empty array (= don't use alias fields).
|
||||||
*/
|
*/
|
||||||
// aliasFields: ["browser"],
|
// aliasFields: ["browser"],
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user