@nordcraft/search 1.0.52 → 1.0.54

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.
Files changed (830) hide show
  1. package/dist/problems.worker.js +3 -154
  2. package/dist/problems.worker.js.map +1 -1
  3. package/dist/rules/issues/actions/actionRules.index.js +14 -0
  4. package/dist/rules/issues/actions/actionRules.index.js.map +1 -0
  5. package/dist/rules/issues/actions/createActionNameRule.js.map +1 -0
  6. package/dist/rules/issues/actions/createActionNameRule.test.js +98 -0
  7. package/dist/rules/issues/actions/createActionNameRule.test.js.map +1 -0
  8. package/dist/rules/issues/actions/legacyActionRule.fix.js +142 -0
  9. package/dist/rules/issues/actions/legacyActionRule.fix.js.map +1 -0
  10. package/dist/rules/issues/actions/legacyActionRule.js +46 -0
  11. package/dist/rules/issues/actions/legacyActionRule.js.map +1 -0
  12. package/dist/rules/issues/actions/legacyActionRule.test.js +392 -0
  13. package/dist/rules/issues/actions/legacyActionRule.test.js.map +1 -0
  14. package/dist/rules/issues/actions/noReferenceProjectActionRule.js +44 -0
  15. package/dist/rules/issues/actions/noReferenceProjectActionRule.js.map +1 -0
  16. package/dist/rules/issues/actions/noReferenceProjectActionRule.test.js +151 -0
  17. package/dist/rules/issues/actions/noReferenceProjectActionRule.test.js.map +1 -0
  18. package/dist/rules/issues/actions/unknownProjectActionRule.js.map +1 -0
  19. package/dist/rules/issues/actions/unknownProjectActionRule.test.js +112 -0
  20. package/dist/rules/issues/actions/unknownProjectActionRule.test.js.map +1 -0
  21. package/dist/rules/issues/apis/apiRules.index.js +22 -0
  22. package/dist/rules/issues/apis/apiRules.index.js.map +1 -0
  23. package/dist/rules/issues/apis/invalidApiParserModeRule.js.map +1 -0
  24. package/dist/rules/issues/apis/invalidApiParserModeRule.test.js +83 -0
  25. package/dist/rules/issues/apis/invalidApiParserModeRule.test.js.map +1 -0
  26. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.js.map +1 -0
  27. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.test.js +73 -0
  28. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.test.js.map +1 -0
  29. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.js +30 -0
  30. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.js.map +1 -0
  31. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.test.js +125 -0
  32. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.test.js.map +1 -0
  33. package/dist/rules/issues/apis/legacyApiRule.js.map +1 -0
  34. package/dist/rules/issues/apis/legacyApiRule.test.js +90 -0
  35. package/dist/rules/issues/apis/legacyApiRule.test.js.map +1 -0
  36. package/dist/rules/issues/apis/noReferenceApiInputRule.js.map +1 -0
  37. package/dist/rules/issues/apis/noReferenceApiInputRule.test.js +147 -0
  38. package/dist/rules/issues/apis/noReferenceApiInputRule.test.js.map +1 -0
  39. package/dist/rules/issues/apis/noReferenceApiRule.js +40 -0
  40. package/dist/rules/issues/apis/noReferenceApiRule.js.map +1 -0
  41. package/dist/rules/issues/apis/noReferenceApiRule.test.js +216 -0
  42. package/dist/rules/issues/apis/noReferenceApiRule.test.js.map +1 -0
  43. package/dist/rules/issues/apis/noReferenceApiServiceRule.js +39 -0
  44. package/dist/rules/issues/apis/noReferenceApiServiceRule.js.map +1 -0
  45. package/dist/rules/issues/apis/noReferenceApiServiceRule.test.js +98 -0
  46. package/dist/rules/issues/apis/noReferenceApiServiceRule.test.js.map +1 -0
  47. package/dist/rules/issues/apis/unknownApiInputRule.js.map +1 -0
  48. package/dist/rules/issues/apis/unknownApiInputRule.test.js +79 -0
  49. package/dist/rules/issues/apis/unknownApiInputRule.test.js.map +1 -0
  50. package/dist/rules/issues/apis/unknownApiRule.js.map +1 -0
  51. package/dist/rules/issues/apis/unknownApiRule.test.js +149 -0
  52. package/dist/rules/issues/apis/unknownApiRule.test.js.map +1 -0
  53. package/dist/rules/issues/apis/unknownApiServiceRule.js +21 -0
  54. package/dist/rules/issues/apis/unknownApiServiceRule.js.map +1 -0
  55. package/dist/rules/issues/apis/unknownApiServiceRule.test.js +140 -0
  56. package/dist/rules/issues/apis/unknownApiServiceRule.test.js.map +1 -0
  57. package/dist/rules/issues/attributes/attributeRules.index.js +9 -0
  58. package/dist/rules/issues/attributes/attributeRules.index.js.map +1 -0
  59. package/dist/rules/issues/attributes/noReferenceAttributeRule.js +33 -0
  60. package/dist/rules/issues/attributes/noReferenceAttributeRule.js.map +1 -0
  61. package/dist/rules/issues/attributes/noReferenceAttributeRule.test.js +160 -0
  62. package/dist/rules/issues/attributes/noReferenceAttributeRule.test.js.map +1 -0
  63. package/dist/rules/issues/attributes/unknownAttributeRule.js.map +1 -0
  64. package/dist/rules/issues/attributes/unknownAttributeRule.test.js +86 -0
  65. package/dist/rules/issues/attributes/unknownAttributeRule.test.js.map +1 -0
  66. package/dist/rules/issues/attributes/unknownComponentAttributeRule.js +29 -0
  67. package/dist/rules/issues/attributes/unknownComponentAttributeRule.js.map +1 -0
  68. package/dist/rules/issues/attributes/unknownComponentAttributeRule.test.js +148 -0
  69. package/dist/rules/issues/attributes/unknownComponentAttributeRule.test.js.map +1 -0
  70. package/dist/rules/issues/components/componentRules.index.js +4 -0
  71. package/dist/rules/issues/components/componentRules.index.js.map +1 -0
  72. package/dist/rules/issues/components/noReferenceComponentRule.js +33 -0
  73. package/dist/rules/issues/components/noReferenceComponentRule.js.map +1 -0
  74. package/dist/rules/issues/components/noReferenceComponentRule.test.js +282 -0
  75. package/dist/rules/issues/components/noReferenceComponentRule.test.js.map +1 -0
  76. package/dist/rules/issues/components/unknownComponentRule.js.map +1 -0
  77. package/dist/rules/issues/components/unknownComponentRule.test.js +108 -0
  78. package/dist/rules/issues/components/unknownComponentRule.test.js.map +1 -0
  79. package/dist/rules/issues/context/contextRules.index.js +15 -0
  80. package/dist/rules/issues/context/contextRules.index.js.map +1 -0
  81. package/dist/rules/issues/context/noContextConsumersRule.js.map +1 -0
  82. package/dist/rules/issues/context/noContextConsumersRule.test.js +225 -0
  83. package/dist/rules/issues/context/noContextConsumersRule.test.js.map +1 -0
  84. package/dist/rules/issues/context/unknownContextFormulaRule.js.map +1 -0
  85. package/dist/rules/issues/context/unknownContextFormulaRule.test.js +87 -0
  86. package/dist/rules/issues/context/unknownContextFormulaRule.test.js.map +1 -0
  87. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js.map +1 -0
  88. package/dist/rules/issues/context/unknownContextProviderFormulaRule.test.js +166 -0
  89. package/dist/rules/issues/context/unknownContextProviderFormulaRule.test.js.map +1 -0
  90. package/dist/rules/issues/context/unknownContextProviderRule.js.map +1 -0
  91. package/dist/rules/issues/context/unknownContextProviderRule.test.js +73 -0
  92. package/dist/rules/issues/context/unknownContextProviderRule.test.js.map +1 -0
  93. package/dist/rules/issues/dom/createRequiredDirectChildRule.js.map +1 -0
  94. package/dist/rules/issues/dom/createRequiredDirectChildRule.test.js +114 -0
  95. package/dist/rules/issues/dom/createRequiredDirectChildRule.test.js.map +1 -0
  96. package/dist/rules/issues/dom/createRequiredDirectParentRule.js.map +1 -0
  97. package/dist/rules/issues/dom/createRequiredDirectParentRule.test.js +116 -0
  98. package/dist/rules/issues/dom/createRequiredDirectParentRule.test.js.map +1 -0
  99. package/dist/rules/issues/dom/createRequiredElementAttributeRule.js.map +1 -0
  100. package/dist/rules/issues/dom/createRequiredElementAttributeRule.test.js +148 -0
  101. package/dist/rules/issues/dom/createRequiredElementAttributeRule.test.js.map +1 -0
  102. package/dist/rules/issues/dom/createRequiredMetaTagRule.js.map +1 -0
  103. package/dist/rules/issues/dom/createRequiredMetaTagRule.test.js +71 -0
  104. package/dist/rules/issues/dom/createRequiredMetaTagRule.test.js.map +1 -0
  105. package/dist/rules/issues/dom/domRules.index.js +49 -0
  106. package/dist/rules/issues/dom/domRules.index.js.map +1 -0
  107. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js +56 -0
  108. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js.map +1 -0
  109. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.test.js +386 -0
  110. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.test.js.map +1 -0
  111. package/dist/rules/issues/dom/imageWithoutDimensionRule.js.map +1 -0
  112. package/dist/rules/issues/dom/imageWithoutDimensionRule.test.js +147 -0
  113. package/dist/rules/issues/dom/imageWithoutDimensionRule.test.js.map +1 -0
  114. package/dist/rules/issues/dom/nonEmptyVoidElementRule.js.map +1 -0
  115. package/dist/rules/issues/dom/nonEmptyVoidElementRule.test.js +76 -0
  116. package/dist/rules/issues/dom/nonEmptyVoidElementRule.test.js.map +1 -0
  117. package/dist/rules/issues/events/duplicateEventTriggerRule.js.map +1 -0
  118. package/dist/rules/issues/events/duplicateEventTriggerRule.test.js +92 -0
  119. package/dist/rules/issues/events/duplicateEventTriggerRule.test.js.map +1 -0
  120. package/dist/rules/issues/events/eventRules.index.js +11 -0
  121. package/dist/rules/issues/events/eventRules.index.js.map +1 -0
  122. package/dist/rules/issues/events/noReferenceEventRule.js +43 -0
  123. package/dist/rules/issues/events/noReferenceEventRule.js.map +1 -0
  124. package/dist/rules/issues/events/noReferenceEventRule.test.js +198 -0
  125. package/dist/rules/issues/events/noReferenceEventRule.test.js.map +1 -0
  126. package/dist/rules/issues/events/unknownEventRule.js.map +1 -0
  127. package/dist/rules/issues/events/unknownEventRule.test.js +231 -0
  128. package/dist/rules/issues/events/unknownEventRule.test.js.map +1 -0
  129. package/dist/rules/issues/events/unknownTriggerEventRule.js.map +1 -0
  130. package/dist/rules/issues/events/unknownTriggerEventRule.test.js +111 -0
  131. package/dist/rules/issues/events/unknownTriggerEventRule.test.js.map +1 -0
  132. package/dist/rules/issues/formulas/formulaRules.index.js +11 -0
  133. package/dist/rules/issues/formulas/formulaRules.index.js.map +1 -0
  134. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js +576 -0
  135. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js.map +1 -0
  136. package/dist/rules/issues/formulas/legacyFormulaRule.js.map +1 -0
  137. package/dist/rules/issues/formulas/legacyFormulaRule.test.js +542 -0
  138. package/dist/rules/issues/formulas/legacyFormulaRule.test.js.map +1 -0
  139. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.js +68 -0
  140. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.js.map +1 -0
  141. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.test.js +323 -0
  142. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.test.js.map +1 -0
  143. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.js +103 -0
  144. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.js.map +1 -0
  145. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.test.js +303 -0
  146. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.test.js.map +1 -0
  147. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.js.map +1 -0
  148. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.test.js +132 -0
  149. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.test.js.map +1 -0
  150. package/dist/rules/issues/formulas/unknownFormulaRule.js.map +1 -0
  151. package/dist/rules/issues/formulas/unknownFormulaRule.test.js +92 -0
  152. package/dist/rules/issues/formulas/unknownFormulaRule.test.js.map +1 -0
  153. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.js.map +1 -0
  154. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.test.js +103 -0
  155. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.test.js.map +1 -0
  156. package/dist/rules/issues/formulas/unknownProjectFormulaRule.js.map +1 -0
  157. package/dist/rules/issues/formulas/unknownProjectFormulaRule.test.js +117 -0
  158. package/dist/rules/issues/formulas/unknownProjectFormulaRule.test.js.map +1 -0
  159. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.js.map +1 -0
  160. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.test.js +133 -0
  161. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.test.js.map +1 -0
  162. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.js.map +1 -0
  163. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.test.js +133 -0
  164. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.test.js.map +1 -0
  165. package/dist/rules/issues/issueRules.index.js +33 -0
  166. package/dist/rules/issues/issueRules.index.js.map +1 -0
  167. package/dist/rules/issues/logic/logicRules.index.js +17 -0
  168. package/dist/rules/issues/logic/logicRules.index.js.map +1 -0
  169. package/dist/rules/issues/logic/noStaticNodeCondition.js +32 -0
  170. package/dist/rules/issues/logic/noStaticNodeCondition.js.map +1 -0
  171. package/dist/rules/issues/logic/noStaticNodeCondition.test.js +293 -0
  172. package/dist/rules/issues/logic/noStaticNodeCondition.test.js.map +1 -0
  173. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js +18 -0
  174. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js.map +1 -0
  175. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.test.js +95 -0
  176. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.test.js.map +1 -0
  177. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js +22 -0
  178. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js.map +1 -0
  179. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.test.js +148 -0
  180. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.test.js.map +1 -0
  181. package/dist/rules/issues/miscellaneous/miscRules.index.js +5 -0
  182. package/dist/rules/issues/miscellaneous/miscRules.index.js.map +1 -0
  183. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.js +24 -0
  184. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.js.map +1 -0
  185. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.test.js +218 -0
  186. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.test.js.map +1 -0
  187. package/dist/rules/issues/miscellaneous/requireExtensionRule.js.map +1 -0
  188. package/dist/rules/issues/miscellaneous/requireExtensionRule.test.js +68 -0
  189. package/dist/rules/issues/miscellaneous/requireExtensionRule.test.js.map +1 -0
  190. package/dist/rules/issues/miscellaneous/unknownCookieRule.js.map +1 -0
  191. package/dist/rules/issues/miscellaneous/unknownCookieRule.test.js +106 -0
  192. package/dist/rules/issues/miscellaneous/unknownCookieRule.test.js.map +1 -0
  193. package/dist/rules/issues/routing/duplicateRouteRule.js.map +1 -0
  194. package/dist/rules/issues/routing/duplicateRouteRule.test.js +138 -0
  195. package/dist/rules/issues/routing/duplicateRouteRule.test.js.map +1 -0
  196. package/dist/rules/issues/routing/duplicateUrlParameterRule.js.map +1 -0
  197. package/dist/rules/issues/routing/duplicateUrlParameterRule.test.js +127 -0
  198. package/dist/rules/issues/routing/duplicateUrlParameterRule.test.js.map +1 -0
  199. package/dist/rules/issues/routing/routingRules.index.js +11 -0
  200. package/dist/rules/issues/routing/routingRules.index.js.map +1 -0
  201. package/dist/rules/issues/routing/unknownSetUrlParameterRule.js.map +1 -0
  202. package/dist/rules/issues/routing/unknownSetUrlParameterRule.test.js +151 -0
  203. package/dist/rules/issues/routing/unknownSetUrlParameterRule.test.js.map +1 -0
  204. package/dist/rules/issues/routing/unknownSetUrlParametersRule.js.map +1 -0
  205. package/dist/rules/issues/routing/unknownSetUrlParametersRule.test.js +149 -0
  206. package/dist/rules/issues/routing/unknownSetUrlParametersRule.test.js.map +1 -0
  207. package/dist/rules/issues/routing/unknownUrlParameterRule.js.map +1 -0
  208. package/dist/rules/issues/routing/unknownUrlParameterRule.test.js +93 -0
  209. package/dist/rules/issues/routing/unknownUrlParameterRule.test.js.map +1 -0
  210. package/dist/rules/issues/slots/slotRules.index.js +4 -0
  211. package/dist/rules/issues/slots/slotRules.index.js.map +1 -0
  212. package/dist/rules/issues/slots/unknownClassnameRule.js +16 -0
  213. package/dist/rules/issues/slots/unknownClassnameRule.js.map +1 -0
  214. package/dist/rules/issues/slots/unknownClassnameRule.test.js +87 -0
  215. package/dist/rules/issues/slots/unknownClassnameRule.test.js.map +1 -0
  216. package/dist/rules/issues/slots/unknownComponentSlotRule.js.map +1 -0
  217. package/dist/rules/issues/slots/unknownComponentSlotRule.test.js +163 -0
  218. package/dist/rules/issues/slots/unknownComponentSlotRule.test.js.map +1 -0
  219. package/dist/rules/issues/style/invalidStyleSyntaxRule.js +28 -0
  220. package/dist/rules/issues/style/invalidStyleSyntaxRule.js.map +1 -0
  221. package/dist/rules/issues/style/invalidStyleSyntaxRule.test.js +286 -0
  222. package/dist/rules/issues/style/invalidStyleSyntaxRule.test.js.map +1 -0
  223. package/dist/rules/issues/style/styleRules.index.js +3 -0
  224. package/dist/rules/issues/style/styleRules.index.js.map +1 -0
  225. package/dist/rules/issues/variables/noReferenceVariableRule.js +26 -0
  226. package/dist/rules/issues/variables/noReferenceVariableRule.js.map +1 -0
  227. package/dist/rules/issues/variables/noReferenceVariableRule.test.js +166 -0
  228. package/dist/rules/issues/variables/noReferenceVariableRule.test.js.map +1 -0
  229. package/dist/rules/issues/variables/unknownVariableRule.js.map +1 -0
  230. package/dist/rules/issues/variables/unknownVariableRule.test.js +85 -0
  231. package/dist/rules/issues/variables/unknownVariableRule.test.js.map +1 -0
  232. package/dist/rules/issues/variables/unknownVariableSetterRule.js.map +1 -0
  233. package/dist/rules/issues/variables/unknownVariableSetterRule.test.js +99 -0
  234. package/dist/rules/issues/variables/unknownVariableSetterRule.test.js.map +1 -0
  235. package/dist/rules/issues/variables/variableRules.index.js +9 -0
  236. package/dist/rules/issues/variables/variableRules.index.js.map +1 -0
  237. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.js.map +1 -0
  238. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.test.js +100 -0
  239. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.test.js.map +1 -0
  240. package/dist/rules/issues/workflows/noPostNavigateAction.js.map +1 -0
  241. package/dist/rules/issues/workflows/noPostNavigateAction.test.js +548 -0
  242. package/dist/rules/issues/workflows/noPostNavigateAction.test.js.map +1 -0
  243. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.js.map +1 -0
  244. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.test.js +262 -0
  245. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.test.js.map +1 -0
  246. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js.map +1 -0
  247. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.test.js +138 -0
  248. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.test.js.map +1 -0
  249. package/dist/rules/issues/workflows/unknownContextWorkflowRule.js.map +1 -0
  250. package/dist/rules/issues/workflows/unknownContextWorkflowRule.test.js +86 -0
  251. package/dist/rules/issues/workflows/unknownContextWorkflowRule.test.js.map +1 -0
  252. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.js.map +1 -0
  253. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.test.js +467 -0
  254. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.test.js.map +1 -0
  255. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.js.map +1 -0
  256. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.test.js +99 -0
  257. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.test.js.map +1 -0
  258. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.js.map +1 -0
  259. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.test.js +110 -0
  260. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.test.js.map +1 -0
  261. package/dist/rules/issues/workflows/workflowRules.index.js +15 -0
  262. package/dist/rules/issues/workflows/workflowRules.index.js.map +1 -0
  263. package/dist/searchProject.js +39 -19
  264. package/dist/searchProject.js.map +1 -1
  265. package/package.json +2 -2
  266. package/src/problems.worker.ts +3 -161
  267. package/src/rules/issues/actions/actionRules.index.ts +14 -0
  268. package/src/rules/issues/actions/createActionNameRule.test.ts +101 -0
  269. package/src/rules/issues/actions/createActionNameRule.ts +38 -0
  270. package/src/rules/issues/actions/legacyActionRule.fix.ts +159 -0
  271. package/src/rules/issues/actions/legacyActionRule.test.ts +408 -0
  272. package/src/rules/issues/actions/legacyActionRule.ts +57 -0
  273. package/src/rules/issues/actions/noReferenceProjectActionRule.test.ts +164 -0
  274. package/src/rules/issues/actions/noReferenceProjectActionRule.ts +53 -0
  275. package/src/rules/issues/actions/unknownProjectActionRule.test.ts +118 -0
  276. package/src/rules/issues/actions/unknownProjectActionRule.ts +23 -0
  277. package/src/rules/issues/apis/apiRules.index.ts +22 -0
  278. package/src/rules/issues/apis/invalidApiParserModeRule.test.ts +90 -0
  279. package/src/rules/issues/apis/invalidApiParserModeRule.ts +26 -0
  280. package/src/rules/issues/apis/invalidApiProxyBodySettingRule.test.ts +80 -0
  281. package/src/rules/issues/apis/invalidApiProxyBodySettingRule.ts +25 -0
  282. package/src/rules/issues/apis/invalidApiProxyCookieSettingRule.test.ts +132 -0
  283. package/src/rules/issues/apis/invalidApiProxyCookieSettingRule.ts +37 -0
  284. package/src/rules/issues/apis/legacyApiRule.test.ts +97 -0
  285. package/src/rules/issues/apis/legacyApiRule.ts +16 -0
  286. package/src/rules/issues/apis/noReferenceApiInputRule.test.ts +160 -0
  287. package/src/rules/issues/apis/noReferenceApiInputRule.ts +42 -0
  288. package/src/rules/issues/apis/noReferenceApiRule.test.ts +231 -0
  289. package/src/rules/issues/apis/noReferenceApiRule.ts +49 -0
  290. package/src/rules/issues/apis/noReferenceApiServiceRule.test.ts +103 -0
  291. package/src/rules/issues/apis/noReferenceApiServiceRule.ts +43 -0
  292. package/src/rules/issues/apis/unknownApiInputRule.test.ts +86 -0
  293. package/src/rules/issues/apis/unknownApiInputRule.ts +33 -0
  294. package/src/rules/issues/apis/unknownApiRule.test.ts +160 -0
  295. package/src/rules/issues/apis/unknownApiRule.ts +31 -0
  296. package/src/rules/issues/apis/unknownApiServiceRule.test.ts +152 -0
  297. package/src/rules/issues/apis/unknownApiServiceRule.ts +33 -0
  298. package/src/rules/issues/attributes/attributeRules.index.ts +9 -0
  299. package/src/rules/issues/attributes/noReferenceAttributeRule.test.ts +173 -0
  300. package/src/rules/issues/attributes/noReferenceAttributeRule.ts +37 -0
  301. package/src/rules/issues/attributes/unknownAttributeRule.test.ts +93 -0
  302. package/src/rules/issues/attributes/unknownAttributeRule.ts +25 -0
  303. package/src/rules/issues/attributes/unknownComponentAttributeRule.test.ts +159 -0
  304. package/src/rules/issues/attributes/unknownComponentAttributeRule.ts +37 -0
  305. package/src/rules/issues/components/componentRules.index.ts +4 -0
  306. package/src/rules/issues/components/noReferenceComponentRule.test.ts +301 -0
  307. package/src/rules/issues/components/noReferenceComponentRule.ts +45 -0
  308. package/src/rules/issues/components/unknownComponentRule.test.ts +115 -0
  309. package/src/rules/issues/components/unknownComponentRule.ts +24 -0
  310. package/src/rules/issues/context/contextRules.index.ts +15 -0
  311. package/src/rules/issues/context/noContextConsumersRule.test.ts +240 -0
  312. package/src/rules/issues/context/noContextConsumersRule.ts +39 -0
  313. package/src/rules/issues/context/unknownContextFormulaRule.test.ts +94 -0
  314. package/src/rules/issues/context/unknownContextFormulaRule.ts +30 -0
  315. package/src/rules/issues/context/unknownContextProviderFormulaRule.test.ts +175 -0
  316. package/src/rules/issues/context/unknownContextProviderFormulaRule.ts +35 -0
  317. package/src/rules/issues/context/unknownContextProviderRule.test.ts +80 -0
  318. package/src/rules/issues/context/unknownContextProviderRule.ts +30 -0
  319. package/src/rules/issues/dom/createRequiredDirectChildRule.test.ts +120 -0
  320. package/src/rules/issues/dom/createRequiredDirectChildRule.ts +43 -0
  321. package/src/rules/issues/dom/createRequiredDirectParentRule.test.ts +125 -0
  322. package/src/rules/issues/dom/createRequiredDirectParentRule.ts +41 -0
  323. package/src/rules/issues/dom/createRequiredElementAttributeRule.test.ts +160 -0
  324. package/src/rules/issues/dom/createRequiredElementAttributeRule.ts +44 -0
  325. package/src/rules/issues/dom/createRequiredMetaTagRule.test.ts +77 -0
  326. package/src/rules/issues/dom/createRequiredMetaTagRule.ts +33 -0
  327. package/src/rules/issues/dom/domRules.index.ts +55 -0
  328. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.test.ts +401 -0
  329. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.ts +80 -0
  330. package/src/rules/issues/dom/imageWithoutDimensionRule.test.ts +162 -0
  331. package/src/rules/issues/dom/imageWithoutDimensionRule.ts +50 -0
  332. package/src/rules/issues/dom/nonEmptyVoidElementRule.test.ts +83 -0
  333. package/src/rules/issues/dom/nonEmptyVoidElementRule.ts +22 -0
  334. package/src/rules/issues/events/duplicateEventTriggerRule.test.ts +98 -0
  335. package/src/rules/issues/events/duplicateEventTriggerRule.ts +24 -0
  336. package/src/rules/issues/events/eventRules.index.ts +11 -0
  337. package/src/rules/issues/events/noReferenceEventRule.test.ts +206 -0
  338. package/src/rules/issues/events/noReferenceEventRule.ts +51 -0
  339. package/src/rules/issues/events/unknownEventRule.test.ts +238 -0
  340. package/src/rules/issues/events/unknownEventRule.ts +32 -0
  341. package/src/rules/issues/events/unknownTriggerEventRule.test.ts +118 -0
  342. package/src/rules/issues/events/unknownTriggerEventRule.ts +20 -0
  343. package/src/rules/issues/formulas/formulaRules.index.ts +11 -0
  344. package/src/rules/issues/formulas/legacyFormulaRule.fix.ts +660 -0
  345. package/src/rules/issues/formulas/legacyFormulaRule.test.ts +571 -0
  346. package/src/rules/issues/formulas/legacyFormulaRule.ts +184 -0
  347. package/src/rules/issues/formulas/noReferenceComponentFormulaRule.test.ts +344 -0
  348. package/src/rules/issues/formulas/noReferenceComponentFormulaRule.ts +92 -0
  349. package/src/rules/issues/formulas/noReferenceProjectFormulaRule.test.ts +326 -0
  350. package/src/rules/issues/formulas/noReferenceProjectFormulaRule.ts +125 -0
  351. package/src/rules/issues/formulas/unknownComponentFormulaInputRule.test.ts +141 -0
  352. package/src/rules/issues/formulas/unknownComponentFormulaInputRule.ts +38 -0
  353. package/src/rules/issues/formulas/unknownFormulaRule.test.ts +99 -0
  354. package/src/rules/issues/formulas/unknownFormulaRule.ts +21 -0
  355. package/src/rules/issues/formulas/unknownProjectFormulaInputRule.test.ts +112 -0
  356. package/src/rules/issues/formulas/unknownProjectFormulaInputRule.ts +32 -0
  357. package/src/rules/issues/formulas/unknownProjectFormulaRule.test.ts +126 -0
  358. package/src/rules/issues/formulas/unknownProjectFormulaRule.ts +23 -0
  359. package/src/rules/issues/formulas/unknownRepeatIndexFormulaRule.test.ts +139 -0
  360. package/src/rules/issues/formulas/unknownRepeatIndexFormulaRule.ts +46 -0
  361. package/src/rules/issues/formulas/unknownRepeatItemFormulaRule.test.ts +139 -0
  362. package/src/rules/issues/formulas/unknownRepeatItemFormulaRule.ts +46 -0
  363. package/src/rules/issues/issueRules.index.ts +34 -0
  364. package/src/rules/issues/logic/logicRules.index.ts +17 -0
  365. package/src/rules/issues/logic/noStaticNodeCondition.test.ts +310 -0
  366. package/src/rules/issues/logic/noStaticNodeCondition.ts +50 -0
  367. package/src/rules/issues/logic/noUnnecessaryConditionFalsy.test.ts +102 -0
  368. package/src/rules/issues/logic/noUnnecessaryConditionFalsy.ts +22 -0
  369. package/src/rules/issues/logic/noUnnecessaryConditionTruthy.test.ts +159 -0
  370. package/src/rules/issues/logic/noUnnecessaryConditionTruthy.ts +27 -0
  371. package/src/rules/issues/miscellaneous/miscRules.index.ts +5 -0
  372. package/src/rules/issues/miscellaneous/noReferenceNodeRule.test.ts +227 -0
  373. package/src/rules/issues/miscellaneous/noReferenceNodeRule.ts +34 -0
  374. package/src/rules/issues/miscellaneous/requireExtensionRule.test.ts +74 -0
  375. package/src/rules/issues/miscellaneous/requireExtensionRule.ts +21 -0
  376. package/src/rules/issues/miscellaneous/unknownCookieRule.test.ts +112 -0
  377. package/src/rules/issues/miscellaneous/unknownCookieRule.ts +34 -0
  378. package/src/rules/issues/routing/duplicateRouteRule.test.ts +147 -0
  379. package/src/rules/issues/routing/duplicateRouteRule.ts +52 -0
  380. package/src/rules/issues/routing/duplicateUrlParameterRule.test.ts +135 -0
  381. package/src/rules/issues/routing/duplicateUrlParameterRule.ts +30 -0
  382. package/src/rules/issues/routing/routingRules.index.ts +11 -0
  383. package/src/rules/issues/routing/unknownSetUrlParameterRule.test.ts +162 -0
  384. package/src/rules/issues/routing/unknownSetUrlParameterRule.ts +33 -0
  385. package/src/rules/issues/routing/unknownSetUrlParametersRule.test.ts +160 -0
  386. package/src/rules/issues/routing/unknownSetUrlParametersRule.ts +34 -0
  387. package/src/rules/issues/routing/unknownUrlParameterRule.test.ts +100 -0
  388. package/src/rules/issues/routing/unknownUrlParameterRule.ts +28 -0
  389. package/src/rules/issues/slots/slotRules.index.ts +4 -0
  390. package/src/rules/issues/slots/unknownClassnameRule.test.ts +94 -0
  391. package/src/rules/issues/slots/unknownClassnameRule.ts +21 -0
  392. package/src/rules/issues/slots/unknownComponentSlotRule.test.ts +170 -0
  393. package/src/rules/issues/slots/unknownComponentSlotRule.ts +50 -0
  394. package/src/rules/issues/style/invalidStyleSyntaxRule.test.ts +303 -0
  395. package/src/rules/issues/style/invalidStyleSyntaxRule.ts +35 -0
  396. package/src/rules/issues/style/styleRules.index.ts +3 -0
  397. package/src/rules/issues/variables/noReferenceVariableRule.test.ts +175 -0
  398. package/src/rules/issues/variables/noReferenceVariableRule.ts +42 -0
  399. package/src/rules/issues/variables/unknownVariableRule.test.ts +92 -0
  400. package/src/rules/issues/variables/unknownVariableRule.ts +25 -0
  401. package/src/rules/issues/variables/unknownVariableSetterRule.test.ts +106 -0
  402. package/src/rules/issues/variables/unknownVariableSetterRule.ts +20 -0
  403. package/src/rules/issues/variables/variableRules.index.ts +9 -0
  404. package/src/rules/issues/workflows/duplicateWorkflowParameterRule.test.ts +106 -0
  405. package/src/rules/issues/workflows/duplicateWorkflowParameterRule.ts +23 -0
  406. package/src/rules/issues/workflows/noPostNavigateAction.test.ts +569 -0
  407. package/src/rules/issues/workflows/noPostNavigateAction.ts +48 -0
  408. package/src/rules/issues/workflows/noReferenceComponentWorkflowRule.test.ts +280 -0
  409. package/src/rules/issues/workflows/noReferenceComponentWorkflowRule.ts +82 -0
  410. package/src/rules/issues/workflows/unknownContextProviderWorkflowRule.test.ts +147 -0
  411. package/src/rules/issues/workflows/unknownContextProviderWorkflowRule.ts +35 -0
  412. package/src/rules/issues/workflows/unknownContextWorkflowRule.test.ts +93 -0
  413. package/src/rules/issues/workflows/unknownContextWorkflowRule.ts +30 -0
  414. package/src/rules/issues/workflows/unknownTriggerWorkflowParameterRule.test.ts +485 -0
  415. package/src/rules/issues/workflows/unknownTriggerWorkflowParameterRule.ts +54 -0
  416. package/src/rules/issues/workflows/unknownTriggerWorkflowRule.test.ts +105 -0
  417. package/src/rules/issues/workflows/unknownTriggerWorkflowRule.ts +22 -0
  418. package/src/rules/issues/workflows/unknownWorkflowParameterRule.test.ts +116 -0
  419. package/src/rules/issues/workflows/unknownWorkflowParameterRule.ts +38 -0
  420. package/src/rules/issues/workflows/workflowRules.index.ts +15 -0
  421. package/src/searchProject.ts +42 -20
  422. package/src/types.d.ts +32 -26
  423. package/dist/rules/actions/createActionNameRule.js.map +0 -1
  424. package/dist/rules/actions/createActionNameRule.test.js +0 -98
  425. package/dist/rules/actions/createActionNameRule.test.js.map +0 -1
  426. package/dist/rules/actions/legacyActionRule.fix.js +0 -142
  427. package/dist/rules/actions/legacyActionRule.fix.js.map +0 -1
  428. package/dist/rules/actions/legacyActionRule.js +0 -46
  429. package/dist/rules/actions/legacyActionRule.js.map +0 -1
  430. package/dist/rules/actions/legacyActionRule.test.js +0 -392
  431. package/dist/rules/actions/legacyActionRule.test.js.map +0 -1
  432. package/dist/rules/actions/noReferenceProjectActionRule.js +0 -44
  433. package/dist/rules/actions/noReferenceProjectActionRule.js.map +0 -1
  434. package/dist/rules/actions/noReferenceProjectActionRule.test.js +0 -151
  435. package/dist/rules/actions/noReferenceProjectActionRule.test.js.map +0 -1
  436. package/dist/rules/actions/unknownProjectActionRule.js.map +0 -1
  437. package/dist/rules/actions/unknownProjectActionRule.test.js +0 -112
  438. package/dist/rules/actions/unknownProjectActionRule.test.js.map +0 -1
  439. package/dist/rules/apis/invalidApiParserModeRule.js.map +0 -1
  440. package/dist/rules/apis/invalidApiParserModeRule.test.js +0 -83
  441. package/dist/rules/apis/invalidApiParserModeRule.test.js.map +0 -1
  442. package/dist/rules/apis/invalidApiProxyBodySettingRule.js.map +0 -1
  443. package/dist/rules/apis/invalidApiProxyBodySettingRule.test.js +0 -73
  444. package/dist/rules/apis/invalidApiProxyBodySettingRule.test.js.map +0 -1
  445. package/dist/rules/apis/legacyApiRule.js.map +0 -1
  446. package/dist/rules/apis/legacyApiRule.test.js +0 -90
  447. package/dist/rules/apis/legacyApiRule.test.js.map +0 -1
  448. package/dist/rules/apis/noReferenceApiInputRule.js.map +0 -1
  449. package/dist/rules/apis/noReferenceApiInputRule.test.js +0 -147
  450. package/dist/rules/apis/noReferenceApiInputRule.test.js.map +0 -1
  451. package/dist/rules/apis/noReferenceApiRule.js +0 -40
  452. package/dist/rules/apis/noReferenceApiRule.js.map +0 -1
  453. package/dist/rules/apis/noReferenceApiRule.test.js +0 -216
  454. package/dist/rules/apis/noReferenceApiRule.test.js.map +0 -1
  455. package/dist/rules/apis/noReferenceApiServiceRule.js +0 -39
  456. package/dist/rules/apis/noReferenceApiServiceRule.js.map +0 -1
  457. package/dist/rules/apis/noReferenceApiServiceRule.test.js +0 -98
  458. package/dist/rules/apis/noReferenceApiServiceRule.test.js.map +0 -1
  459. package/dist/rules/apis/unknownApiInputRule.js.map +0 -1
  460. package/dist/rules/apis/unknownApiInputRule.test.js +0 -79
  461. package/dist/rules/apis/unknownApiInputRule.test.js.map +0 -1
  462. package/dist/rules/apis/unknownApiRule.js.map +0 -1
  463. package/dist/rules/apis/unknownApiRule.test.js +0 -149
  464. package/dist/rules/apis/unknownApiRule.test.js.map +0 -1
  465. package/dist/rules/apis/unknownApiServiceRule.js +0 -21
  466. package/dist/rules/apis/unknownApiServiceRule.js.map +0 -1
  467. package/dist/rules/apis/unknownApiServiceRule.test.js +0 -140
  468. package/dist/rules/apis/unknownApiServiceRule.test.js.map +0 -1
  469. package/dist/rules/attributes/noReferenceAttributeRule.js +0 -33
  470. package/dist/rules/attributes/noReferenceAttributeRule.js.map +0 -1
  471. package/dist/rules/attributes/noReferenceAttributeRule.test.js +0 -160
  472. package/dist/rules/attributes/noReferenceAttributeRule.test.js.map +0 -1
  473. package/dist/rules/attributes/unknownAttributeRule.js.map +0 -1
  474. package/dist/rules/attributes/unknownAttributeRule.test.js +0 -86
  475. package/dist/rules/attributes/unknownAttributeRule.test.js.map +0 -1
  476. package/dist/rules/attributes/unknownComponentAttributeRule.js +0 -29
  477. package/dist/rules/attributes/unknownComponentAttributeRule.js.map +0 -1
  478. package/dist/rules/attributes/unknownComponentAttributeRule.test.js +0 -148
  479. package/dist/rules/attributes/unknownComponentAttributeRule.test.js.map +0 -1
  480. package/dist/rules/components/noReferenceComponentRule.js +0 -33
  481. package/dist/rules/components/noReferenceComponentRule.js.map +0 -1
  482. package/dist/rules/components/noReferenceComponentRule.test.js +0 -282
  483. package/dist/rules/components/noReferenceComponentRule.test.js.map +0 -1
  484. package/dist/rules/components/unknownComponentRule.js.map +0 -1
  485. package/dist/rules/components/unknownComponentRule.test.js +0 -108
  486. package/dist/rules/components/unknownComponentRule.test.js.map +0 -1
  487. package/dist/rules/context/noContextConsumersRule.js.map +0 -1
  488. package/dist/rules/context/noContextConsumersRule.test.js +0 -225
  489. package/dist/rules/context/noContextConsumersRule.test.js.map +0 -1
  490. package/dist/rules/context/unknownContextFormulaRule.js.map +0 -1
  491. package/dist/rules/context/unknownContextFormulaRule.test.js +0 -87
  492. package/dist/rules/context/unknownContextFormulaRule.test.js.map +0 -1
  493. package/dist/rules/context/unknownContextProviderFormulaRule.js.map +0 -1
  494. package/dist/rules/context/unknownContextProviderFormulaRule.test.js +0 -166
  495. package/dist/rules/context/unknownContextProviderFormulaRule.test.js.map +0 -1
  496. package/dist/rules/context/unknownContextProviderRule.js.map +0 -1
  497. package/dist/rules/context/unknownContextProviderRule.test.js +0 -73
  498. package/dist/rules/context/unknownContextProviderRule.test.js.map +0 -1
  499. package/dist/rules/dom/createRequiredDirectChildRule.js.map +0 -1
  500. package/dist/rules/dom/createRequiredDirectChildRule.test.js +0 -114
  501. package/dist/rules/dom/createRequiredDirectChildRule.test.js.map +0 -1
  502. package/dist/rules/dom/createRequiredDirectParentRule.js.map +0 -1
  503. package/dist/rules/dom/createRequiredDirectParentRule.test.js +0 -116
  504. package/dist/rules/dom/createRequiredDirectParentRule.test.js.map +0 -1
  505. package/dist/rules/dom/createRequiredElementAttributeRule.js.map +0 -1
  506. package/dist/rules/dom/createRequiredElementAttributeRule.test.js +0 -148
  507. package/dist/rules/dom/createRequiredElementAttributeRule.test.js.map +0 -1
  508. package/dist/rules/dom/createRequiredMetaTagRule.js.map +0 -1
  509. package/dist/rules/dom/createRequiredMetaTagRule.test.js +0 -71
  510. package/dist/rules/dom/createRequiredMetaTagRule.test.js.map +0 -1
  511. package/dist/rules/dom/elementWithoutInteractiveContentRule.js +0 -56
  512. package/dist/rules/dom/elementWithoutInteractiveContentRule.js.map +0 -1
  513. package/dist/rules/dom/elementWithoutInteractiveContentRule.test.js +0 -386
  514. package/dist/rules/dom/elementWithoutInteractiveContentRule.test.js.map +0 -1
  515. package/dist/rules/dom/imageWithoutDimensionRule.js.map +0 -1
  516. package/dist/rules/dom/imageWithoutDimensionRule.test.js +0 -147
  517. package/dist/rules/dom/imageWithoutDimensionRule.test.js.map +0 -1
  518. package/dist/rules/dom/nonEmptyVoidElementRule.js.map +0 -1
  519. package/dist/rules/dom/nonEmptyVoidElementRule.test.js +0 -76
  520. package/dist/rules/dom/nonEmptyVoidElementRule.test.js.map +0 -1
  521. package/dist/rules/duplicateRouteRule.js.map +0 -1
  522. package/dist/rules/duplicateRouteRule.test.js +0 -138
  523. package/dist/rules/duplicateRouteRule.test.js.map +0 -1
  524. package/dist/rules/events/duplicateEventTriggerRule.js.map +0 -1
  525. package/dist/rules/events/duplicateEventTriggerRule.test.js +0 -92
  526. package/dist/rules/events/duplicateEventTriggerRule.test.js.map +0 -1
  527. package/dist/rules/events/noReferenceEventRule.js +0 -43
  528. package/dist/rules/events/noReferenceEventRule.js.map +0 -1
  529. package/dist/rules/events/noReferenceEventRule.test.js +0 -198
  530. package/dist/rules/events/noReferenceEventRule.test.js.map +0 -1
  531. package/dist/rules/events/unknownEventRule.js.map +0 -1
  532. package/dist/rules/events/unknownEventRule.test.js +0 -231
  533. package/dist/rules/events/unknownEventRule.test.js.map +0 -1
  534. package/dist/rules/events/unknownTriggerEventRule.js.map +0 -1
  535. package/dist/rules/events/unknownTriggerEventRule.test.js +0 -111
  536. package/dist/rules/events/unknownTriggerEventRule.test.js.map +0 -1
  537. package/dist/rules/formulas/legacyFormulaRule.fix.js +0 -576
  538. package/dist/rules/formulas/legacyFormulaRule.fix.js.map +0 -1
  539. package/dist/rules/formulas/legacyFormulaRule.js.map +0 -1
  540. package/dist/rules/formulas/legacyFormulaRule.test.js +0 -542
  541. package/dist/rules/formulas/legacyFormulaRule.test.js.map +0 -1
  542. package/dist/rules/formulas/noReferenceComponentFormulaRule.js +0 -68
  543. package/dist/rules/formulas/noReferenceComponentFormulaRule.js.map +0 -1
  544. package/dist/rules/formulas/noReferenceComponentFormulaRule.test.js +0 -323
  545. package/dist/rules/formulas/noReferenceComponentFormulaRule.test.js.map +0 -1
  546. package/dist/rules/formulas/noReferenceProjectFormulaRule.js +0 -103
  547. package/dist/rules/formulas/noReferenceProjectFormulaRule.js.map +0 -1
  548. package/dist/rules/formulas/noReferenceProjectFormulaRule.test.js +0 -303
  549. package/dist/rules/formulas/noReferenceProjectFormulaRule.test.js.map +0 -1
  550. package/dist/rules/formulas/unknownComponentFormulaInputRule.js.map +0 -1
  551. package/dist/rules/formulas/unknownComponentFormulaInputRule.test.js +0 -132
  552. package/dist/rules/formulas/unknownComponentFormulaInputRule.test.js.map +0 -1
  553. package/dist/rules/formulas/unknownFormulaRule.js.map +0 -1
  554. package/dist/rules/formulas/unknownFormulaRule.test.js +0 -92
  555. package/dist/rules/formulas/unknownFormulaRule.test.js.map +0 -1
  556. package/dist/rules/formulas/unknownProjectFormulaInputRule.js.map +0 -1
  557. package/dist/rules/formulas/unknownProjectFormulaInputRule.test.js +0 -103
  558. package/dist/rules/formulas/unknownProjectFormulaInputRule.test.js.map +0 -1
  559. package/dist/rules/formulas/unknownProjectFormulaRule.js.map +0 -1
  560. package/dist/rules/formulas/unknownProjectFormulaRule.test.js +0 -117
  561. package/dist/rules/formulas/unknownProjectFormulaRule.test.js.map +0 -1
  562. package/dist/rules/formulas/unknownRepeatIndexFormulaRule.js.map +0 -1
  563. package/dist/rules/formulas/unknownRepeatIndexFormulaRule.test.js +0 -133
  564. package/dist/rules/formulas/unknownRepeatIndexFormulaRule.test.js.map +0 -1
  565. package/dist/rules/formulas/unknownRepeatItemFormulaRule.js.map +0 -1
  566. package/dist/rules/formulas/unknownRepeatItemFormulaRule.test.js +0 -133
  567. package/dist/rules/formulas/unknownRepeatItemFormulaRule.test.js.map +0 -1
  568. package/dist/rules/logic/noStaticNodeCondition.js +0 -32
  569. package/dist/rules/logic/noStaticNodeCondition.js.map +0 -1
  570. package/dist/rules/logic/noStaticNodeCondition.test.js +0 -293
  571. package/dist/rules/logic/noStaticNodeCondition.test.js.map +0 -1
  572. package/dist/rules/logic/noUnnecessaryConditionFalsy.js +0 -18
  573. package/dist/rules/logic/noUnnecessaryConditionFalsy.js.map +0 -1
  574. package/dist/rules/logic/noUnnecessaryConditionFalsy.test.js +0 -95
  575. package/dist/rules/logic/noUnnecessaryConditionFalsy.test.js.map +0 -1
  576. package/dist/rules/logic/noUnnecessaryConditionTruthy.js +0 -22
  577. package/dist/rules/logic/noUnnecessaryConditionTruthy.js.map +0 -1
  578. package/dist/rules/logic/noUnnecessaryConditionTruthy.test.js +0 -148
  579. package/dist/rules/logic/noUnnecessaryConditionTruthy.test.js.map +0 -1
  580. package/dist/rules/noReferenceNodeRule.js +0 -24
  581. package/dist/rules/noReferenceNodeRule.js.map +0 -1
  582. package/dist/rules/noReferenceNodeRule.test.js +0 -218
  583. package/dist/rules/noReferenceNodeRule.test.js.map +0 -1
  584. package/dist/rules/requireExtensionRule.js.map +0 -1
  585. package/dist/rules/requireExtensionRule.test.js +0 -68
  586. package/dist/rules/requireExtensionRule.test.js.map +0 -1
  587. package/dist/rules/slots/unknownClassnameRule.js +0 -15
  588. package/dist/rules/slots/unknownClassnameRule.js.map +0 -1
  589. package/dist/rules/slots/unknownClassnameRule.test.js +0 -87
  590. package/dist/rules/slots/unknownClassnameRule.test.js.map +0 -1
  591. package/dist/rules/slots/unknownComponentSlotRule.js.map +0 -1
  592. package/dist/rules/slots/unknownComponentSlotRule.test.js +0 -163
  593. package/dist/rules/slots/unknownComponentSlotRule.test.js.map +0 -1
  594. package/dist/rules/style/invalidStyleSyntaxRule.js +0 -28
  595. package/dist/rules/style/invalidStyleSyntaxRule.js.map +0 -1
  596. package/dist/rules/style/invalidStyleSyntaxRule.test.js +0 -100
  597. package/dist/rules/style/invalidStyleSyntaxRule.test.js.map +0 -1
  598. package/dist/rules/unknownCookieRule.js.map +0 -1
  599. package/dist/rules/unknownCookieRule.test.js +0 -106
  600. package/dist/rules/unknownCookieRule.test.js.map +0 -1
  601. package/dist/rules/urlParameters/duplicateUrlParameterRule.js.map +0 -1
  602. package/dist/rules/urlParameters/duplicateUrlParameterRule.test.js +0 -127
  603. package/dist/rules/urlParameters/duplicateUrlParameterRule.test.js.map +0 -1
  604. package/dist/rules/urlParameters/unknownSetUrlParameterRule.js.map +0 -1
  605. package/dist/rules/urlParameters/unknownSetUrlParameterRule.test.js +0 -151
  606. package/dist/rules/urlParameters/unknownSetUrlParameterRule.test.js.map +0 -1
  607. package/dist/rules/urlParameters/unknownSetUrlParametersRule.js.map +0 -1
  608. package/dist/rules/urlParameters/unknownSetUrlParametersRule.test.js +0 -149
  609. package/dist/rules/urlParameters/unknownSetUrlParametersRule.test.js.map +0 -1
  610. package/dist/rules/urlParameters/unknownUrlParameterRule.js.map +0 -1
  611. package/dist/rules/urlParameters/unknownUrlParameterRule.test.js +0 -93
  612. package/dist/rules/urlParameters/unknownUrlParameterRule.test.js.map +0 -1
  613. package/dist/rules/variables/noReferenceVariableRule.js +0 -22
  614. package/dist/rules/variables/noReferenceVariableRule.js.map +0 -1
  615. package/dist/rules/variables/noReferenceVariableRule.test.js +0 -88
  616. package/dist/rules/variables/noReferenceVariableRule.test.js.map +0 -1
  617. package/dist/rules/variables/unknownVariableRule.js.map +0 -1
  618. package/dist/rules/variables/unknownVariableRule.test.js +0 -85
  619. package/dist/rules/variables/unknownVariableRule.test.js.map +0 -1
  620. package/dist/rules/variables/unknownVariableSetterRule.js.map +0 -1
  621. package/dist/rules/variables/unknownVariableSetterRule.test.js +0 -99
  622. package/dist/rules/variables/unknownVariableSetterRule.test.js.map +0 -1
  623. package/dist/rules/workflows/duplicateWorkflowParameterRule.js.map +0 -1
  624. package/dist/rules/workflows/duplicateWorkflowParameterRule.test.js +0 -100
  625. package/dist/rules/workflows/duplicateWorkflowParameterRule.test.js.map +0 -1
  626. package/dist/rules/workflows/noPostNavigateAction.js.map +0 -1
  627. package/dist/rules/workflows/noPostNavigateAction.test.js +0 -548
  628. package/dist/rules/workflows/noPostNavigateAction.test.js.map +0 -1
  629. package/dist/rules/workflows/noReferenceComponentWorkflowRule.js.map +0 -1
  630. package/dist/rules/workflows/noReferenceComponentWorkflowRule.test.js +0 -262
  631. package/dist/rules/workflows/noReferenceComponentWorkflowRule.test.js.map +0 -1
  632. package/dist/rules/workflows/unknownContextProviderWorkflowRule.js.map +0 -1
  633. package/dist/rules/workflows/unknownContextProviderWorkflowRule.test.js +0 -138
  634. package/dist/rules/workflows/unknownContextProviderWorkflowRule.test.js.map +0 -1
  635. package/dist/rules/workflows/unknownContextWorkflowRule.js.map +0 -1
  636. package/dist/rules/workflows/unknownContextWorkflowRule.test.js +0 -86
  637. package/dist/rules/workflows/unknownContextWorkflowRule.test.js.map +0 -1
  638. package/dist/rules/workflows/unknownTriggerWorkflowParameterRule.js.map +0 -1
  639. package/dist/rules/workflows/unknownTriggerWorkflowParameterRule.test.js +0 -467
  640. package/dist/rules/workflows/unknownTriggerWorkflowParameterRule.test.js.map +0 -1
  641. package/dist/rules/workflows/unknownTriggerWorkflowRule.js.map +0 -1
  642. package/dist/rules/workflows/unknownTriggerWorkflowRule.test.js +0 -99
  643. package/dist/rules/workflows/unknownTriggerWorkflowRule.test.js.map +0 -1
  644. package/dist/rules/workflows/unknownWorkflowParameterRule.js.map +0 -1
  645. package/dist/rules/workflows/unknownWorkflowParameterRule.test.js +0 -110
  646. package/dist/rules/workflows/unknownWorkflowParameterRule.test.js.map +0 -1
  647. package/src/rules/actions/createActionNameRule.test.ts +0 -101
  648. package/src/rules/actions/createActionNameRule.ts +0 -38
  649. package/src/rules/actions/legacyActionRule.fix.ts +0 -159
  650. package/src/rules/actions/legacyActionRule.test.ts +0 -408
  651. package/src/rules/actions/legacyActionRule.ts +0 -57
  652. package/src/rules/actions/noReferenceProjectActionRule.test.ts +0 -164
  653. package/src/rules/actions/noReferenceProjectActionRule.ts +0 -53
  654. package/src/rules/actions/unknownProjectActionRule.test.ts +0 -118
  655. package/src/rules/actions/unknownProjectActionRule.ts +0 -23
  656. package/src/rules/apis/invalidApiParserModeRule.test.ts +0 -90
  657. package/src/rules/apis/invalidApiParserModeRule.ts +0 -26
  658. package/src/rules/apis/invalidApiProxyBodySettingRule.test.ts +0 -80
  659. package/src/rules/apis/invalidApiProxyBodySettingRule.ts +0 -25
  660. package/src/rules/apis/legacyApiRule.test.ts +0 -97
  661. package/src/rules/apis/legacyApiRule.ts +0 -16
  662. package/src/rules/apis/noReferenceApiInputRule.test.ts +0 -160
  663. package/src/rules/apis/noReferenceApiInputRule.ts +0 -42
  664. package/src/rules/apis/noReferenceApiRule.test.ts +0 -231
  665. package/src/rules/apis/noReferenceApiRule.ts +0 -49
  666. package/src/rules/apis/noReferenceApiServiceRule.test.ts +0 -103
  667. package/src/rules/apis/noReferenceApiServiceRule.ts +0 -43
  668. package/src/rules/apis/unknownApiInputRule.test.ts +0 -86
  669. package/src/rules/apis/unknownApiInputRule.ts +0 -33
  670. package/src/rules/apis/unknownApiRule.test.ts +0 -160
  671. package/src/rules/apis/unknownApiRule.ts +0 -31
  672. package/src/rules/apis/unknownApiServiceRule.test.ts +0 -152
  673. package/src/rules/apis/unknownApiServiceRule.ts +0 -33
  674. package/src/rules/attributes/noReferenceAttributeRule.test.ts +0 -173
  675. package/src/rules/attributes/noReferenceAttributeRule.ts +0 -37
  676. package/src/rules/attributes/unknownAttributeRule.test.ts +0 -93
  677. package/src/rules/attributes/unknownAttributeRule.ts +0 -25
  678. package/src/rules/attributes/unknownComponentAttributeRule.test.ts +0 -159
  679. package/src/rules/attributes/unknownComponentAttributeRule.ts +0 -37
  680. package/src/rules/components/noReferenceComponentRule.test.ts +0 -301
  681. package/src/rules/components/noReferenceComponentRule.ts +0 -45
  682. package/src/rules/components/unknownComponentRule.test.ts +0 -115
  683. package/src/rules/components/unknownComponentRule.ts +0 -24
  684. package/src/rules/context/noContextConsumersRule.test.ts +0 -240
  685. package/src/rules/context/noContextConsumersRule.ts +0 -39
  686. package/src/rules/context/unknownContextFormulaRule.test.ts +0 -94
  687. package/src/rules/context/unknownContextFormulaRule.ts +0 -30
  688. package/src/rules/context/unknownContextProviderFormulaRule.test.ts +0 -175
  689. package/src/rules/context/unknownContextProviderFormulaRule.ts +0 -35
  690. package/src/rules/context/unknownContextProviderRule.test.ts +0 -80
  691. package/src/rules/context/unknownContextProviderRule.ts +0 -30
  692. package/src/rules/dom/createRequiredDirectChildRule.test.ts +0 -120
  693. package/src/rules/dom/createRequiredDirectChildRule.ts +0 -43
  694. package/src/rules/dom/createRequiredDirectParentRule.test.ts +0 -125
  695. package/src/rules/dom/createRequiredDirectParentRule.ts +0 -41
  696. package/src/rules/dom/createRequiredElementAttributeRule.test.ts +0 -160
  697. package/src/rules/dom/createRequiredElementAttributeRule.ts +0 -44
  698. package/src/rules/dom/createRequiredMetaTagRule.test.ts +0 -77
  699. package/src/rules/dom/createRequiredMetaTagRule.ts +0 -33
  700. package/src/rules/dom/elementWithoutInteractiveContentRule.test.ts +0 -401
  701. package/src/rules/dom/elementWithoutInteractiveContentRule.ts +0 -80
  702. package/src/rules/dom/imageWithoutDimensionRule.test.ts +0 -162
  703. package/src/rules/dom/imageWithoutDimensionRule.ts +0 -50
  704. package/src/rules/dom/nonEmptyVoidElementRule.test.ts +0 -83
  705. package/src/rules/dom/nonEmptyVoidElementRule.ts +0 -22
  706. package/src/rules/duplicateRouteRule.test.ts +0 -147
  707. package/src/rules/duplicateRouteRule.ts +0 -52
  708. package/src/rules/events/duplicateEventTriggerRule.test.ts +0 -98
  709. package/src/rules/events/duplicateEventTriggerRule.ts +0 -24
  710. package/src/rules/events/noReferenceEventRule.test.ts +0 -206
  711. package/src/rules/events/noReferenceEventRule.ts +0 -51
  712. package/src/rules/events/unknownEventRule.test.ts +0 -238
  713. package/src/rules/events/unknownEventRule.ts +0 -32
  714. package/src/rules/events/unknownTriggerEventRule.test.ts +0 -118
  715. package/src/rules/events/unknownTriggerEventRule.ts +0 -20
  716. package/src/rules/formulas/legacyFormulaRule.fix.ts +0 -660
  717. package/src/rules/formulas/legacyFormulaRule.test.ts +0 -571
  718. package/src/rules/formulas/legacyFormulaRule.ts +0 -184
  719. package/src/rules/formulas/noReferenceComponentFormulaRule.test.ts +0 -344
  720. package/src/rules/formulas/noReferenceComponentFormulaRule.ts +0 -92
  721. package/src/rules/formulas/noReferenceProjectFormulaRule.test.ts +0 -326
  722. package/src/rules/formulas/noReferenceProjectFormulaRule.ts +0 -125
  723. package/src/rules/formulas/unknownComponentFormulaInputRule.test.ts +0 -141
  724. package/src/rules/formulas/unknownComponentFormulaInputRule.ts +0 -38
  725. package/src/rules/formulas/unknownFormulaRule.test.ts +0 -99
  726. package/src/rules/formulas/unknownFormulaRule.ts +0 -21
  727. package/src/rules/formulas/unknownProjectFormulaInputRule.test.ts +0 -112
  728. package/src/rules/formulas/unknownProjectFormulaInputRule.ts +0 -32
  729. package/src/rules/formulas/unknownProjectFormulaRule.test.ts +0 -126
  730. package/src/rules/formulas/unknownProjectFormulaRule.ts +0 -23
  731. package/src/rules/formulas/unknownRepeatIndexFormulaRule.test.ts +0 -139
  732. package/src/rules/formulas/unknownRepeatIndexFormulaRule.ts +0 -46
  733. package/src/rules/formulas/unknownRepeatItemFormulaRule.test.ts +0 -139
  734. package/src/rules/formulas/unknownRepeatItemFormulaRule.ts +0 -46
  735. package/src/rules/logic/noStaticNodeCondition.test.ts +0 -310
  736. package/src/rules/logic/noStaticNodeCondition.ts +0 -50
  737. package/src/rules/logic/noUnnecessaryConditionFalsy.test.ts +0 -102
  738. package/src/rules/logic/noUnnecessaryConditionFalsy.ts +0 -22
  739. package/src/rules/logic/noUnnecessaryConditionTruthy.test.ts +0 -159
  740. package/src/rules/logic/noUnnecessaryConditionTruthy.ts +0 -27
  741. package/src/rules/noReferenceNodeRule.test.ts +0 -227
  742. package/src/rules/noReferenceNodeRule.ts +0 -34
  743. package/src/rules/requireExtensionRule.test.ts +0 -74
  744. package/src/rules/requireExtensionRule.ts +0 -21
  745. package/src/rules/slots/unknownClassnameRule.test.ts +0 -94
  746. package/src/rules/slots/unknownClassnameRule.ts +0 -20
  747. package/src/rules/slots/unknownComponentSlotRule.test.ts +0 -170
  748. package/src/rules/slots/unknownComponentSlotRule.ts +0 -50
  749. package/src/rules/style/invalidStyleSyntaxRule.test.ts +0 -106
  750. package/src/rules/style/invalidStyleSyntaxRule.ts +0 -35
  751. package/src/rules/unknownCookieRule.test.ts +0 -112
  752. package/src/rules/unknownCookieRule.ts +0 -34
  753. package/src/rules/urlParameters/duplicateUrlParameterRule.test.ts +0 -135
  754. package/src/rules/urlParameters/duplicateUrlParameterRule.ts +0 -30
  755. package/src/rules/urlParameters/unknownSetUrlParameterRule.test.ts +0 -162
  756. package/src/rules/urlParameters/unknownSetUrlParameterRule.ts +0 -33
  757. package/src/rules/urlParameters/unknownSetUrlParametersRule.test.ts +0 -160
  758. package/src/rules/urlParameters/unknownSetUrlParametersRule.ts +0 -34
  759. package/src/rules/urlParameters/unknownUrlParameterRule.test.ts +0 -100
  760. package/src/rules/urlParameters/unknownUrlParameterRule.ts +0 -28
  761. package/src/rules/variables/noReferenceVariableRule.test.ts +0 -95
  762. package/src/rules/variables/noReferenceVariableRule.ts +0 -36
  763. package/src/rules/variables/unknownVariableRule.test.ts +0 -92
  764. package/src/rules/variables/unknownVariableRule.ts +0 -25
  765. package/src/rules/variables/unknownVariableSetterRule.test.ts +0 -106
  766. package/src/rules/variables/unknownVariableSetterRule.ts +0 -20
  767. package/src/rules/workflows/duplicateWorkflowParameterRule.test.ts +0 -106
  768. package/src/rules/workflows/duplicateWorkflowParameterRule.ts +0 -23
  769. package/src/rules/workflows/noPostNavigateAction.test.ts +0 -569
  770. package/src/rules/workflows/noPostNavigateAction.ts +0 -48
  771. package/src/rules/workflows/noReferenceComponentWorkflowRule.test.ts +0 -280
  772. package/src/rules/workflows/noReferenceComponentWorkflowRule.ts +0 -82
  773. package/src/rules/workflows/unknownContextProviderWorkflowRule.test.ts +0 -147
  774. package/src/rules/workflows/unknownContextProviderWorkflowRule.ts +0 -35
  775. package/src/rules/workflows/unknownContextWorkflowRule.test.ts +0 -93
  776. package/src/rules/workflows/unknownContextWorkflowRule.ts +0 -30
  777. package/src/rules/workflows/unknownTriggerWorkflowParameterRule.test.ts +0 -485
  778. package/src/rules/workflows/unknownTriggerWorkflowParameterRule.ts +0 -54
  779. package/src/rules/workflows/unknownTriggerWorkflowRule.test.ts +0 -105
  780. package/src/rules/workflows/unknownTriggerWorkflowRule.ts +0 -22
  781. package/src/rules/workflows/unknownWorkflowParameterRule.test.ts +0 -116
  782. package/src/rules/workflows/unknownWorkflowParameterRule.ts +0 -38
  783. /package/dist/rules/{actions → issues/actions}/createActionNameRule.js +0 -0
  784. /package/dist/rules/{actions → issues/actions}/unknownProjectActionRule.js +0 -0
  785. /package/dist/rules/{apis → issues/apis}/invalidApiParserModeRule.js +0 -0
  786. /package/dist/rules/{apis → issues/apis}/invalidApiProxyBodySettingRule.js +0 -0
  787. /package/dist/rules/{apis → issues/apis}/legacyApiRule.js +0 -0
  788. /package/dist/rules/{apis → issues/apis}/noReferenceApiInputRule.js +0 -0
  789. /package/dist/rules/{apis → issues/apis}/unknownApiInputRule.js +0 -0
  790. /package/dist/rules/{apis → issues/apis}/unknownApiRule.js +0 -0
  791. /package/dist/rules/{attributes → issues/attributes}/unknownAttributeRule.js +0 -0
  792. /package/dist/rules/{components → issues/components}/unknownComponentRule.js +0 -0
  793. /package/dist/rules/{context → issues/context}/noContextConsumersRule.js +0 -0
  794. /package/dist/rules/{context → issues/context}/unknownContextFormulaRule.js +0 -0
  795. /package/dist/rules/{context → issues/context}/unknownContextProviderFormulaRule.js +0 -0
  796. /package/dist/rules/{context → issues/context}/unknownContextProviderRule.js +0 -0
  797. /package/dist/rules/{dom → issues/dom}/createRequiredDirectChildRule.js +0 -0
  798. /package/dist/rules/{dom → issues/dom}/createRequiredDirectParentRule.js +0 -0
  799. /package/dist/rules/{dom → issues/dom}/createRequiredElementAttributeRule.js +0 -0
  800. /package/dist/rules/{dom → issues/dom}/createRequiredMetaTagRule.js +0 -0
  801. /package/dist/rules/{dom → issues/dom}/imageWithoutDimensionRule.js +0 -0
  802. /package/dist/rules/{dom → issues/dom}/nonEmptyVoidElementRule.js +0 -0
  803. /package/dist/rules/{events → issues/events}/duplicateEventTriggerRule.js +0 -0
  804. /package/dist/rules/{events → issues/events}/unknownEventRule.js +0 -0
  805. /package/dist/rules/{events → issues/events}/unknownTriggerEventRule.js +0 -0
  806. /package/dist/rules/{formulas → issues/formulas}/legacyFormulaRule.js +0 -0
  807. /package/dist/rules/{formulas → issues/formulas}/unknownComponentFormulaInputRule.js +0 -0
  808. /package/dist/rules/{formulas → issues/formulas}/unknownFormulaRule.js +0 -0
  809. /package/dist/rules/{formulas → issues/formulas}/unknownProjectFormulaInputRule.js +0 -0
  810. /package/dist/rules/{formulas → issues/formulas}/unknownProjectFormulaRule.js +0 -0
  811. /package/dist/rules/{formulas → issues/formulas}/unknownRepeatIndexFormulaRule.js +0 -0
  812. /package/dist/rules/{formulas → issues/formulas}/unknownRepeatItemFormulaRule.js +0 -0
  813. /package/dist/rules/{requireExtensionRule.js → issues/miscellaneous/requireExtensionRule.js} +0 -0
  814. /package/dist/rules/{unknownCookieRule.js → issues/miscellaneous/unknownCookieRule.js} +0 -0
  815. /package/dist/rules/{duplicateRouteRule.js → issues/routing/duplicateRouteRule.js} +0 -0
  816. /package/dist/rules/{urlParameters → issues/routing}/duplicateUrlParameterRule.js +0 -0
  817. /package/dist/rules/{urlParameters → issues/routing}/unknownSetUrlParameterRule.js +0 -0
  818. /package/dist/rules/{urlParameters → issues/routing}/unknownSetUrlParametersRule.js +0 -0
  819. /package/dist/rules/{urlParameters → issues/routing}/unknownUrlParameterRule.js +0 -0
  820. /package/dist/rules/{slots → issues/slots}/unknownComponentSlotRule.js +0 -0
  821. /package/dist/rules/{variables → issues/variables}/unknownVariableRule.js +0 -0
  822. /package/dist/rules/{variables → issues/variables}/unknownVariableSetterRule.js +0 -0
  823. /package/dist/rules/{workflows → issues/workflows}/duplicateWorkflowParameterRule.js +0 -0
  824. /package/dist/rules/{workflows → issues/workflows}/noPostNavigateAction.js +0 -0
  825. /package/dist/rules/{workflows → issues/workflows}/noReferenceComponentWorkflowRule.js +0 -0
  826. /package/dist/rules/{workflows → issues/workflows}/unknownContextProviderWorkflowRule.js +0 -0
  827. /package/dist/rules/{workflows → issues/workflows}/unknownContextWorkflowRule.js +0 -0
  828. /package/dist/rules/{workflows → issues/workflows}/unknownTriggerWorkflowParameterRule.js +0 -0
  829. /package/dist/rules/{workflows → issues/workflows}/unknownTriggerWorkflowRule.js +0 -0
  830. /package/dist/rules/{workflows → issues/workflows}/unknownWorkflowParameterRule.js +0 -0
@@ -0,0 +1,293 @@
1
+ import { describe, expect, test } from 'bun:test';
2
+ import { fixProject } from '../../../fixProject';
3
+ import { searchProject } from '../../../searchProject';
4
+ import { noStaticNodeCondition } from './noStaticNodeCondition';
5
+ describe('noStaticNodeCondition', () => {
6
+ test('should report node condition that is always truthy', () => {
7
+ const problems = Array.from(searchProject({
8
+ files: {
9
+ components: {
10
+ test: {
11
+ name: 'test',
12
+ nodes: {
13
+ root: {
14
+ type: 'element',
15
+ attrs: {},
16
+ classes: {},
17
+ events: {},
18
+ tag: 'div',
19
+ children: [],
20
+ style: {},
21
+ condition: {
22
+ type: 'value',
23
+ value: true,
24
+ },
25
+ },
26
+ },
27
+ formulas: {},
28
+ apis: {},
29
+ attributes: {},
30
+ variables: {},
31
+ },
32
+ },
33
+ },
34
+ rules: [noStaticNodeCondition],
35
+ }));
36
+ expect(problems).toHaveLength(1);
37
+ expect(problems[0].code).toBe('no-static-node-condition');
38
+ expect(problems[0].details).toEqual({
39
+ result: true,
40
+ });
41
+ expect(problems[0].fixes).toEqual(['remove-condition']);
42
+ expect(problems[0].path).toEqual([
43
+ 'components',
44
+ 'test',
45
+ 'nodes',
46
+ 'root',
47
+ 'condition',
48
+ ]);
49
+ });
50
+ test('should report node condition that is always falsy', () => {
51
+ const problems = Array.from(searchProject({
52
+ files: {
53
+ components: {
54
+ test: {
55
+ name: 'test',
56
+ nodes: {
57
+ root: {
58
+ type: 'element',
59
+ attrs: {},
60
+ classes: {},
61
+ events: {},
62
+ tag: 'div',
63
+ children: [],
64
+ style: {},
65
+ condition: {
66
+ type: 'value',
67
+ value: false,
68
+ },
69
+ },
70
+ },
71
+ formulas: {},
72
+ apis: {},
73
+ attributes: {},
74
+ variables: {},
75
+ },
76
+ },
77
+ },
78
+ rules: [noStaticNodeCondition],
79
+ }));
80
+ expect(problems).toHaveLength(1);
81
+ expect(problems[0].code).toBe('no-static-node-condition');
82
+ expect(problems[0].details).toEqual({
83
+ result: false,
84
+ });
85
+ });
86
+ test('should not report node condition that is dynamic', () => {
87
+ const problems = Array.from(searchProject({
88
+ files: {
89
+ components: {
90
+ test: {
91
+ name: 'test',
92
+ nodes: {
93
+ root: {
94
+ type: 'element',
95
+ attrs: {},
96
+ classes: {},
97
+ events: {},
98
+ tag: 'div',
99
+ children: [],
100
+ style: {},
101
+ condition: {
102
+ type: 'apply',
103
+ name: 'randomNumber',
104
+ arguments: [],
105
+ },
106
+ },
107
+ },
108
+ formulas: {},
109
+ apis: {},
110
+ attributes: {},
111
+ variables: {},
112
+ },
113
+ },
114
+ },
115
+ rules: [noStaticNodeCondition],
116
+ }));
117
+ expect(problems).toHaveLength(0);
118
+ });
119
+ test('should fix static truthy condition by removing the condition', () => {
120
+ const files = {
121
+ components: {
122
+ test: {
123
+ name: 'test',
124
+ nodes: {
125
+ root: {
126
+ type: 'element',
127
+ attrs: {},
128
+ classes: {},
129
+ events: {},
130
+ tag: 'div',
131
+ children: [],
132
+ style: {},
133
+ condition: {
134
+ type: 'value',
135
+ value: true,
136
+ },
137
+ },
138
+ },
139
+ formulas: {},
140
+ apis: {},
141
+ attributes: {},
142
+ variables: {},
143
+ },
144
+ },
145
+ };
146
+ const filesClone = structuredClone(files);
147
+ const fixedFiles = fixProject({
148
+ files,
149
+ rule: noStaticNodeCondition,
150
+ fixType: 'remove-condition',
151
+ pathsToVisit: [['components', 'test', 'nodes', 'root', 'condition']],
152
+ });
153
+ expect(fixedFiles).toEqual({
154
+ components: {
155
+ test: {
156
+ apis: {},
157
+ attributes: {},
158
+ formulas: {},
159
+ name: 'test',
160
+ nodes: {
161
+ root: {
162
+ attrs: {},
163
+ children: [],
164
+ classes: {},
165
+ events: {},
166
+ style: {},
167
+ tag: 'div',
168
+ type: 'element',
169
+ },
170
+ },
171
+ variables: {},
172
+ },
173
+ },
174
+ });
175
+ // Also ensure that the original files are not mutated
176
+ expect(files).toEqual(filesClone);
177
+ });
178
+ test('should fix static falsy condition by removing the node and any references to it', () => {
179
+ const files = {
180
+ components: {
181
+ test: {
182
+ name: 'test',
183
+ nodes: {
184
+ root: {
185
+ type: 'element',
186
+ attrs: {},
187
+ classes: {},
188
+ events: {},
189
+ tag: 'div',
190
+ children: ['alwaysHiddenElement', 'sometimesVisibleElement'],
191
+ style: {},
192
+ },
193
+ alwaysHiddenElement: {
194
+ type: 'element',
195
+ attrs: {},
196
+ classes: {},
197
+ events: {},
198
+ tag: 'div',
199
+ children: ['child'],
200
+ style: {},
201
+ condition: {
202
+ type: 'value',
203
+ value: false,
204
+ },
205
+ },
206
+ sometimesVisibleElement: {
207
+ type: 'element',
208
+ attrs: {},
209
+ classes: {},
210
+ events: {},
211
+ tag: 'div',
212
+ children: [],
213
+ style: {},
214
+ condition: {
215
+ type: 'path',
216
+ path: ['Variables', 'maybe'],
217
+ },
218
+ },
219
+ child: {
220
+ type: 'element',
221
+ attrs: {},
222
+ classes: {},
223
+ events: {},
224
+ tag: 'div',
225
+ children: ['childsChild'],
226
+ style: {},
227
+ },
228
+ childsChild: {
229
+ type: 'element',
230
+ attrs: {},
231
+ classes: {},
232
+ events: {},
233
+ tag: 'div',
234
+ children: [],
235
+ style: {},
236
+ },
237
+ },
238
+ formulas: {},
239
+ apis: {},
240
+ attributes: {},
241
+ variables: {},
242
+ },
243
+ },
244
+ };
245
+ const filesClone = structuredClone(files);
246
+ const fixedFiles = fixProject({
247
+ files,
248
+ rule: noStaticNodeCondition,
249
+ fixType: 'remove-node',
250
+ pathsToVisit: [
251
+ ['components', 'test', 'nodes', 'alwaysHiddenElement', 'condition'],
252
+ ],
253
+ });
254
+ expect(fixedFiles).toEqual({
255
+ components: {
256
+ test: {
257
+ apis: {},
258
+ attributes: {},
259
+ formulas: {},
260
+ name: 'test',
261
+ nodes: {
262
+ root: {
263
+ attrs: {},
264
+ children: ['sometimesVisibleElement'],
265
+ classes: {},
266
+ events: {},
267
+ style: {},
268
+ tag: 'div',
269
+ type: 'element',
270
+ },
271
+ sometimesVisibleElement: {
272
+ attrs: {},
273
+ children: [],
274
+ classes: {},
275
+ condition: {
276
+ path: ['Variables', 'maybe'],
277
+ type: 'path',
278
+ },
279
+ events: {},
280
+ style: {},
281
+ tag: 'div',
282
+ type: 'element',
283
+ },
284
+ },
285
+ variables: {},
286
+ },
287
+ },
288
+ });
289
+ // Also ensure that the original files are not mutated
290
+ expect(files).toEqual(filesClone);
291
+ });
292
+ });
293
+ //# sourceMappingURL=noStaticNodeCondition.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noStaticNodeCondition.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/logic/noStaticNodeCondition.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula';
2
+ export const noUnnecessaryConditionFalsy = {
3
+ code: 'no-unnecessary-condition-falsy',
4
+ level: 'info',
5
+ category: 'Quality',
6
+ visit: (report, { path, value, nodeType }) => {
7
+ if (nodeType !== 'formula' || value.type !== 'and') {
8
+ return;
9
+ }
10
+ if (value.arguments.some((arg) => {
11
+ const { result, isStatic } = contextlessEvaluateFormula(arg.formula);
12
+ return isStatic && Boolean(result) === false;
13
+ })) {
14
+ report(path);
15
+ }
16
+ },
17
+ };
18
+ //# sourceMappingURL=noUnnecessaryConditionFalsy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noUnnecessaryConditionFalsy.js","sourceRoot":"","sources":["../../../../src/rules/issues/logic/noUnnecessaryConditionFalsy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAA;AAErF,MAAM,CAAC,MAAM,2BAA2B,GAAS;IAC/C,IAAI,EAAE,gCAAgC;IACtC,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC3C,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;YACnD,OAAM;QACR,CAAC;QAED,IACE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACpE,OAAO,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,CAAA;QAC9C,CAAC,CAAC,EACF,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,CAAA;QACd,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,95 @@
1
+ import { describe, expect, test } from 'bun:test';
2
+ import { searchProject } from '../../../searchProject';
3
+ import { noUnnecessaryConditionFalsy } from './noUnnecessaryConditionFalsy';
4
+ describe('noUnnecessaryConditionFalsy', () => {
5
+ test('should report unnecessary truthy conditions', () => {
6
+ const problems = Array.from(searchProject({
7
+ files: {
8
+ components: {
9
+ test: {
10
+ name: 'test',
11
+ nodes: {
12
+ root: {
13
+ type: 'element',
14
+ attrs: {
15
+ test: {
16
+ type: 'and',
17
+ arguments: [
18
+ {
19
+ formula: {
20
+ type: 'apply',
21
+ name: 'other',
22
+ arguments: [],
23
+ },
24
+ },
25
+ {
26
+ formula: {
27
+ type: 'value',
28
+ value: false,
29
+ },
30
+ },
31
+ ],
32
+ },
33
+ },
34
+ classes: {},
35
+ events: {},
36
+ tag: 'div',
37
+ children: [],
38
+ style: {},
39
+ },
40
+ },
41
+ formulas: {},
42
+ apis: {},
43
+ attributes: {},
44
+ variables: {},
45
+ },
46
+ },
47
+ },
48
+ rules: [noUnnecessaryConditionFalsy],
49
+ }));
50
+ expect(problems).toHaveLength(1);
51
+ expect(problems[0].code).toBe('no-unnecessary-condition-falsy');
52
+ });
53
+ test('should not report necessary truthy conditions', () => {
54
+ const problems = Array.from(searchProject({
55
+ files: {
56
+ components: {
57
+ test: {
58
+ name: 'test',
59
+ nodes: {
60
+ root: {
61
+ type: 'element',
62
+ attrs: {
63
+ test: {
64
+ type: 'or',
65
+ arguments: [
66
+ {
67
+ formula: {
68
+ type: 'apply',
69
+ name: 'other',
70
+ arguments: [],
71
+ },
72
+ },
73
+ ],
74
+ },
75
+ },
76
+ classes: {},
77
+ events: {},
78
+ tag: 'div',
79
+ children: [],
80
+ style: {},
81
+ },
82
+ },
83
+ formulas: {},
84
+ apis: {},
85
+ attributes: {},
86
+ variables: {},
87
+ },
88
+ },
89
+ },
90
+ rules: [noUnnecessaryConditionFalsy],
91
+ }));
92
+ expect(problems).toHaveLength(0);
93
+ });
94
+ });
95
+ //# sourceMappingURL=noUnnecessaryConditionFalsy.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noUnnecessaryConditionFalsy.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/logic/noUnnecessaryConditionFalsy.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,UAAU,CAAA;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACtD,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAA;AAE3E,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;IAC3C,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;QACvD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CACzB,aAAa,CAAC;YACZ,KAAK,EAAE;gBACL,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE;4BACL,IAAI,EAAE;gCACJ,IAAI,EAAE,SAAS;gCACf,KAAK,EAAE;oCACL,IAAI,EAAE;wCACJ,IAAI,EAAE,KAAK;wCACX,SAAS,EAAE;4CACT;gDACE,OAAO,EAAE;oDACP,IAAI,EAAE,OAAO;oDACb,IAAI,EAAE,OAAO;oDACb,SAAS,EAAE,EAAE;iDACd;6CACF;4CACD;gDACE,OAAO,EAAE;oDACP,IAAI,EAAE,OAAO;oDACb,KAAK,EAAE,KAAK;iDACb;6CACF;yCACF;qCACF;iCACF;gCACD,OAAO,EAAE,EAAE;gCACX,MAAM,EAAE,EAAE;gCACV,GAAG,EAAE,KAAK;gCACV,QAAQ,EAAE,EAAE;gCACZ,KAAK,EAAE,EAAE;6BACV;yBACF;wBACD,QAAQ,EAAE,EAAE;wBACZ,IAAI,EAAE,EAAE;wBACR,UAAU,EAAE,EAAE;wBACd,SAAS,EAAE,EAAE;qBACd;iBACF;aACF;YACD,KAAK,EAAE,CAAC,2BAA2B,CAAC;SACrC,CAAC,CACH,CAAA;QAED,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;QAChC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAA;IACjE,CAAC,CAAC,CAAA;IAEF,IAAI,CAAC,+CAA+C,EAAE,GAAG,EAAE;QACzD,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CACzB,aAAa,CAAC;YACZ,KAAK,EAAE;gBACL,UAAU,EAAE;oBACV,IAAI,EAAE;wBACJ,IAAI,EAAE,MAAM;wBACZ,KAAK,EAAE;4BACL,IAAI,EAAE;gCACJ,IAAI,EAAE,SAAS;gCACf,KAAK,EAAE;oCACL,IAAI,EAAE;wCACJ,IAAI,EAAE,IAAI;wCACV,SAAS,EAAE;4CACT;gDACE,OAAO,EAAE;oDACP,IAAI,EAAE,OAAO;oDACb,IAAI,EAAE,OAAO;oDACb,SAAS,EAAE,EAAE;iDACd;6CACF;yCACF;qCACF;iCACF;gCACD,OAAO,EAAE,EAAE;gCACX,MAAM,EAAE,EAAE;gCACV,GAAG,EAAE,KAAK;gCACV,QAAQ,EAAE,EAAE;gCACZ,KAAK,EAAE,EAAE;6BACV;yBACF;wBACD,QAAQ,EAAE,EAAE;wBACZ,IAAI,EAAE,EAAE;wBACR,UAAU,EAAE,EAAE;wBACd,SAAS,EAAE,EAAE;qBACd;iBACF;aACF;YACD,KAAK,EAAE,CAAC,2BAA2B,CAAC;SACrC,CAAC,CACH,CAAA;QAED,MAAM,CAAC,QAAQ,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
@@ -0,0 +1,22 @@
1
+ import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula';
2
+ export const noUnnecessaryConditionTruthy = {
3
+ code: 'no-unnecessary-condition-truthy',
4
+ level: 'info',
5
+ category: 'Quality',
6
+ visit: (report, { path, value, nodeType }) => {
7
+ if (nodeType !== 'formula' || value.type !== 'or') {
8
+ return;
9
+ }
10
+ if (value.arguments.some((arg) => {
11
+ // Objects and arrays, even empty ones, are always truthy
12
+ if (arg.formula.type === 'object' || arg.formula.type === 'array') {
13
+ return true;
14
+ }
15
+ const { result, isStatic } = contextlessEvaluateFormula(arg.formula);
16
+ return isStatic && Boolean(result) === true;
17
+ })) {
18
+ report(path);
19
+ }
20
+ },
21
+ };
22
+ //# sourceMappingURL=noUnnecessaryConditionTruthy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noUnnecessaryConditionTruthy.js","sourceRoot":"","sources":["../../../../src/rules/issues/logic/noUnnecessaryConditionTruthy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0BAA0B,EAAE,MAAM,0CAA0C,CAAA;AAErF,MAAM,CAAC,MAAM,4BAA4B,GAAS;IAChD,IAAI,EAAE,iCAAiC;IACvC,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;QAC3C,IAAI,QAAQ,KAAK,SAAS,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;YAClD,OAAM;QACR,CAAC;QAED,IACE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3B,yDAAyD;YACzD,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,GAAG,CAAC,OAAO,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAClE,OAAO,IAAI,CAAA;YACb,CAAC;YAED,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,0BAA0B,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;YACpE,OAAO,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,IAAI,CAAA;QAC7C,CAAC,CAAC,EACF,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,CAAA;QACd,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,148 @@
1
+ import { describe, expect, test } from 'bun:test';
2
+ import { searchProject } from '../../../searchProject';
3
+ import { noUnnecessaryConditionTruthy } from './noUnnecessaryConditionTruthy';
4
+ describe('noUnnecessaryConditionTruthy', () => {
5
+ test('should report unnecessary truthy conditions', () => {
6
+ const problems = Array.from(searchProject({
7
+ files: {
8
+ components: {
9
+ test: {
10
+ name: 'test',
11
+ nodes: {
12
+ root: {
13
+ type: 'element',
14
+ attrs: {
15
+ test: {
16
+ type: 'or',
17
+ arguments: [
18
+ {
19
+ formula: {
20
+ type: 'apply',
21
+ name: 'other',
22
+ arguments: [],
23
+ },
24
+ },
25
+ {
26
+ formula: {
27
+ type: 'value',
28
+ value: true,
29
+ },
30
+ },
31
+ ],
32
+ },
33
+ },
34
+ classes: {},
35
+ events: {},
36
+ tag: 'div',
37
+ children: [],
38
+ style: {},
39
+ },
40
+ },
41
+ formulas: {},
42
+ apis: {},
43
+ attributes: {},
44
+ variables: {},
45
+ },
46
+ },
47
+ },
48
+ rules: [noUnnecessaryConditionTruthy],
49
+ }));
50
+ expect(problems).toHaveLength(1);
51
+ expect(problems[0].code).toBe('no-unnecessary-condition-truthy');
52
+ });
53
+ test('should report unnecessary truthy conditions when a value is of type object or array as they are always consider truthy', () => {
54
+ const problems = Array.from(searchProject({
55
+ files: {
56
+ components: {
57
+ test: {
58
+ name: 'test',
59
+ nodes: {
60
+ root: {
61
+ type: 'element',
62
+ attrs: {
63
+ test1: {
64
+ type: 'or',
65
+ arguments: [
66
+ {
67
+ formula: {
68
+ type: 'object',
69
+ arguments: [],
70
+ },
71
+ },
72
+ ],
73
+ },
74
+ test2: {
75
+ type: 'or',
76
+ arguments: [
77
+ {
78
+ formula: {
79
+ type: 'array',
80
+ arguments: [],
81
+ },
82
+ },
83
+ ],
84
+ },
85
+ },
86
+ classes: {},
87
+ events: {},
88
+ tag: 'div',
89
+ children: [],
90
+ style: {},
91
+ },
92
+ },
93
+ formulas: {},
94
+ apis: {},
95
+ attributes: {},
96
+ variables: {},
97
+ },
98
+ },
99
+ },
100
+ rules: [noUnnecessaryConditionTruthy],
101
+ }));
102
+ expect(problems).toHaveLength(2);
103
+ expect(problems[0].code).toBe('no-unnecessary-condition-truthy');
104
+ expect(problems[1].code).toBe('no-unnecessary-condition-truthy');
105
+ });
106
+ test('should not report necessary truthy conditions', () => {
107
+ const problems = Array.from(searchProject({
108
+ files: {
109
+ components: {
110
+ test: {
111
+ name: 'test',
112
+ nodes: {
113
+ root: {
114
+ type: 'element',
115
+ attrs: {
116
+ test: {
117
+ type: 'or',
118
+ arguments: [
119
+ {
120
+ formula: {
121
+ type: 'apply',
122
+ name: 'other',
123
+ arguments: [],
124
+ },
125
+ },
126
+ ],
127
+ },
128
+ },
129
+ classes: {},
130
+ events: {},
131
+ tag: 'div',
132
+ children: [],
133
+ style: {},
134
+ },
135
+ },
136
+ formulas: {},
137
+ apis: {},
138
+ attributes: {},
139
+ variables: {},
140
+ },
141
+ },
142
+ },
143
+ rules: [noUnnecessaryConditionTruthy],
144
+ }));
145
+ expect(problems).toHaveLength(0);
146
+ });
147
+ });
148
+ //# sourceMappingURL=noUnnecessaryConditionTruthy.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noUnnecessaryConditionTruthy.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/logic/noUnnecessaryConditionTruthy.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { noReferenceNodeRule } from './noReferenceNodeRule';
2
+ import { requireExtensionRule } from './requireExtensionRule';
3
+ import { unknownCookieRule } from './unknownCookieRule';
4
+ export default [noReferenceNodeRule, requireExtensionRule, unknownCookieRule];
5
+ //# sourceMappingURL=miscRules.index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"miscRules.index.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/miscRules.index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAA;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAEvD,eAAe,CAAC,mBAAmB,EAAE,oBAAoB,EAAE,iBAAiB,CAAC,CAAA"}
@@ -0,0 +1,24 @@
1
+ import { removeNodeFromPathFix } from '../../../util/removeUnused.fix';
2
+ export const noReferenceNodeRule = {
3
+ code: 'no-reference node',
4
+ level: 'warning',
5
+ category: 'No References',
6
+ visit: (report, args) => {
7
+ if (args.nodeType !== 'component-node') {
8
+ return;
9
+ }
10
+ const { path, component } = args;
11
+ const nodeId = path.at(-1);
12
+ if (typeof nodeId !== 'string') {
13
+ return;
14
+ }
15
+ const referencedNodesInComponent = args.memo(`node-references-${component.name}`, () => new Set(Object.values(component.nodes).flatMap((node) => node.children ?? [])));
16
+ if (nodeId !== 'root' && !referencedNodesInComponent.has(nodeId)) {
17
+ report(path, { node: nodeId }, ['delete-orphan-node']);
18
+ }
19
+ },
20
+ fixes: {
21
+ 'delete-orphan-node': removeNodeFromPathFix,
22
+ },
23
+ };
24
+ //# sourceMappingURL=noReferenceNodeRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceNodeRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/noReferenceNodeRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAEtE,MAAM,CAAC,MAAM,mBAAmB,GAA2B;IACzD,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YACvC,OAAM;QACR,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QAChC,MAAM,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAM;QACR,CAAC;QACD,MAAM,0BAA0B,GAAG,IAAI,CAAC,IAAI,CAC1C,mBAAmB,SAAS,CAAC,IAAI,EAAE,EACnC,GAAG,EAAE,CACH,IAAI,GAAG,CACL,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CACtE,CACJ,CAAA;QAED,IAAI,MAAM,KAAK,MAAM,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACjE,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;QACxD,CAAC;IACH,CAAC;IACD,KAAK,EAAE;QACL,oBAAoB,EAAE,qBAAqB;KAC5C;CACF,CAAA"}