eslint-plugin-templ 0.0.1 → 0.0.3
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/README.md +2 -2
- package/dist/configs/recommended.d.ts +57 -0
- package/dist/configs/recommended.d.ts.map +1 -0
- package/dist/configs/recommended.js +49 -0
- package/dist/configs/recommended.js.map +1 -0
- package/dist/html-source-code.d.ts +65 -39
- package/dist/html-source-code.d.ts.map +1 -1
- package/dist/html-source-code.js +112 -60
- package/dist/html-source-code.js.map +1 -1
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/parse-for-eslint.d.ts.map +1 -1
- package/dist/parse-for-eslint.js +163 -25
- package/dist/parse-for-eslint.js.map +1 -1
- package/dist/run-templ-ast-to-json-binary.js +5 -3
- package/dist/run-templ-ast-to-json-binary.js.map +1 -1
- package/dist/templ-ast-to-eslint-ast.d.ts +16 -1
- package/dist/templ-ast-to-eslint-ast.d.ts.map +1 -1
- package/dist/templ-ast-to-eslint-ast.js +515 -117
- package/dist/templ-ast-to-eslint-ast.js.map +1 -1
- package/dist/templ-ast.d.ts +818 -230
- package/dist/templ-ast.d.ts.map +1 -1
- package/dist/templ-ast.js +198 -73
- package/dist/templ-ast.js.map +1 -1
- package/dist/templ-language.d.ts +16 -3
- package/dist/templ-language.d.ts.map +1 -1
- package/dist/templ-language.js +9 -3
- package/dist/templ-language.js.map +1 -1
- package/package.json +27 -23
package/dist/templ-ast.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templ-ast.d.ts","sourceRoot":"","sources":["../src/templ-ast.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"templ-ast.d.ts","sourceRoot":"","sources":["../src/templ-ast.ts"],"names":[],"mappings":"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"}
|
package/dist/templ-ast.js
CHANGED
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
* These schemas define the runtime validation and TypeScript types for the JSON
|
|
5
5
|
* output from templ-ast-to-json. They serve as the source of truth for the
|
|
6
6
|
* "from" types in the conversion to ESLint AST.
|
|
7
|
+
*
|
|
8
|
+
* Every type that sits behind a Go interface has a `type` discriminator field
|
|
9
|
+
* set to the Go struct name (e.g. "Element", "ConstantAttribute"). This is
|
|
10
|
+
* injected at serialization time via reflection in the Go code.
|
|
7
11
|
*/
|
|
8
12
|
import { z } from "zod";
|
|
9
13
|
/**
|
|
@@ -23,6 +27,7 @@ export function validateTemplAST(value) {
|
|
|
23
27
|
throw new Error(`Invalid templ AST structure:\n${errorMessages.join("\n")}`);
|
|
24
28
|
}
|
|
25
29
|
}
|
|
30
|
+
// === Primitive types (concrete, not behind interfaces) ===
|
|
26
31
|
export const TemplPositionSchema = z.object({
|
|
27
32
|
Index: z.number(),
|
|
28
33
|
Line: z.number(),
|
|
@@ -36,144 +41,240 @@ export const TemplExpressionSchema = z.object({
|
|
|
36
41
|
Value: z.string(),
|
|
37
42
|
Range: TemplRangeSchema,
|
|
38
43
|
});
|
|
39
|
-
// Attribute
|
|
40
|
-
export const
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
// === Attribute Key (behind Go AttributeKey interface) ===
|
|
45
|
+
export const TemplConstantAttributeKeySchema = z.object({
|
|
46
|
+
type: z.literal("ConstantAttributeKey"),
|
|
47
|
+
Name: z.string(),
|
|
48
|
+
NameRange: TemplRangeSchema,
|
|
49
|
+
});
|
|
50
|
+
export const TemplExpressionAttributeKeySchema = z.object({
|
|
51
|
+
type: z.literal("ExpressionAttributeKey"),
|
|
52
|
+
Expression: TemplExpressionSchema,
|
|
48
53
|
});
|
|
49
|
-
export const
|
|
54
|
+
export const TemplAttributeKeySchema = z.discriminatedUnion("type", [
|
|
55
|
+
TemplConstantAttributeKeySchema,
|
|
56
|
+
TemplExpressionAttributeKeySchema,
|
|
57
|
+
]);
|
|
58
|
+
// === Attribute types (behind Go Attribute interface) ===
|
|
59
|
+
const TemplBooleanAttributeSchema = z.object({
|
|
60
|
+
type: z.literal("BoolConstantAttribute"),
|
|
61
|
+
Key: TemplAttributeKeySchema,
|
|
50
62
|
Range: TemplRangeSchema,
|
|
63
|
+
});
|
|
64
|
+
const TemplValueAttributeSchema = z.object({
|
|
65
|
+
type: z.literal("ConstantAttribute"),
|
|
66
|
+
Key: TemplAttributeKeySchema,
|
|
51
67
|
Value: z.string(),
|
|
52
|
-
|
|
68
|
+
SingleQuote: z.boolean(),
|
|
69
|
+
ValueRange: TemplRangeSchema,
|
|
70
|
+
Range: TemplRangeSchema,
|
|
53
71
|
});
|
|
54
|
-
|
|
72
|
+
const TemplExpressionAttributeNodeSchema = z.object({
|
|
73
|
+
type: z.literal("ExpressionAttribute"),
|
|
74
|
+
Key: TemplAttributeKeySchema,
|
|
55
75
|
Expression: TemplExpressionSchema,
|
|
56
|
-
|
|
76
|
+
SingleQuote: z.boolean().optional(),
|
|
77
|
+
AttributeStartRange: TemplRangeSchema,
|
|
78
|
+
Range: TemplRangeSchema,
|
|
57
79
|
});
|
|
58
|
-
|
|
80
|
+
const TemplBooleanExpressionAttributeSchema = z.object({
|
|
81
|
+
type: z.literal("BoolExpressionAttribute"),
|
|
82
|
+
Key: TemplAttributeKeySchema,
|
|
83
|
+
Expression: TemplExpressionSchema,
|
|
84
|
+
Range: TemplRangeSchema,
|
|
85
|
+
});
|
|
86
|
+
const TemplSpreadAttributesSchema = z.object({
|
|
87
|
+
type: z.literal("SpreadAttributes"),
|
|
59
88
|
Expression: TemplExpressionSchema,
|
|
60
|
-
Children: z.null(),
|
|
61
89
|
Range: TemplRangeSchema,
|
|
62
90
|
});
|
|
91
|
+
export const TemplConditionalAttributeSchema = z.object({
|
|
92
|
+
type: z.literal("ConditionalAttribute"),
|
|
93
|
+
Expression: TemplExpressionSchema,
|
|
94
|
+
get Then() {
|
|
95
|
+
return z.array(TemplAttributeSchema);
|
|
96
|
+
},
|
|
97
|
+
get Else() {
|
|
98
|
+
return z.array(TemplAttributeSchema).nullable();
|
|
99
|
+
},
|
|
100
|
+
Range: TemplRangeSchema,
|
|
101
|
+
});
|
|
102
|
+
export const TemplAttributeSchema = z.discriminatedUnion("type", [
|
|
103
|
+
TemplBooleanAttributeSchema,
|
|
104
|
+
TemplValueAttributeSchema,
|
|
105
|
+
TemplExpressionAttributeNodeSchema,
|
|
106
|
+
TemplBooleanExpressionAttributeSchema,
|
|
107
|
+
TemplSpreadAttributesSchema,
|
|
108
|
+
TemplConditionalAttributeSchema,
|
|
109
|
+
]);
|
|
110
|
+
// === Base schemas for types used in both interface and concrete contexts ===
|
|
111
|
+
// These lack the `type` discriminator since they appear as concrete struct
|
|
112
|
+
// fields (e.g. ExpressionCSSProperty.Value is *StringExpression, not Node).
|
|
113
|
+
const StringExpressionBaseSchema = z.object({
|
|
114
|
+
Expression: TemplExpressionSchema,
|
|
115
|
+
TrailingSpace: z.string(),
|
|
116
|
+
});
|
|
117
|
+
const GoCodeBaseSchema = z.object({
|
|
118
|
+
Expression: TemplExpressionSchema,
|
|
119
|
+
TrailingSpace: z.string(),
|
|
120
|
+
Multiline: z.boolean(),
|
|
121
|
+
});
|
|
122
|
+
// === Child node schemas (behind Go Node interface) ===
|
|
123
|
+
export const TemplStringExpressionSchema = StringExpressionBaseSchema.extend({
|
|
124
|
+
type: z.literal("StringExpression"),
|
|
125
|
+
});
|
|
63
126
|
export const TemplWhitespaceSchema = z.object({
|
|
127
|
+
type: z.literal("Whitespace"),
|
|
128
|
+
Range: TemplRangeSchema,
|
|
64
129
|
Value: z.string(),
|
|
65
130
|
});
|
|
66
131
|
export const TemplTextSchema = z.object({
|
|
132
|
+
type: z.literal("Text"),
|
|
67
133
|
Range: TemplRangeSchema,
|
|
68
134
|
Value: z.string(),
|
|
69
135
|
TrailingSpace: z.string(),
|
|
70
136
|
});
|
|
137
|
+
export const TemplGoCodeSchema = GoCodeBaseSchema.extend({
|
|
138
|
+
type: z.literal("GoCode"),
|
|
139
|
+
});
|
|
140
|
+
export const TemplCallExpressionSchema = z.object({
|
|
141
|
+
type: z.literal("CallTemplateExpression"),
|
|
142
|
+
Expression: TemplExpressionSchema,
|
|
143
|
+
Range: TemplRangeSchema,
|
|
144
|
+
});
|
|
71
145
|
export const TemplDocTypeSchema = z.object({
|
|
146
|
+
type: z.literal("DocType"),
|
|
147
|
+
Range: TemplRangeSchema,
|
|
72
148
|
Value: z.string(),
|
|
149
|
+
OpenRange: TemplRangeSchema,
|
|
150
|
+
ValueRange: TemplRangeSchema,
|
|
151
|
+
CloseRange: TemplRangeSchema,
|
|
73
152
|
});
|
|
74
153
|
export const TemplHTMLCommentSchema = z.object({
|
|
154
|
+
type: z.literal("HTMLComment"),
|
|
75
155
|
Contents: z.string(),
|
|
76
156
|
Range: TemplRangeSchema,
|
|
77
157
|
});
|
|
78
158
|
export const TemplGoCommentSchema = z.object({
|
|
159
|
+
type: z.literal("GoComment"),
|
|
79
160
|
Contents: z.string(),
|
|
80
161
|
Multiline: z.boolean(),
|
|
81
162
|
Range: TemplRangeSchema,
|
|
82
163
|
});
|
|
83
|
-
export const
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
Multiline: z.boolean(),
|
|
164
|
+
export const TemplChildrenExpressionSchema = z.object({
|
|
165
|
+
type: z.literal("ChildrenExpression"),
|
|
166
|
+
Range: TemplRangeSchema,
|
|
87
167
|
});
|
|
88
|
-
export const
|
|
168
|
+
export const TemplFallthroughSchema = z.object({
|
|
169
|
+
type: z.literal("Fallthrough"),
|
|
170
|
+
Range: TemplRangeSchema,
|
|
171
|
+
});
|
|
172
|
+
// === CSS Property (behind Go CSSProperty interface) ===
|
|
89
173
|
export const TemplConstantCSSPropertySchema = z.object({
|
|
174
|
+
type: z.literal("ConstantCSSProperty"),
|
|
90
175
|
Name: z.string(),
|
|
91
176
|
Value: z.string(),
|
|
92
177
|
});
|
|
93
178
|
export const TemplExpressionCSSPropertySchema = z.object({
|
|
179
|
+
type: z.literal("ExpressionCSSProperty"),
|
|
94
180
|
Name: z.string(),
|
|
95
|
-
Value:
|
|
181
|
+
Value: StringExpressionBaseSchema,
|
|
96
182
|
});
|
|
97
|
-
export const TemplCSSPropertySchema = z.
|
|
183
|
+
export const TemplCSSPropertySchema = z.discriminatedUnion("type", [
|
|
98
184
|
TemplConstantCSSPropertySchema,
|
|
99
185
|
TemplExpressionCSSPropertySchema,
|
|
100
186
|
]);
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
Expression: TemplExpressionSchema,
|
|
105
|
-
Properties: z.array(TemplCSSPropertySchema),
|
|
106
|
-
});
|
|
107
|
-
export const TemplScriptTemplateSchema = z.object({
|
|
108
|
-
Range: TemplRangeSchema,
|
|
109
|
-
Name: TemplExpressionSchema,
|
|
110
|
-
Parameters: TemplExpressionSchema,
|
|
111
|
-
Value: z.string(),
|
|
112
|
-
});
|
|
113
|
-
export const TemplFileGoExpressionSchema = z.object({
|
|
114
|
-
Expression: TemplExpressionSchema,
|
|
115
|
-
BeforePackage: z.boolean(),
|
|
116
|
-
});
|
|
117
|
-
export const TemplElementNodeSchema = z.lazy(() => z.object({
|
|
187
|
+
// === Recursive child Zod schemas ===
|
|
188
|
+
export const TemplElementNodeSchema = z.object({
|
|
189
|
+
type: z.literal("Element"),
|
|
118
190
|
Name: z.string(),
|
|
119
191
|
Attributes: z.array(TemplAttributeSchema).nullable(),
|
|
120
192
|
IndentAttrs: z.boolean(),
|
|
121
|
-
Children
|
|
193
|
+
get Children() {
|
|
194
|
+
return z.array(TemplChildSchema).nullable();
|
|
195
|
+
},
|
|
122
196
|
IndentChildren: z.boolean(),
|
|
123
197
|
TrailingSpace: z.string(),
|
|
124
198
|
NameRange: TemplRangeSchema,
|
|
199
|
+
OpenTagRange: TemplRangeSchema,
|
|
125
200
|
Range: TemplRangeSchema,
|
|
126
|
-
|
|
127
|
-
|
|
201
|
+
CloseTagRange: TemplRangeSchema.nullable(),
|
|
202
|
+
SelfClosing: z.boolean(),
|
|
203
|
+
});
|
|
204
|
+
export const TemplElseIfExpressionSchema = z.object({
|
|
128
205
|
Expression: TemplExpressionSchema,
|
|
129
|
-
Then
|
|
206
|
+
get Then() {
|
|
207
|
+
return z.array(TemplChildSchema);
|
|
208
|
+
},
|
|
130
209
|
Range: TemplRangeSchema,
|
|
131
|
-
})
|
|
132
|
-
export const TemplIfExpressionSchema = z.
|
|
210
|
+
});
|
|
211
|
+
export const TemplIfExpressionSchema = z.object({
|
|
212
|
+
type: z.literal("IfExpression"),
|
|
133
213
|
Expression: TemplExpressionSchema,
|
|
134
|
-
Then
|
|
135
|
-
|
|
136
|
-
|
|
214
|
+
get Then() {
|
|
215
|
+
return z.array(TemplChildSchema);
|
|
216
|
+
},
|
|
217
|
+
get ElseIfs() {
|
|
218
|
+
return z.array(TemplElseIfExpressionSchema).nullable();
|
|
219
|
+
},
|
|
220
|
+
get Else() {
|
|
221
|
+
return z.array(TemplChildSchema).nullable();
|
|
222
|
+
},
|
|
137
223
|
Range: TemplRangeSchema,
|
|
138
|
-
})
|
|
139
|
-
export const TemplCaseExpressionSchema = z.
|
|
224
|
+
});
|
|
225
|
+
export const TemplCaseExpressionSchema = z.object({
|
|
140
226
|
Expression: TemplExpressionSchema,
|
|
141
|
-
Children
|
|
142
|
-
|
|
143
|
-
|
|
227
|
+
get Children() {
|
|
228
|
+
return z.array(TemplChildSchema);
|
|
229
|
+
},
|
|
230
|
+
});
|
|
231
|
+
export const TemplSwitchExpressionSchema = z.object({
|
|
232
|
+
type: z.literal("SwitchExpression"),
|
|
144
233
|
Expression: TemplExpressionSchema,
|
|
145
234
|
Cases: z.array(TemplCaseExpressionSchema),
|
|
146
235
|
Range: TemplRangeSchema,
|
|
147
|
-
})
|
|
148
|
-
export const TemplForExpressionSchema = z.
|
|
236
|
+
});
|
|
237
|
+
export const TemplForExpressionSchema = z.object({
|
|
238
|
+
type: z.literal("ForExpression"),
|
|
149
239
|
Expression: TemplExpressionSchema,
|
|
150
|
-
Children
|
|
240
|
+
get Children() {
|
|
241
|
+
return z.array(TemplChildSchema);
|
|
242
|
+
},
|
|
151
243
|
Range: TemplRangeSchema,
|
|
152
|
-
})
|
|
153
|
-
export const TemplElementExpressionSchema = z.
|
|
244
|
+
});
|
|
245
|
+
export const TemplElementExpressionSchema = z.object({
|
|
246
|
+
type: z.literal("TemplElementExpression"),
|
|
154
247
|
Expression: TemplExpressionSchema,
|
|
155
|
-
Children
|
|
248
|
+
get Children() {
|
|
249
|
+
return z.array(TemplChildSchema).nullable();
|
|
250
|
+
},
|
|
156
251
|
Range: TemplRangeSchema,
|
|
157
|
-
})
|
|
158
|
-
export const TemplScriptContentsSchema = z.
|
|
252
|
+
});
|
|
253
|
+
export const TemplScriptContentsSchema = z.object({
|
|
159
254
|
Value: z.string().nullable(),
|
|
160
|
-
GoCode:
|
|
255
|
+
GoCode: GoCodeBaseSchema.nullable(),
|
|
161
256
|
InsideStringLiteral: z.boolean(),
|
|
162
|
-
})
|
|
163
|
-
export const TemplScriptElementSchema = z.
|
|
257
|
+
});
|
|
258
|
+
export const TemplScriptElementSchema = z.object({
|
|
259
|
+
type: z.literal("ScriptElement"),
|
|
164
260
|
Attributes: z.array(TemplAttributeSchema).nullable(),
|
|
165
|
-
Contents: z.array(TemplScriptContentsSchema),
|
|
261
|
+
Contents: z.array(TemplScriptContentsSchema).nullable(),
|
|
262
|
+
OpenTagRange: TemplRangeSchema,
|
|
263
|
+
CloseTagRange: TemplRangeSchema,
|
|
166
264
|
Range: TemplRangeSchema,
|
|
167
|
-
})
|
|
168
|
-
export const TemplRawElementSchema = z.
|
|
265
|
+
});
|
|
266
|
+
export const TemplRawElementSchema = z.object({
|
|
267
|
+
type: z.literal("RawElement"),
|
|
169
268
|
Name: z.string(),
|
|
170
269
|
Attributes: z.array(TemplAttributeSchema).nullable(),
|
|
171
270
|
Contents: z.string(),
|
|
271
|
+
NameRange: TemplRangeSchema,
|
|
272
|
+
OpenTagRange: TemplRangeSchema,
|
|
273
|
+
CloseTagRange: TemplRangeSchema,
|
|
172
274
|
Range: TemplRangeSchema,
|
|
173
|
-
})
|
|
174
|
-
export const TemplChildSchema = z.
|
|
275
|
+
});
|
|
276
|
+
export const TemplChildSchema = z.discriminatedUnion("type", [
|
|
175
277
|
TemplStringExpressionSchema,
|
|
176
|
-
TemplGoExpressionSchema,
|
|
177
278
|
TemplGoCodeSchema,
|
|
178
279
|
TemplCallExpressionSchema,
|
|
179
280
|
TemplElementExpressionSchema,
|
|
@@ -186,18 +287,42 @@ export const TemplChildSchema = z.lazy(() => z.union([
|
|
|
186
287
|
TemplIfExpressionSchema,
|
|
187
288
|
TemplForExpressionSchema,
|
|
188
289
|
TemplSwitchExpressionSchema,
|
|
290
|
+
TemplFallthroughSchema,
|
|
189
291
|
TemplChildrenExpressionSchema,
|
|
190
292
|
TemplScriptElementSchema,
|
|
191
293
|
TemplRawElementSchema,
|
|
192
|
-
])
|
|
294
|
+
]);
|
|
295
|
+
// === File-level node schemas (behind Go TemplateFileNode interface) ===
|
|
296
|
+
export const TemplCSSTemplateSchema = z.object({
|
|
297
|
+
type: z.literal("CSSTemplate"),
|
|
298
|
+
Range: TemplRangeSchema,
|
|
299
|
+
Name: z.string(),
|
|
300
|
+
Expression: TemplExpressionSchema,
|
|
301
|
+
Properties: z.array(TemplCSSPropertySchema),
|
|
302
|
+
});
|
|
303
|
+
export const TemplScriptTemplateSchema = z.object({
|
|
304
|
+
type: z.literal("ScriptTemplate"),
|
|
305
|
+
Range: TemplRangeSchema,
|
|
306
|
+
Name: TemplExpressionSchema,
|
|
307
|
+
Parameters: TemplExpressionSchema,
|
|
308
|
+
Value: z.string(),
|
|
309
|
+
});
|
|
310
|
+
export const TemplFileGoExpressionSchema = z.object({
|
|
311
|
+
type: z.literal("TemplateFileGoExpression"),
|
|
312
|
+
Expression: TemplExpressionSchema,
|
|
313
|
+
BeforePackage: z.boolean(),
|
|
314
|
+
});
|
|
193
315
|
// HTMLTemplate (templ component definition)
|
|
194
316
|
export const TemplHTMLTemplateSchema = z.object({
|
|
317
|
+
type: z.literal("HTMLTemplate"),
|
|
195
318
|
Range: TemplRangeSchema,
|
|
196
319
|
Expression: TemplExpressionSchema,
|
|
197
|
-
Children
|
|
320
|
+
get Children() {
|
|
321
|
+
return z.array(TemplChildSchema);
|
|
322
|
+
},
|
|
198
323
|
});
|
|
199
324
|
// Top-level node can be HTMLTemplate, CSSTemplate, ScriptTemplate, or FileGoExpression
|
|
200
|
-
export const TemplFileNodeSchema = z.
|
|
325
|
+
export const TemplFileNodeSchema = z.discriminatedUnion("type", [
|
|
201
326
|
TemplHTMLTemplateSchema,
|
|
202
327
|
TemplCSSTemplateSchema,
|
|
203
328
|
TemplScriptTemplateSchema,
|
package/dist/templ-ast.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templ-ast.js","sourceRoot":"","sources":["../src/templ-ast.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"templ-ast.js","sourceRoot":"","sources":["../src/templ-ast.ts"],"names":[],"mappings":"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"}
|
package/dist/templ-language.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { File, Language, LanguageOptions, OkParseResult, ParseResult } from "@eslint/core";
|
|
2
|
-
import {
|
|
2
|
+
import { createHTMLSourceCode } from "./html-source-code.ts";
|
|
3
3
|
import type { AST } from "eslint";
|
|
4
4
|
export declare class TemplLanguage implements Language<{
|
|
5
|
-
Code:
|
|
5
|
+
Code: ReturnType<typeof createHTMLSourceCode>;
|
|
6
6
|
LangOptions: LanguageOptions;
|
|
7
7
|
RootNode: AST.Program;
|
|
8
8
|
Node: object;
|
|
@@ -19,6 +19,19 @@ export declare class TemplLanguage implements Language<{
|
|
|
19
19
|
* @param {File} file
|
|
20
20
|
* @param {OkParseResult<AST.Program>} parseResult
|
|
21
21
|
*/
|
|
22
|
-
createSourceCode(file: File, parseResult: OkParseResult<AST.Program>):
|
|
22
|
+
createSourceCode(file: File, parseResult: OkParseResult<AST.Program>): import("@eslint/plugin-kit").TextSourceCodeBase<import("@eslint/core").SourceCodeBaseTypeOptions & {
|
|
23
|
+
RootNode: object;
|
|
24
|
+
SyntaxElementWithLoc: object;
|
|
25
|
+
}> & {
|
|
26
|
+
getDisableDirectives(): {
|
|
27
|
+
problems: {
|
|
28
|
+
ruleId: null | string;
|
|
29
|
+
message: string;
|
|
30
|
+
loc: import("@eslint/plugin-kit").SourceLocation;
|
|
31
|
+
}[];
|
|
32
|
+
directives: import("@eslint/plugin-kit").Directive[];
|
|
33
|
+
};
|
|
34
|
+
getInlineConfigNodes(): import("@html-eslint/types").CommentContent[];
|
|
35
|
+
};
|
|
23
36
|
}
|
|
24
37
|
//# sourceMappingURL=templ-language.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templ-language.d.ts","sourceRoot":"","sources":["../src/templ-language.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACZ,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"templ-language.d.ts","sourceRoot":"","sources":["../src/templ-language.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,IAAI,EACJ,QAAQ,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACZ,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,oBAAoB,EAAe,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAGlC,qBAAa,aAAc,YAAW,QAAQ,CAAC;IAC7C,IAAI,EAAE,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC;IAC9C,WAAW,EAAE,eAAe,CAAC;IAC7B,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;IACA,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC;IACjB,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;;IAUtC,uBAAuB,IAAI,IAAI;IAE/B,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC;IAK3C;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC;;;;;;;;;;;;;;CAOrE"}
|
package/dist/templ-language.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createHTMLSourceCode, visitorKeys } from "./html-source-code.js";
|
|
2
2
|
import { parseForESLint } from "./parse-for-eslint.js";
|
|
3
3
|
export class TemplLanguage {
|
|
4
4
|
fileType;
|
|
@@ -11,7 +11,7 @@ export class TemplLanguage {
|
|
|
11
11
|
this.lineStart = 1;
|
|
12
12
|
this.columnStart = 0;
|
|
13
13
|
this.nodeTypeKey = "type";
|
|
14
|
-
this.visitorKeys = visitorKeys;
|
|
14
|
+
this.visitorKeys = cloneVisitorKeys(visitorKeys);
|
|
15
15
|
}
|
|
16
16
|
validateLanguageOptions() { }
|
|
17
17
|
parse(file) {
|
|
@@ -23,11 +23,17 @@ export class TemplLanguage {
|
|
|
23
23
|
* @param {OkParseResult<AST.Program>} parseResult
|
|
24
24
|
*/
|
|
25
25
|
createSourceCode(file, parseResult) {
|
|
26
|
-
return
|
|
26
|
+
return createHTMLSourceCode({
|
|
27
27
|
text: file.body,
|
|
28
28
|
ast: parseResult.ast,
|
|
29
29
|
comments: parseResult["comments"],
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
|
+
function cloneVisitorKeys(keys) {
|
|
34
|
+
return Object.fromEntries(Object.entries(keys).map(([nodeType, childKeys]) => [
|
|
35
|
+
nodeType,
|
|
36
|
+
[...childKeys],
|
|
37
|
+
]));
|
|
38
|
+
}
|
|
33
39
|
//# sourceMappingURL=templ-language.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"templ-language.js","sourceRoot":"","sources":["../src/templ-language.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"templ-language.js","sourceRoot":"","sources":["../src/templ-language.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAE1E,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,MAAM,OAAO,aAAa;IAMxB,QAAQ,CAAS;IACjB,SAAS,CAAQ;IACjB,WAAW,CAAQ;IACnB,WAAW,CAAS;IACpB,WAAW,CAA2B;IAEtC;QACE,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC;QACvB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC;QACrB,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,WAAW,GAAG,gBAAgB,CAAC,WAAW,CAAC,CAAC;IACnD,CAAC;IAED,uBAAuB,KAAU,CAAC;IAElC,KAAK,CAAC,IAAU;QACd,oEAAoE;QACpE,OAAO,cAAc,CAAC,IAAI,CAAC,IAAc,CAAC,CAAC;IAC7C,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,IAAU,EAAE,WAAuC;QAClE,OAAO,oBAAoB,CAAC;YAC1B,IAAI,EAAE,IAAI,CAAC,IAAc;YACzB,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,QAAQ,EAAE,WAAW,CAAC,UAAU,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;CACF;AAED,SAAS,gBAAgB,CACvB,IAAuC;IAEvC,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,EAAE,CAAC;QAClD,QAAQ;QACR,CAAC,GAAG,SAAS,CAAC;KACf,CAAC,CACH,CAAC;AACJ,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-templ",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.3",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=20.6.0"
|
|
6
6
|
},
|
|
@@ -43,40 +43,44 @@
|
|
|
43
43
|
"build:go": "./scripts/build-go",
|
|
44
44
|
"preversion": "npm run lint && npm test && npm run build:ts",
|
|
45
45
|
"version": "npm run build:go && ./scripts/sync-optional-deps.js",
|
|
46
|
-
"postversion": "git push origin HEAD --follow-tags",
|
|
47
46
|
"release": "./scripts/publish",
|
|
48
47
|
"lint": "eslint .",
|
|
49
48
|
"format": "prettier --write .",
|
|
50
|
-
"test": "node --test"
|
|
49
|
+
"test": "node --test",
|
|
50
|
+
"test:update-snapshots": "node --test --test-update-snapshots",
|
|
51
|
+
"typecheck": "tsc",
|
|
52
|
+
"update-templ": "./scripts/update-templ",
|
|
53
|
+
"sync-html-eslint-tests": "node ./scripts/sync-html-eslint-tests.js"
|
|
51
54
|
},
|
|
52
55
|
"devDependencies": {
|
|
53
|
-
"@eslint/core": "^
|
|
54
|
-
"@eslint/js": "^
|
|
55
|
-
"@eslint/plugin-kit": "^0.
|
|
56
|
-
"@html-eslint/eslint-plugin": "^0.
|
|
57
|
-
"@html-eslint/types": "^0.
|
|
58
|
-
"@types/node": "^24.
|
|
56
|
+
"@eslint/core": "^1.2.1",
|
|
57
|
+
"@eslint/js": "^10.0.1",
|
|
58
|
+
"@eslint/plugin-kit": "^0.7.1",
|
|
59
|
+
"@html-eslint/eslint-plugin": "^0.60.0",
|
|
60
|
+
"@html-eslint/types": "^0.60.0",
|
|
61
|
+
"@types/node": "^24.12.2",
|
|
59
62
|
"es-html-parser": "^0.3.1",
|
|
60
|
-
"eslint": "^
|
|
61
|
-
"eslint-plugin-eslint-plugin": "^7.
|
|
62
|
-
"eslint-plugin-n": "^17.
|
|
63
|
-
"globals": "^
|
|
64
|
-
"prettier": "^3.
|
|
65
|
-
"typescript": "^
|
|
66
|
-
"typescript-eslint": "^8.
|
|
63
|
+
"eslint": "^10.3.0",
|
|
64
|
+
"eslint-plugin-eslint-plugin": "^7.3.3",
|
|
65
|
+
"eslint-plugin-n": "^17.24.0",
|
|
66
|
+
"globals": "^17.6.0",
|
|
67
|
+
"prettier": "^3.8.3",
|
|
68
|
+
"typescript": "^6.0.3",
|
|
69
|
+
"typescript-eslint": "^8.59.2"
|
|
67
70
|
},
|
|
68
71
|
"peerDependencies": {
|
|
69
72
|
"eslint": ">=9.0.0"
|
|
70
73
|
},
|
|
71
74
|
"dependencies": {
|
|
72
|
-
"
|
|
75
|
+
"css-tree": "^3.1.0",
|
|
76
|
+
"zod": "^4.4.3"
|
|
73
77
|
},
|
|
74
78
|
"optionalDependencies": {
|
|
75
|
-
"eslint-plugin-templ-darwin-arm64": "0.0.
|
|
76
|
-
"eslint-plugin-templ-darwin-x64": "0.0.
|
|
77
|
-
"eslint-plugin-templ-linux-arm64": "0.0.
|
|
78
|
-
"eslint-plugin-templ-linux-x64": "0.0.
|
|
79
|
-
"eslint-plugin-templ-windows-arm64": "0.0.
|
|
80
|
-
"eslint-plugin-templ-windows-x64": "0.0.
|
|
79
|
+
"eslint-plugin-templ-darwin-arm64": "0.0.3",
|
|
80
|
+
"eslint-plugin-templ-darwin-x64": "0.0.3",
|
|
81
|
+
"eslint-plugin-templ-linux-arm64": "0.0.3",
|
|
82
|
+
"eslint-plugin-templ-linux-x64": "0.0.3",
|
|
83
|
+
"eslint-plugin-templ-windows-arm64": "0.0.3",
|
|
84
|
+
"eslint-plugin-templ-windows-x64": "0.0.3"
|
|
81
85
|
}
|
|
82
86
|
}
|