@nordcraft/search 1.0.53 → 1.0.55

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 +3 -0
  211. package/dist/rules/issues/slots/slotRules.index.js.map +1 -0
  212. package/dist/rules/issues/slots/unknownComponentSlotRule.js.map +1 -0
  213. package/dist/rules/issues/slots/unknownComponentSlotRule.test.js +163 -0
  214. package/dist/rules/issues/slots/unknownComponentSlotRule.test.js.map +1 -0
  215. package/dist/rules/issues/style/invalidStyleSyntaxRule.js +28 -0
  216. package/dist/rules/issues/style/invalidStyleSyntaxRule.js.map +1 -0
  217. package/dist/rules/issues/style/invalidStyleSyntaxRule.test.js +286 -0
  218. package/dist/rules/issues/style/invalidStyleSyntaxRule.test.js.map +1 -0
  219. package/dist/rules/issues/style/styleRules.index.js +4 -0
  220. package/dist/rules/issues/style/styleRules.index.js.map +1 -0
  221. package/dist/rules/issues/style/unknownClassnameRule.js +16 -0
  222. package/dist/rules/issues/style/unknownClassnameRule.js.map +1 -0
  223. package/dist/rules/issues/style/unknownClassnameRule.test.js +87 -0
  224. package/dist/rules/issues/style/unknownClassnameRule.test.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 +3 -0
  390. package/src/rules/issues/slots/unknownComponentSlotRule.test.ts +170 -0
  391. package/src/rules/issues/slots/unknownComponentSlotRule.ts +50 -0
  392. package/src/rules/issues/style/invalidStyleSyntaxRule.test.ts +303 -0
  393. package/src/rules/issues/style/invalidStyleSyntaxRule.ts +35 -0
  394. package/src/rules/issues/style/styleRules.index.ts +4 -0
  395. package/src/rules/issues/style/unknownClassnameRule.test.ts +94 -0
  396. package/src/rules/issues/style/unknownClassnameRule.ts +21 -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,147 @@
1
+ import { pathFormula, valueFormula, } from '@nordcraft/core/dist/formula/formulaUtils';
2
+ import { describe, expect, test } from 'bun:test';
3
+ import { searchProject } from '../../../searchProject';
4
+ import { noReferenceApiInputRule } from './noReferenceApiInputRule';
5
+ describe('noReferenceApiInputRule', () => {
6
+ test('should detect API inputs with no references', () => {
7
+ const problems = Array.from(searchProject({
8
+ files: {
9
+ formulas: {},
10
+ components: {
11
+ apiComponent: {
12
+ name: 'test',
13
+ nodes: {},
14
+ formulas: {},
15
+ apis: {
16
+ 'my-api': {
17
+ name: 'my-api',
18
+ type: 'http',
19
+ version: 2,
20
+ autoFetch: valueFormula(true),
21
+ inputs: {
22
+ first: { formula: valueFormula('hello') },
23
+ second: { formula: valueFormula('world') },
24
+ },
25
+ body: {
26
+ type: 'path',
27
+ path: ['Args', 'first'],
28
+ },
29
+ '@nordcraft/metadata': {
30
+ comments: null,
31
+ },
32
+ },
33
+ },
34
+ attributes: {},
35
+ variables: {},
36
+ },
37
+ },
38
+ },
39
+ rules: [noReferenceApiInputRule],
40
+ }));
41
+ expect(problems).toHaveLength(1);
42
+ expect(problems[0].code).toBe('no-reference api input');
43
+ expect(problems[0].path).toEqual([
44
+ 'components',
45
+ 'apiComponent',
46
+ 'apis',
47
+ 'my-api',
48
+ 'inputs',
49
+ 'second',
50
+ ]);
51
+ });
52
+ test('should not detect APIs with references from formulas', () => {
53
+ const problems = Array.from(searchProject({
54
+ files: {
55
+ formulas: {},
56
+ components: {
57
+ apiComponent: {
58
+ name: 'test',
59
+ nodes: {
60
+ root: {
61
+ type: 'element',
62
+ tag: 'p',
63
+ attrs: {},
64
+ condition: pathFormula(['Apis', 'my-api', 'data', 'success']),
65
+ style: {},
66
+ children: [],
67
+ classes: {},
68
+ events: {},
69
+ },
70
+ },
71
+ formulas: {},
72
+ apis: {
73
+ 'my-api': {
74
+ name: 'my-api',
75
+ type: 'http',
76
+ version: 2,
77
+ autoFetch: valueFormula(true),
78
+ inputs: {},
79
+ '@nordcraft/metadata': {
80
+ comments: null,
81
+ },
82
+ },
83
+ },
84
+ attributes: {},
85
+ variables: {},
86
+ },
87
+ },
88
+ },
89
+ rules: [noReferenceApiInputRule],
90
+ }));
91
+ expect(problems).toEqual([]);
92
+ });
93
+ test('should not detect APIs with references from actions', () => {
94
+ const problems = Array.from(searchProject({
95
+ files: {
96
+ formulas: {},
97
+ components: {
98
+ apiComponent: {
99
+ name: 'test',
100
+ nodes: {
101
+ root: {
102
+ type: 'element',
103
+ tag: 'button',
104
+ attrs: {},
105
+ style: {},
106
+ children: [],
107
+ classes: {},
108
+ events: {
109
+ onClick: {
110
+ trigger: 'onClick',
111
+ actions: [
112
+ {
113
+ type: 'Fetch',
114
+ api: 'my-api',
115
+ inputs: {},
116
+ onSuccess: { actions: [] },
117
+ onError: { actions: [] },
118
+ },
119
+ ],
120
+ },
121
+ },
122
+ },
123
+ },
124
+ formulas: {},
125
+ apis: {
126
+ 'my-api': {
127
+ name: 'my-api',
128
+ type: 'http',
129
+ version: 2,
130
+ autoFetch: valueFormula(true),
131
+ inputs: {},
132
+ '@nordcraft/metadata': {
133
+ comments: null,
134
+ },
135
+ },
136
+ },
137
+ attributes: {},
138
+ variables: {},
139
+ },
140
+ },
141
+ },
142
+ rules: [noReferenceApiInputRule],
143
+ }));
144
+ expect(problems).toEqual([]);
145
+ });
146
+ });
147
+ //# sourceMappingURL=noReferenceApiInputRule.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceApiInputRule.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/noReferenceApiInputRule.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { removeFromPathFix } from '../../../util/removeUnused.fix';
2
+ export const noReferenceApiRule = {
3
+ code: 'no-reference api',
4
+ level: 'warning',
5
+ category: 'No References',
6
+ visit: (report, args) => {
7
+ if (args.nodeType !== 'component-api') {
8
+ return;
9
+ }
10
+ const { value, memo, component } = args;
11
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
12
+ if (!component) {
13
+ return;
14
+ }
15
+ const componentApiReferences = memo(`componentApiReferences/${component.name}]`, () => {
16
+ const usedApis = new Set();
17
+ for (const { formula } of component.formulasInComponent()) {
18
+ if (formula.type === 'path' &&
19
+ formula.path[0] === 'Apis' &&
20
+ typeof formula.path[1] === 'string') {
21
+ usedApis.add(formula.path[1]);
22
+ }
23
+ }
24
+ for (const [, action] of component.actionModelsInComponent()) {
25
+ if (action.type === 'Fetch') {
26
+ usedApis.add(action.api);
27
+ }
28
+ }
29
+ return usedApis;
30
+ });
31
+ if (componentApiReferences.has(value.name)) {
32
+ return;
33
+ }
34
+ report(args.path, undefined, ['delete-api']);
35
+ },
36
+ fixes: {
37
+ 'delete-api': removeFromPathFix,
38
+ },
39
+ };
40
+ //# sourceMappingURL=noReferenceApiRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceApiRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/noReferenceApiRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,kBAAkB,GAAe;IAC5C,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QACvC,uEAAuE;QACvE,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAM;QACR,CAAC;QAED,MAAM,sBAAsB,GAAG,IAAI,CACjC,0BAA0B,SAAS,CAAC,IAAI,GAAG,EAC3C,GAAG,EAAE;YACH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;YAClC,KAAK,MAAM,EAAE,OAAO,EAAE,IAAI,SAAS,CAAC,mBAAmB,EAAE,EAAE,CAAC;gBAC1D,IACE,OAAO,CAAC,IAAI,KAAK,MAAM;oBACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,MAAM;oBAC1B,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,EACnC,CAAC;oBACD,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC/B,CAAC;YACH,CAAC;YACD,KAAK,MAAM,CAAC,EAAE,MAAM,CAAC,IAAI,SAAS,CAAC,uBAAuB,EAAE,EAAE,CAAC;gBAC7D,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC5B,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC1B,CAAC;YACH,CAAC;YACD,OAAO,QAAQ,CAAA;QACjB,CAAC,CACF,CAAA;QACD,IAAI,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,OAAM;QACR,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,CAAC,CAAA;IAC9C,CAAC;IACD,KAAK,EAAE;QACL,YAAY,EAAE,iBAAiB;KAChC;CACF,CAAA"}
@@ -0,0 +1,216 @@
1
+ import { pathFormula, valueFormula, } from '@nordcraft/core/dist/formula/formulaUtils';
2
+ import { describe, expect, test } from 'bun:test';
3
+ import { fixProject } from '../../../fixProject';
4
+ import { searchProject } from '../../../searchProject';
5
+ import { noReferenceApiRule } from './noReferenceApiRule';
6
+ describe('find noReferenceApiRule', () => {
7
+ test('should detect APIs with no references', () => {
8
+ const problems = Array.from(searchProject({
9
+ files: {
10
+ formulas: {},
11
+ components: {
12
+ apiComponent: {
13
+ name: 'test',
14
+ nodes: {},
15
+ formulas: {},
16
+ apis: {
17
+ 'my-legacy-api': {
18
+ name: 'my-legacy-api',
19
+ type: 'REST',
20
+ autoFetch: valueFormula(true),
21
+ onCompleted: null,
22
+ onFailed: null,
23
+ },
24
+ 'my-api': {
25
+ name: 'my-api',
26
+ type: 'http',
27
+ version: 2,
28
+ autoFetch: valueFormula(true),
29
+ inputs: {},
30
+ '@nordcraft/metadata': {
31
+ comments: null,
32
+ },
33
+ },
34
+ },
35
+ attributes: {},
36
+ variables: {},
37
+ },
38
+ },
39
+ },
40
+ rules: [noReferenceApiRule],
41
+ }));
42
+ expect(problems).toHaveLength(2);
43
+ expect(problems[0].code).toBe('no-reference api');
44
+ expect(problems[0].path).toEqual([
45
+ 'components',
46
+ 'apiComponent',
47
+ 'apis',
48
+ 'my-legacy-api',
49
+ ]);
50
+ expect(problems[1].code).toBe('no-reference api');
51
+ expect(problems[1].path).toEqual([
52
+ 'components',
53
+ 'apiComponent',
54
+ 'apis',
55
+ 'my-api',
56
+ ]);
57
+ });
58
+ test('should not detect APIs with references from formulas', () => {
59
+ const problems = Array.from(searchProject({
60
+ files: {
61
+ formulas: {},
62
+ components: {
63
+ apiComponent: {
64
+ name: 'test',
65
+ nodes: {
66
+ root: {
67
+ type: 'element',
68
+ tag: 'p',
69
+ attrs: {},
70
+ condition: pathFormula(['Apis', 'my-api', 'data', 'success']),
71
+ style: {},
72
+ children: [],
73
+ classes: {},
74
+ events: {},
75
+ },
76
+ },
77
+ formulas: {},
78
+ apis: {
79
+ 'my-api': {
80
+ name: 'my-api',
81
+ type: 'http',
82
+ version: 2,
83
+ autoFetch: valueFormula(true),
84
+ inputs: {},
85
+ '@nordcraft/metadata': {
86
+ comments: null,
87
+ },
88
+ },
89
+ },
90
+ attributes: {},
91
+ variables: {},
92
+ },
93
+ },
94
+ },
95
+ rules: [noReferenceApiRule],
96
+ }));
97
+ expect(problems).toEqual([]);
98
+ });
99
+ test('should not detect APIs with references from actions', () => {
100
+ const problems = Array.from(searchProject({
101
+ files: {
102
+ formulas: {},
103
+ components: {
104
+ apiComponent: {
105
+ name: 'test',
106
+ nodes: {
107
+ root: {
108
+ type: 'element',
109
+ tag: 'button',
110
+ attrs: {},
111
+ style: {},
112
+ children: [],
113
+ classes: {},
114
+ events: {
115
+ onClick: {
116
+ trigger: 'onClick',
117
+ actions: [
118
+ {
119
+ type: 'Fetch',
120
+ api: 'my-api',
121
+ inputs: {},
122
+ onSuccess: { actions: [] },
123
+ onError: { actions: [] },
124
+ },
125
+ ],
126
+ },
127
+ },
128
+ },
129
+ },
130
+ formulas: {},
131
+ apis: {
132
+ 'my-api': {
133
+ name: 'my-api',
134
+ type: 'http',
135
+ version: 2,
136
+ autoFetch: valueFormula(true),
137
+ inputs: {},
138
+ '@nordcraft/metadata': {
139
+ comments: null,
140
+ },
141
+ },
142
+ },
143
+ attributes: {},
144
+ variables: {},
145
+ },
146
+ },
147
+ },
148
+ rules: [noReferenceApiRule],
149
+ }));
150
+ expect(problems).toEqual([]);
151
+ });
152
+ });
153
+ describe('fix noReferenceApiRule', () => {
154
+ test('should remove unused APIs', () => {
155
+ const project = {
156
+ formulas: {},
157
+ components: {
158
+ apiComponent: {
159
+ name: 'test',
160
+ nodes: {},
161
+ formulas: {},
162
+ apis: {
163
+ 'my-legacy-api': {
164
+ name: 'my-legacy-api',
165
+ type: 'REST',
166
+ autoFetch: valueFormula(true),
167
+ onCompleted: null,
168
+ onFailed: null,
169
+ },
170
+ 'my-api': {
171
+ name: 'my-api',
172
+ type: 'http',
173
+ version: 2,
174
+ autoFetch: valueFormula(true),
175
+ inputs: {},
176
+ '@nordcraft/metadata': {
177
+ comments: null,
178
+ },
179
+ },
180
+ 'used-api': {
181
+ name: 'used-api',
182
+ type: 'http',
183
+ version: 2,
184
+ autoFetch: valueFormula(true),
185
+ inputs: {},
186
+ },
187
+ },
188
+ onLoad: {
189
+ trigger: 'onLoad',
190
+ actions: [
191
+ {
192
+ type: 'Fetch',
193
+ api: 'used-api',
194
+ inputs: {},
195
+ onSuccess: { actions: [] },
196
+ onError: { actions: [] },
197
+ },
198
+ ],
199
+ },
200
+ attributes: {},
201
+ variables: {},
202
+ },
203
+ },
204
+ };
205
+ const fixedProject = fixProject({
206
+ files: project,
207
+ rule: noReferenceApiRule,
208
+ fixType: 'delete-api',
209
+ });
210
+ // 2/3 APIs should be removed
211
+ expect(Object.keys(fixedProject.components['apiComponent'].apis)).toEqual([
212
+ 'used-api',
213
+ ]);
214
+ });
215
+ });
216
+ //# sourceMappingURL=noReferenceApiRule.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceApiRule.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/noReferenceApiRule.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import { isLegacyApi } from '@nordcraft/core/dist/api/api';
2
+ import { removeFromPathFix } from '../../../util/removeUnused.fix';
3
+ export const noReferenceApiServiceRule = {
4
+ code: 'no-reference api service',
5
+ level: 'warning',
6
+ category: 'No References',
7
+ visit: (report, args) => {
8
+ if (args.nodeType !== 'api-service') {
9
+ return;
10
+ }
11
+ const { value, memo, path } = args;
12
+ const serviceName = path.at(-1);
13
+ if (typeof serviceName !== 'string') {
14
+ return;
15
+ }
16
+ const apiServiceReferences = memo(`apiServiceReferences`, () => {
17
+ const usedServices = new Set();
18
+ Object.values(args.files.components).forEach((component) => {
19
+ if (!component) {
20
+ return;
21
+ }
22
+ Object.values(component.apis).forEach((api) => {
23
+ if (!isLegacyApi(api) && typeof api.service === 'string') {
24
+ usedServices.add(api.service);
25
+ }
26
+ });
27
+ });
28
+ return usedServices;
29
+ });
30
+ if (apiServiceReferences.has(value.name)) {
31
+ return;
32
+ }
33
+ report(args.path, { serviceName }, ['delete-api-service']);
34
+ },
35
+ fixes: {
36
+ 'delete-api-service': removeFromPathFix,
37
+ },
38
+ };
39
+ //# sourceMappingURL=noReferenceApiServiceRule.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceApiServiceRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/noReferenceApiServiceRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAE1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,yBAAyB,GAAkC;IACtE,IAAI,EAAE,0BAA0B;IAChC,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,IAAI,CAAC,QAAQ,KAAK,aAAa,EAAE,CAAC;YACpC,OAAM;QACR,CAAC;QACD,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/B,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAM;QACR,CAAC;QAED,MAAM,oBAAoB,GAAG,IAAI,CAAC,sBAAsB,EAAE,GAAG,EAAE;YAC7D,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAA;YACtC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;gBACzD,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,OAAM;gBACR,CAAC;gBACD,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;oBAC5C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;wBACzD,YAAY,CAAC,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;oBAC/B,CAAC;gBACH,CAAC,CAAC,CAAA;YACJ,CAAC,CAAC,CAAA;YACF,OAAO,YAAY,CAAA;QACrB,CAAC,CAAC,CAAA;QACF,IAAI,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACzC,OAAM;QACR,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,oBAAoB,CAAC,CAAC,CAAA;IAC5D,CAAC;IACD,KAAK,EAAE;QACL,oBAAoB,EAAE,iBAAiB;KACxC;CACF,CAAA"}
@@ -0,0 +1,98 @@
1
+ import { valueFormula } from '@nordcraft/core/dist/formula/formulaUtils';
2
+ import { describe, expect, test } from 'bun:test';
3
+ import { fixProject } from '../../../fixProject';
4
+ import { searchProject } from '../../../searchProject';
5
+ import { noReferenceApiServiceRule } from './noReferenceApiServiceRule';
6
+ describe('find noReferenceApiServiceRule', () => {
7
+ test('should detect API services with no references', () => {
8
+ const problems = Array.from(searchProject({
9
+ files: {
10
+ formulas: {},
11
+ services: {
12
+ 'unused-service': {
13
+ name: 'my-service',
14
+ type: 'supabase',
15
+ meta: {},
16
+ },
17
+ 'used-service': {
18
+ name: 'used-service',
19
+ type: 'supabase',
20
+ meta: {},
21
+ },
22
+ },
23
+ components: {
24
+ apiComponent: {
25
+ name: 'test',
26
+ nodes: {},
27
+ formulas: {},
28
+ apis: {
29
+ 'my-api': {
30
+ name: 'my-api',
31
+ type: 'http',
32
+ version: 2,
33
+ autoFetch: valueFormula(true),
34
+ inputs: {},
35
+ service: 'used-service',
36
+ },
37
+ },
38
+ attributes: {},
39
+ variables: {},
40
+ },
41
+ },
42
+ },
43
+ rules: [noReferenceApiServiceRule],
44
+ }));
45
+ expect(problems).toHaveLength(1);
46
+ expect(problems[0].code).toBe('no-reference api service');
47
+ expect(problems[0].path).toEqual(['services', 'unused-service']);
48
+ });
49
+ });
50
+ describe('fix noReferenceApiServiceRule', () => {
51
+ test('should remove unused API services', () => {
52
+ const project = {
53
+ formulas: {},
54
+ services: {
55
+ 'unused-service': {
56
+ name: 'my-service',
57
+ type: 'supabase',
58
+ meta: {},
59
+ },
60
+ 'used-service': {
61
+ name: 'used-service',
62
+ type: 'supabase',
63
+ meta: {},
64
+ },
65
+ },
66
+ components: {
67
+ apiComponent: {
68
+ name: 'test',
69
+ nodes: {},
70
+ formulas: {},
71
+ apis: {
72
+ 'my-api': {
73
+ name: 'my-api',
74
+ type: 'http',
75
+ version: 2,
76
+ autoFetch: valueFormula(true),
77
+ inputs: {},
78
+ service: 'used-service',
79
+ },
80
+ },
81
+ onLoad: {
82
+ trigger: 'onLoad',
83
+ actions: [],
84
+ },
85
+ attributes: {},
86
+ variables: {},
87
+ },
88
+ },
89
+ };
90
+ const fixedProject = fixProject({
91
+ files: project,
92
+ rule: noReferenceApiServiceRule,
93
+ fixType: 'delete-api-service',
94
+ });
95
+ expect(Object.keys(fixedProject.services)).toHaveLength(1);
96
+ });
97
+ });
98
+ //# sourceMappingURL=noReferenceApiServiceRule.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"noReferenceApiServiceRule.test.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/noReferenceApiServiceRule.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"unknownApiInputRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/apis/unknownApiInputRule.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,mBAAmB,GAE3B;IACH,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE;QAClD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW;YAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ;YACjC,IAAI,CAAC,MAAM,GAAG,CAAC,EACf,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,CAAC,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,IAAI,CAAA;QACxD,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;YAC/B,OAAM;QACR,CAAC;QACD,MAAM,QAAQ,GACZ,KAAK,CAAC,UAAU,EAAE,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,CAAC,MAAM,CAGjD,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;QACvC,CAAC;IACH,CAAC;CACF,CAAA"}
@@ -0,0 +1,79 @@
1
+ import { valueFormula } from '@nordcraft/core/dist/formula/formulaUtils';
2
+ import { describe, expect, test } from 'bun:test';
3
+ import { searchProject } from '../../../searchProject';
4
+ import { unknownApiInputRule } from './unknownApiInputRule';
5
+ describe('unknownApiInput', () => {
6
+ test('should report reading unknown api inputs from a formula', () => {
7
+ const problems = Array.from(searchProject({
8
+ files: {
9
+ components: {
10
+ test: {
11
+ name: 'test',
12
+ nodes: {},
13
+ formulas: {},
14
+ apis: {
15
+ 'my-api': {
16
+ name: 'my-api',
17
+ type: 'http',
18
+ version: 2,
19
+ autoFetch: valueFormula(true),
20
+ inputs: {},
21
+ body: {
22
+ type: 'path',
23
+ path: ['ApiInputs', 'unknown-input'],
24
+ },
25
+ '@nordcraft/metadata': {
26
+ comments: null,
27
+ },
28
+ },
29
+ },
30
+ attributes: {},
31
+ variables: {},
32
+ },
33
+ },
34
+ },
35
+ rules: [unknownApiInputRule],
36
+ }));
37
+ expect(problems).toHaveLength(1);
38
+ expect(problems[0].code).toBe('unknown api input');
39
+ expect(problems[0].details).toEqual({ name: 'unknown-input' });
40
+ });
41
+ test('should not report API inputs that exist', () => {
42
+ const problems = Array.from(searchProject({
43
+ files: {
44
+ components: {
45
+ test: {
46
+ name: 'test',
47
+ nodes: {},
48
+ formulas: {},
49
+ apis: {
50
+ 'my-api': {
51
+ name: 'my-api',
52
+ type: 'http',
53
+ version: 2,
54
+ autoFetch: valueFormula(true),
55
+ inputs: {
56
+ 'known-input': {
57
+ formula: valueFormula('hello'),
58
+ },
59
+ },
60
+ body: {
61
+ type: 'path',
62
+ path: ['ApiInputs', 'known-input'],
63
+ },
64
+ '@nordcraft/metadata': {
65
+ comments: null,
66
+ },
67
+ },
68
+ },
69
+ attributes: {},
70
+ variables: {},
71
+ },
72
+ },
73
+ },
74
+ rules: [unknownApiInputRule],
75
+ }));
76
+ expect(problems).toEqual([]);
77
+ });
78
+ });
79
+ //# sourceMappingURL=unknownApiInputRule.test.js.map