jsxpression 0.2.3 → 0.3.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/lib/analyze/analysis-error.d.ts.map +1 -1
- package/lib/analyze/analysis-error.js +3 -1
- package/lib/analyze/analysis-error.js.map +1 -1
- package/lib/analyze/analysis-report.d.ts +146 -5
- package/lib/analyze/analysis-report.d.ts.map +1 -1
- package/lib/analyze/analysis-report.js.map +1 -1
- package/lib/analyze/data/data-access.d.ts.map +1 -1
- package/lib/analyze/data/data-access.js +22 -15
- package/lib/analyze/data/data-access.js.map +1 -1
- package/lib/analyze/data/method-calls.js +1 -1
- package/lib/analyze/data/method-calls.js.map +1 -1
- package/lib/analyze/data/utils.d.ts.map +1 -1
- package/lib/analyze/data/utils.js +27 -22
- package/lib/analyze/data/utils.js.map +1 -1
- package/lib/analyze/jsx/element-attributes.js +2 -2
- package/lib/analyze/jsx/element-attributes.js.map +1 -1
- package/lib/analyze/jsx/element-children.js +1 -1
- package/lib/analyze/jsx/element-children.js.map +1 -1
- package/lib/analyze/jsx/element-tags.js +1 -1
- package/lib/analyze/jsx/element-tags.js.map +1 -1
- package/lib/analyze/security/call-expressions.js +1 -1
- package/lib/analyze/security/call-expressions.js.map +1 -1
- package/lib/analyze/security/identifiers.js +6 -8
- package/lib/analyze/security/identifiers.js.map +1 -1
- package/lib/analyze/utils.d.ts.map +1 -1
- package/lib/analyze/utils.js +3 -2
- package/lib/analyze/utils.js.map +1 -1
- package/lib/builtins.js +1 -1
- package/lib/builtins.js.map +1 -1
- package/lib/codegen/schema/data-types.js +3 -6
- package/lib/codegen/schema/data-types.js.map +1 -1
- package/lib/codegen/schema/function-types.js +1 -1
- package/lib/codegen/schema/function-types.js.map +1 -1
- package/lib/codegen/schema/utils.d.ts.map +1 -1
- package/lib/codegen/schema/utils.js +6 -5
- package/lib/codegen/schema/utils.js.map +1 -1
- package/lib/compile/compile.js +11 -7
- package/lib/compile/compile.js.map +1 -1
- package/lib/index.js +1 -0
- package/lib/index.js.map +1 -1
- package/lib/jsx.js +1 -1
- package/lib/jsx.js.map +1 -1
- package/lib/parse/parse.js.map +1 -1
- package/package.json +2 -2
- package/src/analyze/analysis-error.ts +3 -1
- package/src/analyze/analysis-report.ts +2 -2
- package/src/analyze/analyze.test.ts +9 -0
- package/src/analyze/data/data-access.ts +22 -15
- package/src/analyze/data/method-calls.ts +1 -1
- package/src/analyze/data/utils.ts +29 -32
- package/src/analyze/jsx/element-attributes.ts +2 -2
- package/src/analyze/jsx/element-children.ts +1 -1
- package/src/analyze/jsx/element-tags.ts +1 -1
- package/src/analyze/security/call-expressions.ts +1 -1
- package/src/analyze/security/identifiers.ts +6 -8
- package/src/analyze/utils.ts +8 -7
- package/src/builtins.ts +1 -1
- package/src/codegen/schema/data-types.ts +3 -6
- package/src/codegen/schema/function-types.ts +1 -1
- package/src/codegen/schema/utils.ts +6 -5
- package/src/compile/compile.ts +11 -7
- package/src/index.ts +1 -1
- package/src/jsx.ts +7 -7
- package/src/parse/parse.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compile/compile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"compile.js","sourceRoot":"","sources":["../../src/compile/compile.ts"],"names":[],"mappings":"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"}
|
package/lib/index.js
CHANGED
package/lib/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyD,6BAA6B,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyD,6BAA6B,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACtJ,OAAO;AACP,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,OAAO,EAAsB,MAAM,aAAa,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAA6C,MAAM,eAAe,CAAC;AAEpF,OAAO,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC"}
|
package/lib/jsx.js
CHANGED
|
@@ -20,6 +20,6 @@ export function isJsxText(value) {
|
|
|
20
20
|
return value?.type === "JSXText";
|
|
21
21
|
}
|
|
22
22
|
export function isJsxLeafNode(value) {
|
|
23
|
-
return value
|
|
23
|
+
return value.type === "JSXText" || isJsxEmptyExpression(value);
|
|
24
24
|
}
|
|
25
25
|
//# sourceMappingURL=jsx.js.map
|
package/lib/jsx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"jsx.js","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":"AAmGA,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAQ,
|
|
1
|
+
{"version":3,"file":"jsx.js","sourceRoot":"","sources":["../src/jsx.ts"],"names":[],"mappings":"AAmGA,MAAM,UAAU,YAAY,CAAC,KAAc;IACzC,OAAQ,KAAuC,EAAE,IAAI,KAAK,YAAY,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAQ,KAAwC,EAAE,IAAI,KAAK,aAAa,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAO,YAAY,CAAC,KAAK,CAAC,IAAI,aAAa,CAAC,KAAK,CAAC,IAAI,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACxF,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,KAAc;IAC3C,OAAQ,KAAyC,EAAE,IAAI,KAAK,cAAc,CAAC;AAC7E,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,KAAc;IACrD,OAAQ,KAAmD,EAAE,IAAI,KAAK,wBAAwB,CAAC;AACjG,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,KAAc;IACjD,OAAQ,KAA+C,EAAE,IAAI,KAAK,oBAAoB,CAAC;AACzF,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,KAAc;IACtC,OAAQ,KAAoC,EAAE,IAAI,KAAK,SAAS,CAAC;AACnE,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,KAAc;IAC1C,OAAO,KAAK,CAAC,IAAI,KAAK,SAAS,IAAI,oBAAoB,CAAC,KAAK,CAAC,CAAC;AACjE,CAAC"}
|
package/lib/parse/parse.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/parse/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,8DAA8D;AAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAEzD,MAAM,UAAU,KAAK,CAAC,MAAc;IAClC,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7B,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,IAAI;YACf,0BAA0B,EAAE,IAAI;SACjC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,oEAAoE;QACpE,wDAAwD;QACxD,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,iEAAiE;YACjE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;YAEpE,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;AAEnD,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,IAAK,
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/parse/parse.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAgB,MAAM,OAAO,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,8DAA8D;AAC9D,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AAEzD,MAAM,UAAU,KAAK,CAAC,MAAc;IAClC,IAAI,CAAC;QACH,OAAO,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE;YAC7B,WAAW,EAAE,QAAQ;YACrB,UAAU,EAAE,QAAQ;YACpB,SAAS,EAAE,IAAI;YACf,0BAA0B,EAAE,IAAI;SACjC,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,oEAAoE;QACpE,wDAAwD;QACxD,IAAI,YAAY,CAAC,KAAK,CAAC,EAAE,CAAC;YACxB,iEAAiE;YACjE,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,wBAAwB,EAAE,EAAE,CAAC,CAAC;YAEpE,MAAM,IAAI,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,IAAI,UAAU,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;IAClF,CAAC;AACH,CAAC;AAED,MAAM,wBAAwB,GAAG,iBAAiB,CAAC;AAEnD,SAAS,YAAY,CAAC,KAAc;IAClC,OAAO,KAAK,YAAY,KAAK,IAAK,KAA6B,CAAC,GAAG,KAAK,SAAS,CAAC;AACpF,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jsxpression",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"gitHead": "
|
|
3
|
+
"version": "0.3.0",
|
|
4
|
+
"gitHead": "09174caac85ce546198a6aefad838b7dff393ea9",
|
|
5
5
|
"description": "Validate and safely render JSX expressions",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "Divid AB <info@divid.se>",
|
|
@@ -3,7 +3,9 @@ import type { AnalysisReport } from "./analysis-report.js";
|
|
|
3
3
|
// oxlint-disable-next-line functional/no-classes -- extends Error, which requires a class
|
|
4
4
|
export class AnalysisError extends Error {
|
|
5
5
|
static fromReport(report: AnalysisReport): AnalysisError {
|
|
6
|
-
const
|
|
6
|
+
const errors = report.errors;
|
|
7
|
+
const firstError = errors[0];
|
|
8
|
+
const message = errors.length === 1 && firstError ? firstError.message : `Analysis failed (${errors.length} issues)`;
|
|
7
9
|
|
|
8
10
|
return new AnalysisError(message, report);
|
|
9
11
|
}
|
|
@@ -18,7 +18,7 @@ interface IssueDefinition {
|
|
|
18
18
|
custom: boolean;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
-
const ISSUES_DEFINITIONS
|
|
21
|
+
const ISSUES_DEFINITIONS = {
|
|
22
22
|
VARIABLE_NOT_ALLOWED: {
|
|
23
23
|
severity: 3,
|
|
24
24
|
custom: true,
|
|
@@ -163,7 +163,7 @@ const ISSUES_DEFINITIONS: Record<string, IssueDefinition> = {
|
|
|
163
163
|
severity: 3,
|
|
164
164
|
custom: true,
|
|
165
165
|
},
|
|
166
|
-
} as const
|
|
166
|
+
} as const satisfies Record<string, IssueDefinition>;
|
|
167
167
|
|
|
168
168
|
export type IssueCode = keyof typeof ISSUES_DEFINITIONS;
|
|
169
169
|
|
|
@@ -99,6 +99,15 @@ describe("analyze - consolidated tests", () => {
|
|
|
99
99
|
expect(result.hasErrors).toBe(true);
|
|
100
100
|
expect(result.errors[0].message).toContain("Property 'user.profile.invalid' does not exist in schema");
|
|
101
101
|
});
|
|
102
|
+
|
|
103
|
+
it("should report a missing intermediate property and continue analyzing other paths", () => {
|
|
104
|
+
const ast = parse("<Text>{user.missing.name}{user.profile.invalid}</Text>");
|
|
105
|
+
const result = analyze(ast, baseSchema);
|
|
106
|
+
expect(result.errors.map((error) => error.message)).toEqual([
|
|
107
|
+
"Property 'user.missing' does not exist in schema",
|
|
108
|
+
"Property 'user.profile.invalid' does not exist in schema",
|
|
109
|
+
]);
|
|
110
|
+
});
|
|
102
111
|
});
|
|
103
112
|
|
|
104
113
|
describe("array access", () => {
|
|
@@ -22,8 +22,7 @@ export function analyzeDataAccess(ast: Program, schema: Schema, validationContex
|
|
|
22
22
|
callee.type === "MemberExpression" &&
|
|
23
23
|
!callee.computed &&
|
|
24
24
|
callee.property.type === "Identifier" &&
|
|
25
|
-
args
|
|
26
|
-
args[0].type === "ArrowFunctionExpression"
|
|
25
|
+
args[0]?.type === "ArrowFunctionExpression"
|
|
27
26
|
) {
|
|
28
27
|
const method = callee.property.name;
|
|
29
28
|
|
|
@@ -38,12 +37,12 @@ export function analyzeDataAccess(ast: Program, schema: Schema, validationContex
|
|
|
38
37
|
const parameterTypes = new Map<string, PropertySchema>();
|
|
39
38
|
|
|
40
39
|
// First parameter is always the array element
|
|
41
|
-
if (arrowFunction.params[0]
|
|
40
|
+
if (arrowFunction.params[0]?.type === "Identifier") {
|
|
42
41
|
parameterTypes.set(arrowFunction.params[0].name, arrayElementType);
|
|
43
42
|
}
|
|
44
43
|
|
|
45
44
|
// For methods like reduce, second parameter might be index (number)
|
|
46
|
-
if (arrowFunction.params
|
|
45
|
+
if (arrowFunction.params[1]?.type === "Identifier") {
|
|
47
46
|
parameterTypes.set(arrowFunction.params[1].name, { type: "number" });
|
|
48
47
|
}
|
|
49
48
|
|
|
@@ -75,7 +74,7 @@ export function analyzeDataAccess(ast: Program, schema: Schema, validationContex
|
|
|
75
74
|
MemberExpression(node) {
|
|
76
75
|
if (isSimpleDataAccess(node, dataKeys)) {
|
|
77
76
|
const path = extractPath(node);
|
|
78
|
-
if (dataKeys.has(path[0])) {
|
|
77
|
+
if (path[0] !== undefined && dataKeys.has(path[0])) {
|
|
79
78
|
dataPaths.add(path.join("."));
|
|
80
79
|
}
|
|
81
80
|
}
|
|
@@ -124,7 +123,7 @@ export function analyzeDataAccess(ast: Program, schema: Schema, validationContex
|
|
|
124
123
|
if (isSimpleDataAccess(node, dataKeys)) {
|
|
125
124
|
const path = extractPath(node);
|
|
126
125
|
|
|
127
|
-
if (dataKeys.has(path[0])) {
|
|
126
|
+
if (path[0] !== undefined && dataKeys.has(path[0])) {
|
|
128
127
|
const pathString = path.join(".");
|
|
129
128
|
|
|
130
129
|
if (validatablePaths.has(pathString)) {
|
|
@@ -168,7 +167,7 @@ function getArrayElementTypeFromCall(
|
|
|
168
167
|
|
|
169
168
|
if (isSimpleDataAccess(callee, dataKeys)) {
|
|
170
169
|
const path = extractPath(callee);
|
|
171
|
-
if (dataKeys.has(path[0])) {
|
|
170
|
+
if (path[0] !== undefined && dataKeys.has(path[0])) {
|
|
172
171
|
const schemaPath = path.slice(0, -1); // Remove method name
|
|
173
172
|
const arraySchema = getSchemaAtPath(schemaPath, schema);
|
|
174
173
|
|
|
@@ -185,11 +184,14 @@ function getArrayElementTypeFromCall(
|
|
|
185
184
|
// e.g., ["group", "items"] or ["dept", "employees"]
|
|
186
185
|
const paramName = objectPath[0];
|
|
187
186
|
const propertyName = objectPath[1];
|
|
187
|
+
if (paramName === undefined || propertyName === undefined) {
|
|
188
|
+
return null;
|
|
189
|
+
}
|
|
188
190
|
|
|
189
191
|
// Find the arrow function context that defines this parameter
|
|
190
192
|
const parameterType = resolveParameterType(paramName, node, arrowFunctionContexts);
|
|
191
193
|
|
|
192
|
-
if (parameterType?.type === "object"
|
|
194
|
+
if (parameterType?.type === "object") {
|
|
193
195
|
const propertySchema = parameterType.shape[propertyName];
|
|
194
196
|
if (propertySchema?.type === "array") {
|
|
195
197
|
return getArrayElementType(propertySchema);
|
|
@@ -227,16 +229,21 @@ function isNodeInsideArrowFunction(targetNode: AnyNode, arrowFunction: ArrowFunc
|
|
|
227
229
|
}
|
|
228
230
|
|
|
229
231
|
function getSchemaAtPath(path: Array<string>, schema: Schema): PropertySchema | null | undefined {
|
|
230
|
-
|
|
232
|
+
const root = path[0];
|
|
233
|
+
if (!schema.data || root === undefined) {
|
|
231
234
|
// oxlint-disable-next-line typescript/no-explicit-any -- this branch returns the raw schema.data record (not a PropertySchema) when no path segments remain; preserved as-is for behavior parity
|
|
232
235
|
return schema.data as any;
|
|
233
236
|
}
|
|
234
237
|
|
|
235
|
-
let current = schema.data[
|
|
238
|
+
let current = schema.data[root];
|
|
236
239
|
|
|
237
240
|
for (let i = 1; i < path.length && current; i++) {
|
|
238
|
-
|
|
239
|
-
|
|
241
|
+
const prop = path[i];
|
|
242
|
+
if (prop === undefined) {
|
|
243
|
+
return undefined;
|
|
244
|
+
}
|
|
245
|
+
if (current.type === "object") {
|
|
246
|
+
current = current.shape[prop];
|
|
240
247
|
} else {
|
|
241
248
|
return null;
|
|
242
249
|
}
|
|
@@ -257,7 +264,7 @@ function validateParameterAccess(
|
|
|
257
264
|
|
|
258
265
|
const propertyName = node.property.name;
|
|
259
266
|
|
|
260
|
-
if (paramType.type === "object"
|
|
267
|
+
if (paramType.type === "object") {
|
|
261
268
|
if (!paramType.shape[propertyName]) {
|
|
262
269
|
analysisReport.addIssue(
|
|
263
270
|
"INVALID_PARAMETER_ACCESS",
|
|
@@ -270,7 +277,7 @@ function validateParameterAccess(
|
|
|
270
277
|
} else {
|
|
271
278
|
analysisReport.addIssue(
|
|
272
279
|
"INVALID_PARAMETER_ACCESS",
|
|
273
|
-
`Cannot access property '${propertyName}' on ${paramType.type
|
|
280
|
+
`Cannot access property '${propertyName}' on ${paramType.type} type parameter '${(node.object as Identifier).name}'`,
|
|
274
281
|
getNodeRange(node),
|
|
275
282
|
validationContext.getSnapshot()
|
|
276
283
|
);
|
|
@@ -278,7 +285,7 @@ function validateParameterAccess(
|
|
|
278
285
|
}
|
|
279
286
|
|
|
280
287
|
export function getArrayElementType(schema: ArrayPropertySchema): PropertySchema | null {
|
|
281
|
-
return schema.shape
|
|
288
|
+
return schema.shape;
|
|
282
289
|
}
|
|
283
290
|
|
|
284
291
|
function buildParentMap(ast: Program): Map<AnyNode, AnyNode | null> {
|
|
@@ -20,7 +20,7 @@ export function analyzeMethodCalls(ast: Program, schema: Schema, validationConte
|
|
|
20
20
|
|
|
21
21
|
if (isSimpleDataAccess(callee, dataKeys)) {
|
|
22
22
|
const path = extractPath(callee);
|
|
23
|
-
if (dataKeys.has(path[0])) {
|
|
23
|
+
if (path[0] !== undefined && dataKeys.has(path[0])) {
|
|
24
24
|
const schemaPath = path.slice(0, -1);
|
|
25
25
|
if (schemaPath.length > 0) {
|
|
26
26
|
validateSchemaPath(schemaPath, schema, analysisReport, callee, validationContext);
|
|
@@ -15,7 +15,7 @@ export function isSimpleDataAccess(node: MemberExpression, dataKeys: ReadonlySet
|
|
|
15
15
|
|
|
16
16
|
let current: MemberExpression["object"] = node.object;
|
|
17
17
|
|
|
18
|
-
|
|
18
|
+
for (;;) {
|
|
19
19
|
if (current.type === "Identifier") {
|
|
20
20
|
return dataKeys.has(current.name);
|
|
21
21
|
}
|
|
@@ -33,8 +33,6 @@ export function isSimpleDataAccess(node: MemberExpression, dataKeys: ReadonlySet
|
|
|
33
33
|
return false;
|
|
34
34
|
}
|
|
35
35
|
}
|
|
36
|
-
|
|
37
|
-
return false;
|
|
38
36
|
}
|
|
39
37
|
|
|
40
38
|
export function extractPath(node: MemberExpression): Array<string> {
|
|
@@ -46,7 +44,7 @@ export function extractPath(node: MemberExpression): Array<string> {
|
|
|
46
44
|
|
|
47
45
|
let current: MemberExpression["object"] = node.object;
|
|
48
46
|
|
|
49
|
-
|
|
47
|
+
for (;;) {
|
|
50
48
|
if (current.type === "Identifier") {
|
|
51
49
|
path.unshift(current.name);
|
|
52
50
|
break;
|
|
@@ -75,16 +73,21 @@ export function getAvailablePropsAtPath(path: Array<string>, depth: number, sche
|
|
|
75
73
|
return Object.keys(schemaData);
|
|
76
74
|
}
|
|
77
75
|
|
|
78
|
-
|
|
76
|
+
const root = path[0];
|
|
77
|
+
if (root === undefined) {
|
|
78
|
+
return [];
|
|
79
|
+
}
|
|
80
|
+
let current: PropertySchema | undefined = schemaData[root];
|
|
79
81
|
|
|
80
82
|
for (let i = 1; i <= depth; i++) {
|
|
81
|
-
|
|
83
|
+
const prop = path[i];
|
|
84
|
+
if (prop === undefined || current?.type !== "object") {
|
|
82
85
|
return [];
|
|
83
86
|
}
|
|
84
|
-
current = current.shape[
|
|
87
|
+
current = current.shape[prop];
|
|
85
88
|
}
|
|
86
89
|
|
|
87
|
-
if (current?.type === "object"
|
|
90
|
+
if (current?.type === "object") {
|
|
88
91
|
return Object.keys(current.shape);
|
|
89
92
|
}
|
|
90
93
|
|
|
@@ -99,7 +102,8 @@ export function validateSchemaPath(
|
|
|
99
102
|
validationContext: ValidationContext
|
|
100
103
|
): void {
|
|
101
104
|
const schemaData = schema.data;
|
|
102
|
-
|
|
105
|
+
const root = path[0];
|
|
106
|
+
if (!schemaData || root === undefined) {
|
|
103
107
|
analysisReport.addIssue(
|
|
104
108
|
"INVALID_DATA_ACCESS",
|
|
105
109
|
"Invalid data access - no schema data available",
|
|
@@ -110,12 +114,12 @@ export function validateSchemaPath(
|
|
|
110
114
|
return;
|
|
111
115
|
}
|
|
112
116
|
|
|
113
|
-
let current = schemaData[
|
|
117
|
+
let current = schemaData[root];
|
|
114
118
|
|
|
115
119
|
if (!current) {
|
|
116
120
|
analysisReport.addIssue(
|
|
117
121
|
"INVALID_DATA_ACCESS",
|
|
118
|
-
`Property '${
|
|
122
|
+
`Property '${root}' does not exist in schema`,
|
|
119
123
|
getNodeRange(node),
|
|
120
124
|
validationContext.getSnapshot(),
|
|
121
125
|
Object.keys(schemaData)
|
|
@@ -127,6 +131,9 @@ export function validateSchemaPath(
|
|
|
127
131
|
|
|
128
132
|
for (let i = 1; i < path.length; i++) {
|
|
129
133
|
const prop = path[i];
|
|
134
|
+
if (prop === undefined) {
|
|
135
|
+
return;
|
|
136
|
+
}
|
|
130
137
|
const isElementAccess = elementAccessFlags[i - 1];
|
|
131
138
|
|
|
132
139
|
if (current.type === "array") {
|
|
@@ -146,21 +153,10 @@ export function validateSchemaPath(
|
|
|
146
153
|
return;
|
|
147
154
|
}
|
|
148
155
|
|
|
149
|
-
const elementType = current.shape
|
|
150
|
-
|
|
151
|
-
if (!elementType) {
|
|
152
|
-
analysisReport.addIssue(
|
|
153
|
-
"INVALID_DATA_ACCESS",
|
|
154
|
-
`Cannot access property '${prop}' on unknown array element type`,
|
|
155
|
-
getNodeRange(node),
|
|
156
|
-
validationContext.getSnapshot(),
|
|
157
|
-
getAvailableArrayMembers()
|
|
158
|
-
);
|
|
159
|
-
return;
|
|
160
|
-
}
|
|
156
|
+
const elementType: PropertySchema = current.shape;
|
|
161
157
|
|
|
162
|
-
if (elementType.type === "object"
|
|
163
|
-
const next = elementType.shape[prop];
|
|
158
|
+
if (elementType.type === "object") {
|
|
159
|
+
const next: PropertySchema | undefined = elementType.shape[prop];
|
|
164
160
|
|
|
165
161
|
if (!next) {
|
|
166
162
|
const paths = path.slice(0, i + 1);
|
|
@@ -214,7 +210,7 @@ export function validateSchemaPath(
|
|
|
214
210
|
|
|
215
211
|
analysisReport.addIssue(
|
|
216
212
|
"INVALID_DATA_ACCESS",
|
|
217
|
-
`Cannot access property '${prop}' on ${elementType.type
|
|
213
|
+
`Cannot access property '${prop}' on ${elementType.type} type array element`,
|
|
218
214
|
getNodeRange(node),
|
|
219
215
|
validationContext.getSnapshot()
|
|
220
216
|
);
|
|
@@ -237,10 +233,10 @@ export function validateSchemaPath(
|
|
|
237
233
|
return;
|
|
238
234
|
}
|
|
239
235
|
|
|
240
|
-
if (current.type !== "object"
|
|
236
|
+
if (current.type !== "object") {
|
|
241
237
|
analysisReport.addIssue(
|
|
242
238
|
"INVALID_DATA_ACCESS",
|
|
243
|
-
`Cannot access property '${prop}' on ${current.type
|
|
239
|
+
`Cannot access property '${prop}' on ${current.type} type`,
|
|
244
240
|
getNodeRange(node),
|
|
245
241
|
validationContext.getSnapshot()
|
|
246
242
|
);
|
|
@@ -260,6 +256,7 @@ export function validateSchemaPath(
|
|
|
260
256
|
validationContext.getSnapshot(),
|
|
261
257
|
availableProps
|
|
262
258
|
);
|
|
259
|
+
return;
|
|
263
260
|
}
|
|
264
261
|
}
|
|
265
262
|
}
|
|
@@ -268,8 +265,8 @@ function getElementAccessFlags(node: MemberExpression, pathLength: number): Arra
|
|
|
268
265
|
const flags = Array(pathLength).fill(false);
|
|
269
266
|
const segments: Array<{ property: Expression | PrivateIdentifier; computed: boolean }> = [];
|
|
270
267
|
|
|
271
|
-
let current: Expression | Super
|
|
272
|
-
while (current
|
|
268
|
+
let current: Expression | Super = node;
|
|
269
|
+
while (current.type === "MemberExpression") {
|
|
273
270
|
segments.unshift({ property: current.property, computed: current.computed });
|
|
274
271
|
current = current.object;
|
|
275
272
|
}
|
|
@@ -278,14 +275,14 @@ function getElementAccessFlags(node: MemberExpression, pathLength: number): Arra
|
|
|
278
275
|
let lastWasComputedNumeric = false;
|
|
279
276
|
|
|
280
277
|
for (const segment of segments) {
|
|
281
|
-
if (segment.property
|
|
278
|
+
if (segment.property.type === "Identifier") {
|
|
282
279
|
schemaIndex += 1;
|
|
283
280
|
if (schemaIndex < pathLength) {
|
|
284
281
|
flags[schemaIndex] = lastWasComputedNumeric;
|
|
285
282
|
}
|
|
286
283
|
}
|
|
287
284
|
|
|
288
|
-
if (segment.computed && segment.property
|
|
285
|
+
if (segment.computed && segment.property.type === "Literal" && typeof segment.property.value === "number") {
|
|
289
286
|
lastWasComputedNumeric = true;
|
|
290
287
|
} else {
|
|
291
288
|
lastWasComputedNumeric = false;
|
|
@@ -11,7 +11,7 @@ export function analyzeElementAttributes(ast: Program, schema: Schema, validatio
|
|
|
11
11
|
|
|
12
12
|
const localFunctionNames = new Set<string>();
|
|
13
13
|
for (const stmt of ast.body) {
|
|
14
|
-
if (stmt.type === "FunctionDeclaration"
|
|
14
|
+
if (stmt.type === "FunctionDeclaration") {
|
|
15
15
|
localFunctionNames.add(stmt.id.name);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -136,7 +136,7 @@ function getAttributeLiteralValue(attribute: JSXAttribute): string | number | bo
|
|
|
136
136
|
value?: unknown;
|
|
137
137
|
};
|
|
138
138
|
|
|
139
|
-
if (expression
|
|
139
|
+
if (expression.type === "Literal") {
|
|
140
140
|
return expression.value as string | number | boolean | null | undefined;
|
|
141
141
|
}
|
|
142
142
|
}
|
|
@@ -11,7 +11,7 @@ export function analyzeElementChildren(ast: Program, schema: Schema, validationC
|
|
|
11
11
|
|
|
12
12
|
const localFunctionNames = new Set<string>();
|
|
13
13
|
for (const stmt of ast.body) {
|
|
14
|
-
if (stmt.type === "FunctionDeclaration"
|
|
14
|
+
if (stmt.type === "FunctionDeclaration") {
|
|
15
15
|
localFunctionNames.add(stmt.id.name);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -10,7 +10,7 @@ export function analyzeElementTags(ast: Program, schema: Schema, validationConte
|
|
|
10
10
|
|
|
11
11
|
const localFunctionNames = new Set<string>();
|
|
12
12
|
for (const stmt of ast.body) {
|
|
13
|
-
if (stmt.type === "FunctionDeclaration"
|
|
13
|
+
if (stmt.type === "FunctionDeclaration") {
|
|
14
14
|
localFunctionNames.add(stmt.id.name);
|
|
15
15
|
}
|
|
16
16
|
}
|
|
@@ -11,7 +11,7 @@ export function analyzeCallExpressions(ast: Program, schema: Schema, validationC
|
|
|
11
11
|
|
|
12
12
|
const localFunctionNames = new Set<string>();
|
|
13
13
|
for (const stmt of ast.body) {
|
|
14
|
-
if (stmt.type === "FunctionDeclaration"
|
|
14
|
+
if (stmt.type === "FunctionDeclaration") {
|
|
15
15
|
localFunctionNames.add(stmt.id.name);
|
|
16
16
|
}
|
|
17
17
|
}
|
|
@@ -108,13 +108,11 @@ function getFunctionLocalConsts(ast: Program): Map<FunctionDeclaration, Set<stri
|
|
|
108
108
|
FunctionDeclaration(node) {
|
|
109
109
|
const names = new Set<string>();
|
|
110
110
|
const body = (node as FunctionDeclaration).body;
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
names.add(decl.id.name);
|
|
117
|
-
}
|
|
111
|
+
for (const stmt of body.body) {
|
|
112
|
+
if (stmt.type === "VariableDeclaration" && stmt.kind === "const") {
|
|
113
|
+
for (const decl of stmt.declarations) {
|
|
114
|
+
if (decl.id.type === "Identifier") {
|
|
115
|
+
names.add(decl.id.name);
|
|
118
116
|
}
|
|
119
117
|
}
|
|
120
118
|
}
|
|
@@ -174,7 +172,7 @@ function getTopLevelConstNames(ast: Program): Array<string> {
|
|
|
174
172
|
function getTopLevelFunctionNames(ast: Program): Array<string> {
|
|
175
173
|
const names: Array<string> = [];
|
|
176
174
|
for (const stmt of ast.body) {
|
|
177
|
-
if (stmt.type === "FunctionDeclaration"
|
|
175
|
+
if (stmt.type === "FunctionDeclaration") {
|
|
178
176
|
names.push(stmt.id.name);
|
|
179
177
|
}
|
|
180
178
|
}
|
package/src/analyze/utils.ts
CHANGED
|
@@ -48,12 +48,11 @@ export function getAttributeSimilarityMatchers(invalid: string, available: Array
|
|
|
48
48
|
export function getBestSimilarityMatcherSuggestion(invalid: string, available: Array<string>): string | null {
|
|
49
49
|
const similarityMatchers = getElementSimilarityMatchers(invalid, available);
|
|
50
50
|
|
|
51
|
-
|
|
51
|
+
const best = similarityMatchers[0];
|
|
52
|
+
if (best === undefined) {
|
|
52
53
|
return null;
|
|
53
54
|
}
|
|
54
55
|
|
|
55
|
-
const best = similarityMatchers[0];
|
|
56
|
-
|
|
57
56
|
if (best.confidence > 0.6) {
|
|
58
57
|
return best.suggestion;
|
|
59
58
|
}
|
|
@@ -102,23 +101,25 @@ function levenshteinDistance(x: string, y: string): number {
|
|
|
102
101
|
|
|
103
102
|
const matrix: Array<Array<number>> = [];
|
|
104
103
|
|
|
104
|
+
// Every indexed row and cell below is initialized before it is read.
|
|
105
|
+
|
|
105
106
|
for (let i = 0; i <= y.length; i++) {
|
|
106
107
|
matrix[i] = [i];
|
|
107
108
|
}
|
|
108
109
|
|
|
109
110
|
for (let j = 0; j <= x.length; j++) {
|
|
110
|
-
matrix[0][j] = j;
|
|
111
|
+
matrix[0]![j] = j;
|
|
111
112
|
}
|
|
112
113
|
|
|
113
114
|
for (let i = 1; i <= y.length; i++) {
|
|
114
115
|
for (let j = 1; j <= x.length; j++) {
|
|
115
116
|
if (y.charAt(i - 1) === x.charAt(j - 1)) {
|
|
116
|
-
matrix[i][j] = matrix[i - 1][j - 1]
|
|
117
|
+
matrix[i]![j] = matrix[i - 1]![j - 1]!;
|
|
117
118
|
} else {
|
|
118
|
-
matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, matrix[i][j - 1] + 1, matrix[i - 1][j] + 1);
|
|
119
|
+
matrix[i]![j] = Math.min(matrix[i - 1]![j - 1]! + 1, matrix[i]![j - 1]! + 1, matrix[i - 1]![j]! + 1);
|
|
119
120
|
}
|
|
120
121
|
}
|
|
121
122
|
}
|
|
122
123
|
|
|
123
|
-
return matrix[y.length][x.length]
|
|
124
|
+
return matrix[y.length]![x.length]!;
|
|
124
125
|
}
|
package/src/builtins.ts
CHANGED
|
@@ -1083,7 +1083,7 @@ export function getBuiltins(): Record<string, BuiltinSchema> {
|
|
|
1083
1083
|
|
|
1084
1084
|
export function getBuiltinGlobals(): Array<string> {
|
|
1085
1085
|
// oxlint-disable-next-line typescript/no-unnecessary-boolean-literal-compare
|
|
1086
|
-
return Object.keys(BUILTINS).filter((name) => BUILTINS[name]
|
|
1086
|
+
return Object.keys(BUILTINS).filter((name) => BUILTINS[name]?.global === true);
|
|
1087
1087
|
}
|
|
1088
1088
|
|
|
1089
1089
|
export function isAllowedOnArray(prop: string): boolean {
|
|
@@ -36,26 +36,23 @@ function generateNestedPropertyJSDoc(propertyName: string, propertySchema: Prope
|
|
|
36
36
|
comments.push(desc);
|
|
37
37
|
}
|
|
38
38
|
|
|
39
|
-
|
|
40
|
-
if (propertySchema.type === "object" && propertySchema.shape) {
|
|
39
|
+
if (propertySchema.type === "object") {
|
|
41
40
|
comments.push("");
|
|
42
41
|
Object.entries(propertySchema.shape).forEach(([key, value]) => {
|
|
43
42
|
if (value.description) {
|
|
44
43
|
comments.push(`@property ${key} ${value.description}`);
|
|
45
|
-
hasNestedProperties = true;
|
|
46
44
|
}
|
|
47
45
|
});
|
|
48
|
-
} else if (propertySchema.type === "array" && propertySchema.shape.type === "object"
|
|
46
|
+
} else if (propertySchema.type === "array" && propertySchema.shape.type === "object") {
|
|
49
47
|
comments.push("");
|
|
50
48
|
Object.entries(propertySchema.shape.shape).forEach(([key, value]) => {
|
|
51
49
|
if (value.description) {
|
|
52
50
|
comments.push(`@property ${key} ${value.description}`);
|
|
53
|
-
hasNestedProperties = true;
|
|
54
51
|
}
|
|
55
52
|
});
|
|
56
53
|
}
|
|
57
54
|
|
|
58
|
-
if (comments.length === 1
|
|
55
|
+
if (comments.length === 1) {
|
|
59
56
|
return `${indent}/** ${comments[0]} */\n`;
|
|
60
57
|
}
|
|
61
58
|
|
|
@@ -7,7 +7,7 @@ export function declareFunctionTypes(schema: Schema): string {
|
|
|
7
7
|
if (schema.functions) {
|
|
8
8
|
Object.entries(schema.functions).forEach(([funcName, funcSchema]) => {
|
|
9
9
|
const args = funcSchema.args ? funcSchema.args.map((arg) => `${arg.name}: ${mapSchemaTypeToTypeScript(arg.property)}`).join(", ") : "";
|
|
10
|
-
const ret =
|
|
10
|
+
const ret = mapSchemaTypeToTypeScript(funcSchema.ret);
|
|
11
11
|
output += `function ${funcName}(${args}): ${ret};\n`;
|
|
12
12
|
});
|
|
13
13
|
}
|