Commit 8804d2f
committed
Fix template-require-input-label: import-aware <Input>/<Textarea> detection in strict mode
The original fix gated the mustache branch (GlimmerMustacheStatement)
with isStrictMode, because in GJS/GTS {{input}}/{{textarea}} are
user-imported JS bindings, not the classic Ember helpers.
The element branch still matched <Input>/<Textarea> by bare tag name,
which in GJS/GTS:
- false-positives on user-authored <Input> (not the framework one),
- false-negatives on renamed framework imports such as
`import { Input as Field } from '@ember/component'; <Field />`.
Make the element branch import-aware in strict mode (mirroring the
pattern in template-no-builtin-form-components):
- Track ImportDeclaration specifiers from '@ember/component' for
Input and Textarea (only in .gjs/.gts).
- In strict mode, only treat a tag as the built-in if it resolves
to a tracked import (supports renames).
- In HBS, keep the existing bare-name match.
- Remove the blanket `if (isStrictMode && (Input|Textarea)) return`
short-circuit — we now want to flag tracked imports, not skip them.
The mustache branch remains strict-mode-gated as before.1 parent b705850 commit 8804d2f
2 files changed
Lines changed: 65 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
84 | 84 | | |
85 | 85 | | |
86 | 86 | | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
87 | 91 | | |
88 | 92 | | |
89 | 93 | | |
| |||
104 | 108 | | |
105 | 109 | | |
106 | 110 | | |
107 | | - | |
108 | | - | |
109 | | - | |
110 | | - | |
| 111 | + | |
| 112 | + | |
111 | 113 | | |
112 | 114 | | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
113 | 126 | | |
114 | | - | |
115 | | - | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
116 | 143 | | |
117 | 144 | | |
118 | 145 | | |
| |||
164 | 191 | | |
165 | 192 | | |
166 | 193 | | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
167 | 201 | | |
168 | 202 | | |
169 | 203 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
| 41 | + | |
| 42 | + | |
41 | 43 | | |
42 | 44 | | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
43 | 54 | | |
44 | 55 | | |
45 | 56 | | |
| |||
125 | 136 | | |
126 | 137 | | |
127 | 138 | | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
128 | 153 | | |
129 | 154 | | |
130 | 155 | | |
| |||
0 commit comments