@next-secure-check/core 0.2.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE CHANGED
@@ -1,21 +1,22 @@
1
- MIT License
2
-
3
- Copyright (c) 2026 SetraTheXX
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in all
13
- copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
- SOFTWARE.
1
+ MIT License
2
+
3
+ Copyright (c) 2026 SetraTheXX
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md CHANGED
@@ -5,7 +5,7 @@ Core scanner engine and shared TypeScript types for `next-secure-check`.
5
5
  This is an internal workspace package published for the `next-secure-check` CLI. It contains project detection, file collection, scan orchestration, scoring, and public result types. Most users should install the CLI package instead:
6
6
 
7
7
  ```bash
8
- npx next-secure-check scan .
8
+ npx --yes next-secure-check@latest scan .
9
9
  ```
10
10
 
11
11
  See the main repository for documentation:
@@ -80,13 +80,15 @@ function matchesApiCode(filePath) {
80
80
  function matchesAppCode(filePath) {
81
81
  return (filePath.startsWith("app/") ||
82
82
  filePath.startsWith("pages/") ||
83
+ filePath.startsWith("components/") ||
83
84
  filePath.startsWith("src/app/") ||
84
85
  filePath.startsWith("src/pages/") ||
85
86
  /^apps\/[^/]+\/app\//.test(filePath) ||
86
87
  /^apps\/[^/]+\/src\/app\//.test(filePath) ||
87
88
  /^apps\/[^/]+\/pages\//.test(filePath) ||
88
89
  /^packages\/[^/]+\/app\//.test(filePath) ||
89
- /^packages\/[^/]+\/src\/app\//.test(filePath));
90
+ /^packages\/[^/]+\/src\/app\//.test(filePath) ||
91
+ /^packages\/[^/]+\/src\/.+\.(tsx|jsx)$/.test(filePath));
90
92
  }
91
93
  function matchesTestCode(filePath, basename) {
92
94
  return (filePath.startsWith("__tests__/") ||
@@ -95,8 +97,16 @@ function matchesTestCode(filePath, basename) {
95
97
  }
96
98
  function matchesExampleCode(filePath) {
97
99
  return (filePath.startsWith("examples/") ||
100
+ filePath.startsWith("demo/") ||
101
+ filePath.startsWith("demos/") ||
102
+ filePath.startsWith("playground/") ||
103
+ filePath.startsWith("stories/") ||
104
+ filePath.startsWith("storybook/") ||
105
+ /\.stories\.(ts|tsx|js|jsx)$/.test(filePath) ||
98
106
  /^apps\/[^/]+\/examples\//.test(filePath) ||
99
- /^apps\/[^/]+\/app\/examples\//.test(filePath));
107
+ /^apps\/[^/]+\/app\/examples\//.test(filePath) ||
108
+ /^apps\/[^/]+\/(demo|demos|playground|stories|storybook)\//.test(filePath) ||
109
+ /^apps\/[^/]+\/app\/(demo|demos|playground|stories|storybook)\//.test(filePath));
100
110
  }
101
111
  function matchesDocsCode(filePath, basename) {
102
112
  return filePath.startsWith("docs/") || /\.mdx?$/.test(basename);
@@ -115,6 +125,15 @@ function matchesGeneratedCode(filePath) {
115
125
  return filePath.startsWith("dist/") || filePath.startsWith(".next/") || filePath.startsWith("generated/");
116
126
  }
117
127
  function matchesTemplateCode(filePath) {
118
- return filePath.startsWith("templates/") || filePath.startsWith("fixtures/");
128
+ return (filePath.startsWith("templates/") ||
129
+ filePath.startsWith("fixtures/") ||
130
+ filePath.startsWith("__fixtures__/") ||
131
+ filePath.startsWith("test/fixtures/") ||
132
+ filePath.startsWith("tests/fixtures/") ||
133
+ /^registry\//.test(filePath) ||
134
+ /^apps\/[^/]+\/registry\//.test(filePath) ||
135
+ /^packages\/[^/]+\/registry\//.test(filePath) ||
136
+ /^packages\/[^/]+\/(?:test|tests)\/fixtures\//.test(filePath) ||
137
+ /^packages\/[^/]+\/__fixtures__\//.test(filePath));
119
138
  }
120
139
  //# sourceMappingURL=context-classifier.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context-classifier.js","sourceRoot":"","sources":["../src/context-classifier.ts"],"names":[],"mappings":"AAOA,MAAM,UAAU,mBAAmB,CAAC,QAAgB;IAClD,MAAM,cAAc,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACtD,MAAM,QAAQ,GAAG,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,cAAc,CAAC;IAEpE,IAAI,eAAe,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,aAAa,EAAE,6BAA6B;SAC7C,CAAC;IACJ,CAAC;IAED,IAAI,kBAAkB,CAAC,cAAc,CAAC,EAAE,CAAC;QACvC,OAAO;YACL,OAAO,EAAE,cAAc;YACvB,aAAa,EAAE,2BAA2B;SAC3C,CAAC;IACJ,CAAC;IAED,IAAI,eAAe,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,WAAW;YACpB,aAAa,EAAE,+BAA+B;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;QACpD,OAAO;YACL,OAAO,EAAE,gBAAgB;YACzB,aAAa,EAAE,sCAAsC;SACtD,CAAC;IACJ,CAAC;IAED,IAAI,qBAAqB,CAAC,cAAc,EAAE,QAAQ,CAAC,EAAE,CAAC;QACpD,OAAO;YACL,OAAO,EAAE,iBAAiB;YAC1B,aAAa,EAAE,8BAA8B;SAC9C,CAAC;IACJ,CAAC;IAED,IAAI,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC;QACtC,OAAO;YACL,OAAO,EAAE,aAAa;YACtB,aAAa,EAAE,0BAA0B;SAC1C,CAAC;IACJ,CAAC;IAED,IAAI,oBAAoB,CAAC,cAAc,CAAC,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE,gBAAgB;YACzB,aAAa,EAAE,qCAAqC;SACrD,CAAC;IACJ,CAAC;IAED,IAAI,mBAAmB,CAAC,cAAc,CAAC,EAAE,CAAC;QACxC,OAAO;YACL,OAAO,EAAE,eAAe;YACxB,aAAa,EAAE,+BAA+B;SAC/C,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,gCAAgC;SAChD,CAAC;IACJ,CAAC;IAED,IAAI,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE,UAAU;YACnB,aAAa,EAAE,uCAAuC;SACvD,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,SAAS;QAClB,aAAa,EAAE,uCAAuC;KACvD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,OAAO,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;AAC3D,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;QAC/B,QAAQ,CAAC,UAAU,CAAC,cAAc,CAAC;QACnC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QACjC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,+BAA+B,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC9C,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC5C,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,QAAgB;IACtC,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC;QAC7B,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;QAC/B,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QACjC,qBAAqB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACpC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,uBAAuB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACtC,yBAAyB,CAAC,IAAI,CAAC,QAAQ,CAAC;QACxC,8BAA8B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC9C,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB,EAAE,QAAgB;IACzD,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC;QACjC,QAAQ,CAAC,QAAQ,CAAC,aAAa,CAAC;QAChC,iCAAiC,CAAC,IAAI,CAAC,QAAQ,CAAC,CACjD,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,QAAgB;IAC1C,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC;QAChC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC;QACzC,+BAA+B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC/C,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,QAAgB,EAAE,QAAgB;IACzD,OAAO,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;AAClE,CAAC;AAED,SAAS,qBAAqB,CAAC,QAAgB,EAAE,QAAgB;IAC/D,OAAO,CACL,4BAA4B,CAAC,IAAI,CAAC,QAAQ,CAAC;QAC3C,QAAQ,CAAC,UAAU,CAAC,kBAAkB,CAAC;QACvC,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAC7B,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,QAAgB;IACzC,OAAO,CACL,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC;QAC3B,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC;QAC/B,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,CACrC,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,QAAgB;IAC5C,OAAO,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAC5G,CAAC;AAED,SAAS,mBAAmB,CAAC,QAAgB;IAC3C,OAAO,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"context-classifier.js","sourceRoot":"","sources":["../src/context-classifier.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- export type { Confidence, Finding, FindingContext, ProjectInfo, RiskLevel, Rule, ScanContext, ScanOptions, ScanResult, ScanSummary, Severity, SourceFile } from "./types.js";
1
+ export type { Confidence, Finding, FindingContext, MiddlewareSignal, ProjectInfo, RiskLevel, Rule, ScanContext, ScanOptions, ScanResult, ScanSummary, Severity, SourceFile } from "./types.js";
2
2
  export { classifyFileContext } from "./context-classifier.js";
3
3
  export type { FileContextClassification } from "./context-classifier.js";
4
4
  export { applyContextTuning } from "./context-tuning.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,OAAO,EACP,cAAc,EACd,WAAW,EACX,SAAS,EACT,IAAI,EACJ,WAAW,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,SAAU,GAAG,OAAO,YAAY,EAAE,UAAU,CA0BnH"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,UAAU,EACV,OAAO,EACP,cAAc,EACd,gBAAgB,EAChB,WAAW,EACX,SAAS,EACT,IAAI,EACJ,WAAW,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,QAAQ,EACR,UAAU,EACX,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAC9D,YAAY,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,SAAU,GAAG,OAAO,YAAY,EAAE,UAAU,CA0BnH"}
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,UAAU,wBAAwB,CAAC,UAAkB,EAAE,WAAW,GAAG,OAAO;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO;QACL,OAAO,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;SACpB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,WAAW;YACtB,aAAa,EAAE,CAAC;YAChB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,CAAC;SACR;QACD,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE;YACR,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAC5C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,WAAW;SACZ;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAE9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE/D,MAAM,UAAU,wBAAwB,CAAC,UAAkB,EAAE,WAAW,GAAG,OAAO;IAChF,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAE7B,OAAO;QACL,OAAO,EAAE;YACP,IAAI,EAAE,UAAU;YAChB,SAAS,EAAE,SAAS;YACpB,MAAM,EAAE,SAAS;YACjB,QAAQ,EAAE,SAAS;SACpB;QACD,OAAO,EAAE;YACP,KAAK,EAAE,GAAG;YACV,SAAS,EAAE,WAAW;YACtB,aAAa,EAAE,CAAC;YAChB,IAAI,EAAE,CAAC;YACP,MAAM,EAAE,CAAC;YACT,GAAG,EAAE,CAAC;YACN,IAAI,EAAE,CAAC;SACR;QACD,QAAQ,EAAE,EAAE;QACZ,QAAQ,EAAE;YACR,SAAS,EAAE,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;YAC5C,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,WAAW;SACZ;KACF,CAAC;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"project-detector.d.ts","sourceRoot":"","sources":["../src/project-detector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAcvE,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,SAAS,CAAC,CA8BjH"}
1
+ {"version":3,"file":"project-detector.d.ts","sourceRoot":"","sources":["../src/project-detector.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAcvE,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC,WAAW,EAAE,aAAa,GAAG,SAAS,CAAC,CA6BjH"}
@@ -8,11 +8,10 @@ export function detectProject(files, rootPath) {
8
8
  };
9
9
  const hasNextDependency = "next" in allDependencies;
10
10
  const hasReactDependency = "react" in allDependencies || files.some((file) => /\.(tsx|jsx)$/.test(file.path));
11
- const hasNextStructure = files.some((file) => file.path.startsWith("app/") || file.path.startsWith("src/app/"));
12
- const hasApiRoutes = files.some((file) => file.path.includes("/api/") || file.path.startsWith("pages/api/"));
11
+ const hasNextStructure = files.some((file) => isAppRouterPath(file.path) || isPagesRouterPath(file.path));
13
12
  const project = {
14
13
  name: packageJson.name ?? path.basename(rootPath),
15
- framework: hasNextDependency || hasNextStructure || hasApiRoutes ? "nextjs" : hasReactDependency ? "react" : "node",
14
+ framework: hasNextDependency || hasNextStructure ? "nextjs" : hasReactDependency ? "react" : "node",
16
15
  router: detectRouter(files),
17
16
  language: detectLanguage(files)
18
17
  };
@@ -44,8 +43,8 @@ function parsePackageJson(content) {
44
43
  }
45
44
  }
46
45
  function detectRouter(files) {
47
- const hasApp = files.some((file) => file.path.startsWith("app/") || file.path.startsWith("src/app/"));
48
- const hasPages = files.some((file) => file.path.startsWith("pages/") || file.path.startsWith("src/pages/"));
46
+ const hasApp = files.some((file) => isAppRouterPath(file.path));
47
+ const hasPages = files.some((file) => isPagesRouterPath(file.path));
49
48
  if (hasApp && hasPages) {
50
49
  return "mixed";
51
50
  }
@@ -57,6 +56,12 @@ function detectRouter(files) {
57
56
  }
58
57
  return "unknown";
59
58
  }
59
+ function isAppRouterPath(filePath) {
60
+ return /^(?:apps\/[^/]+\/)?(?:src\/)?app(?:\/|$)/.test(filePath);
61
+ }
62
+ function isPagesRouterPath(filePath) {
63
+ return /^(?:apps\/[^/]+\/)?(?:src\/)?pages(?:\/|$)/.test(filePath);
64
+ }
60
65
  function detectLanguage(files) {
61
66
  const hasTypeScript = files.some((file) => /\.(ts|tsx)$/.test(file.path));
62
67
  const hasJavaScript = files.some((file) => /\.(js|jsx)$/.test(file.path));
@@ -1 +1 @@
1
- {"version":3,"file":"project-detector.js","sourceRoot":"","sources":["../src/project-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"project-detector.js","sourceRoot":"","sources":["../src/project-detector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAA8B,WAAW,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAEtF,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAiCpG;AAED,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAU5E"}
1
+ {"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAgD,WAAW,EAAE,UAAU,EAAc,MAAM,YAAY,CAAC;AAEpH,wBAAsB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,WAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAkCpG;AAED,wBAAsB,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAU5E"}
package/dist/scanner.js CHANGED
@@ -19,6 +19,7 @@ export async function scanProject(targetPath, options = {}) {
19
19
  rootPath,
20
20
  files,
21
21
  project: detection.project,
22
+ middleware: extractMiddlewareSignals(files),
22
23
  packageJson: detection.packageJson
23
24
  };
24
25
  const findings = sortFindings(applyContextTuningToFindings(enrichFindingsWithContext(await runRules(rules, context)), options.contextTuning ?? "standard"));
@@ -77,4 +78,36 @@ function sortFindings(findings) {
77
78
  return (a.line ?? 0) - (b.line ?? 0) || a.ruleId.localeCompare(b.ruleId);
78
79
  });
79
80
  }
81
+ function extractMiddlewareSignals(files) {
82
+ return files.filter(isMiddlewareFile).map((file) => ({
83
+ filePath: file.path,
84
+ hasAuthSignal: hasMiddlewareAuthSignal(file.content),
85
+ hasRateLimitSignal: hasMiddlewareRateLimitSignal(file.content),
86
+ matchers: extractMiddlewareMatchers(file.content),
87
+ scopeRoot: middlewareScopeRoot(file.path) ?? ""
88
+ }));
89
+ }
90
+ function isMiddlewareFile(file) {
91
+ return middlewareScopeRoot(file.path) !== undefined;
92
+ }
93
+ function middlewareScopeRoot(filePath) {
94
+ if (/^(?:src\/)?middleware\.[tj]s$/.test(filePath)) {
95
+ return "";
96
+ }
97
+ return /^((?:apps|packages)\/[^/]+)\/(?:src\/)?middleware\.[tj]s$/.exec(filePath)?.[1];
98
+ }
99
+ function hasMiddlewareAuthSignal(content) {
100
+ return /\b(auth|withAuth|requireAuth|currentUser|getServerSession|clerk|verifyToken|session|isAdmin|role|permission)\b|jwt\.verify/i.test(content);
101
+ }
102
+ function hasMiddlewareRateLimitSignal(content) {
103
+ return /\b(rateLimit|rate-limit|ratelimit|limiter|checkRateLimit|applyRateLimit|upstash|redis|slowDown|throttle)\b|\b429\b|too many requests/i.test(content);
104
+ }
105
+ function extractMiddlewareMatchers(content) {
106
+ const matcherProperty = /matcher\s*:\s*(\[[^\]]+\]|["'`][^"'`]+["'`])/s.exec(content);
107
+ if (!matcherProperty) {
108
+ return [];
109
+ }
110
+ const matcherValue = matcherProperty[1] ?? "";
111
+ return [...matcherValue.matchAll(/["'`]([^"'`]+)["'`]/g)].map((match) => match[1] ?? "").filter(Boolean);
112
+ }
80
113
  //# sourceMappingURL=scanner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scanner.js","sourceRoot":"","sources":["../src/scanner.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -24,6 +24,7 @@ export type Finding = {
24
24
  line?: number;
25
25
  column?: number;
26
26
  evidence?: string;
27
+ evidencePath?: string;
27
28
  description: string;
28
29
  recommendation: string;
29
30
  references?: string[];
@@ -58,12 +59,20 @@ export type ScanContext = {
58
59
  rootPath: string;
59
60
  files: SourceFile[];
60
61
  project: ProjectInfo;
62
+ middleware?: MiddlewareSignal[];
61
63
  packageJson?: {
62
64
  name?: string;
63
65
  dependencies: Record<string, string>;
64
66
  devDependencies: Record<string, string>;
65
67
  };
66
68
  };
69
+ export type MiddlewareSignal = {
70
+ filePath: string;
71
+ hasAuthSignal: boolean;
72
+ hasRateLimitSignal: boolean;
73
+ matchers: string[];
74
+ scopeRoot?: string;
75
+ };
67
76
  export type Rule = {
68
77
  id: string;
69
78
  title: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-secure-check/core",
3
- "version": "0.2.0",
3
+ "version": "0.4.0",
4
4
  "description": "Core scanning engine for next-secure-check",
5
5
  "keywords": [
6
6
  "nextjs",
@@ -16,7 +16,7 @@
16
16
  "license": "MIT",
17
17
  "type": "module",
18
18
  "engines": {
19
- "node": ">=18.0.0"
19
+ "node": ">=20.0.0"
20
20
  },
21
21
  "publishConfig": {
22
22
  "access": "public"