@nordcraft/search 1.0.85 → 1.0.87

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 (257) hide show
  1. package/dist/rules/issues/actions/actionRules.index.js +4 -0
  2. package/dist/rules/issues/actions/actionRules.index.js.map +1 -1
  3. package/dist/rules/issues/actions/createActionNameRule.d.ts +5 -1
  4. package/dist/rules/issues/actions/createActionNameRule.js +6 -2
  5. package/dist/rules/issues/actions/createActionNameRule.js.map +1 -1
  6. package/dist/rules/issues/actions/duplicateActionArgumentNameRule.js +8 -1
  7. package/dist/rules/issues/actions/duplicateActionArgumentNameRule.js.map +1 -1
  8. package/dist/rules/issues/actions/legacyActionRule.js +18 -8
  9. package/dist/rules/issues/actions/legacyActionRule.js.map +1 -1
  10. package/dist/rules/issues/actions/noReferenceProjectActionRule.js +8 -1
  11. package/dist/rules/issues/actions/noReferenceProjectActionRule.js.map +1 -1
  12. package/dist/rules/issues/actions/unknownActionArgumentRule.js +23 -6
  13. package/dist/rules/issues/actions/unknownActionArgumentRule.js.map +1 -1
  14. package/dist/rules/issues/actions/unknownActionEventRule.js +11 -3
  15. package/dist/rules/issues/actions/unknownActionEventRule.js.map +1 -1
  16. package/dist/rules/issues/actions/unknownProjectActionRule.js +8 -1
  17. package/dist/rules/issues/actions/unknownProjectActionRule.js.map +1 -1
  18. package/dist/rules/issues/apis/invalidApiParserModeRule.js +8 -1
  19. package/dist/rules/issues/apis/invalidApiParserModeRule.js.map +1 -1
  20. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.js +8 -1
  21. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.js.map +1 -1
  22. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.js +8 -1
  23. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.js.map +1 -1
  24. package/dist/rules/issues/apis/legacyApiRule.js +8 -1
  25. package/dist/rules/issues/apis/legacyApiRule.js.map +1 -1
  26. package/dist/rules/issues/apis/noReferenceApiInputRule.js +8 -1
  27. package/dist/rules/issues/apis/noReferenceApiInputRule.js.map +1 -1
  28. package/dist/rules/issues/apis/noReferenceApiRule.js +8 -1
  29. package/dist/rules/issues/apis/noReferenceApiRule.js.map +1 -1
  30. package/dist/rules/issues/apis/noReferenceApiServiceRule.js +9 -1
  31. package/dist/rules/issues/apis/noReferenceApiServiceRule.js.map +1 -1
  32. package/dist/rules/issues/apis/unknownApiInputRule.js +8 -1
  33. package/dist/rules/issues/apis/unknownApiInputRule.js.map +1 -1
  34. package/dist/rules/issues/apis/unknownApiRule.js +16 -2
  35. package/dist/rules/issues/apis/unknownApiRule.js.map +1 -1
  36. package/dist/rules/issues/apis/unknownApiServiceRule.js +9 -1
  37. package/dist/rules/issues/apis/unknownApiServiceRule.js.map +1 -1
  38. package/dist/rules/issues/apis/unknownFetchInputRule.js +9 -1
  39. package/dist/rules/issues/apis/unknownFetchInputRule.js.map +1 -1
  40. package/dist/rules/issues/attributes/noReferenceAttributeInInstanceRule.js +9 -2
  41. package/dist/rules/issues/attributes/noReferenceAttributeInInstanceRule.js.map +1 -1
  42. package/dist/rules/issues/attributes/noReferenceAttributeRule.js +8 -1
  43. package/dist/rules/issues/attributes/noReferenceAttributeRule.js.map +1 -1
  44. package/dist/rules/issues/attributes/unknownAttributeRule.js +8 -1
  45. package/dist/rules/issues/attributes/unknownAttributeRule.js.map +1 -1
  46. package/dist/rules/issues/attributes/unknownComponentAttributeRule.js +9 -3
  47. package/dist/rules/issues/attributes/unknownComponentAttributeRule.js.map +1 -1
  48. package/dist/rules/issues/components/invalidComponentStructureRule.js +12 -4
  49. package/dist/rules/issues/components/invalidComponentStructureRule.js.map +1 -1
  50. package/dist/rules/issues/components/noReferenceComponentRule.js +8 -1
  51. package/dist/rules/issues/components/noReferenceComponentRule.js.map +1 -1
  52. package/dist/rules/issues/components/unknownComponentRule.js +8 -1
  53. package/dist/rules/issues/components/unknownComponentRule.js.map +1 -1
  54. package/dist/rules/issues/context/noContextConsumersRule.js +7 -1
  55. package/dist/rules/issues/context/noContextConsumersRule.js.map +1 -1
  56. package/dist/rules/issues/context/unknownContextFormulaRule.js +10 -3
  57. package/dist/rules/issues/context/unknownContextFormulaRule.js.map +1 -1
  58. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js +10 -3
  59. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js.map +1 -1
  60. package/dist/rules/issues/context/unknownContextProviderRule.js +8 -1
  61. package/dist/rules/issues/context/unknownContextProviderRule.js.map +1 -1
  62. package/dist/rules/issues/dom/createRequiredDirectChildRule.js +11 -4
  63. package/dist/rules/issues/dom/createRequiredDirectChildRule.js.map +1 -1
  64. package/dist/rules/issues/dom/createRequiredDirectParentRule.js +11 -4
  65. package/dist/rules/issues/dom/createRequiredDirectParentRule.js.map +1 -1
  66. package/dist/rules/issues/dom/createRequiredElementAttributeRule.js +8 -1
  67. package/dist/rules/issues/dom/createRequiredElementAttributeRule.js.map +1 -1
  68. package/dist/rules/issues/dom/createRequiredMetaTagRule.js +10 -1
  69. package/dist/rules/issues/dom/createRequiredMetaTagRule.js.map +1 -1
  70. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js +16 -3
  71. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js.map +1 -1
  72. package/dist/rules/issues/dom/imageWithoutDimensionRule.js +7 -1
  73. package/dist/rules/issues/dom/imageWithoutDimensionRule.js.map +1 -1
  74. package/dist/rules/issues/dom/nonEmptyVoidElementRule.js +8 -1
  75. package/dist/rules/issues/dom/nonEmptyVoidElementRule.js.map +1 -1
  76. package/dist/rules/issues/events/duplicateEventTriggerRule.js +8 -1
  77. package/dist/rules/issues/events/duplicateEventTriggerRule.js.map +1 -1
  78. package/dist/rules/issues/events/noReferenceEventRule.js +9 -1
  79. package/dist/rules/issues/events/noReferenceEventRule.js.map +1 -1
  80. package/dist/rules/issues/events/unknownEventRule.js +8 -1
  81. package/dist/rules/issues/events/unknownEventRule.js.map +1 -1
  82. package/dist/rules/issues/events/unknownTriggerEventRule.js +8 -1
  83. package/dist/rules/issues/events/unknownTriggerEventRule.js.map +1 -1
  84. package/dist/rules/issues/formulas/duplicateFormulaArgumentNameRule.js +8 -1
  85. package/dist/rules/issues/formulas/duplicateFormulaArgumentNameRule.js.map +1 -1
  86. package/dist/rules/issues/formulas/legacyFormulaRule.js +12 -5
  87. package/dist/rules/issues/formulas/legacyFormulaRule.js.map +1 -1
  88. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.js +14 -4
  89. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.js.map +1 -1
  90. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.js +8 -1
  91. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.js.map +1 -1
  92. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.js +8 -1
  93. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.js.map +1 -1
  94. package/dist/rules/issues/formulas/unknownFormulaRule.js +8 -1
  95. package/dist/rules/issues/formulas/unknownFormulaRule.js.map +1 -1
  96. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.js +8 -1
  97. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.js.map +1 -1
  98. package/dist/rules/issues/formulas/unknownProjectFormulaRule.js +8 -1
  99. package/dist/rules/issues/formulas/unknownProjectFormulaRule.js.map +1 -1
  100. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.js +14 -2
  101. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.js.map +1 -1
  102. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.js +14 -2
  103. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.js.map +1 -1
  104. package/dist/rules/issues/logic/noStaticNodeCondition.js +15 -3
  105. package/dist/rules/issues/logic/noStaticNodeCondition.js.map +1 -1
  106. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js +7 -1
  107. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js.map +1 -1
  108. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js +7 -1
  109. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js.map +1 -1
  110. package/dist/rules/issues/miscellaneous/createStaticSizeConstraintRule.d.ts +5 -0
  111. package/dist/rules/issues/miscellaneous/createStaticSizeConstraintRule.js +74 -0
  112. package/dist/rules/issues/miscellaneous/createStaticSizeConstraintRule.js.map +1 -0
  113. package/dist/rules/issues/miscellaneous/miscRules.index.d.ts +3 -0
  114. package/dist/rules/issues/miscellaneous/miscRules.index.js +10 -1
  115. package/dist/rules/issues/miscellaneous/miscRules.index.js.map +1 -1
  116. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.js +9 -1
  117. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.js.map +1 -1
  118. package/dist/rules/issues/miscellaneous/requireExtensionRule.js +7 -1
  119. package/dist/rules/issues/miscellaneous/requireExtensionRule.js.map +1 -1
  120. package/dist/rules/issues/miscellaneous/unknownCookieRule.js +8 -1
  121. package/dist/rules/issues/miscellaneous/unknownCookieRule.js.map +1 -1
  122. package/dist/rules/issues/routing/duplicateRouteRule.js +16 -6
  123. package/dist/rules/issues/routing/duplicateRouteRule.js.map +1 -1
  124. package/dist/rules/issues/routing/duplicateUrlParameterRule.js +16 -2
  125. package/dist/rules/issues/routing/duplicateUrlParameterRule.js.map +1 -1
  126. package/dist/rules/issues/routing/unknownSetUrlParameterRule.js +8 -1
  127. package/dist/rules/issues/routing/unknownSetUrlParameterRule.js.map +1 -1
  128. package/dist/rules/issues/routing/unknownSetUrlParametersRule.js +8 -1
  129. package/dist/rules/issues/routing/unknownSetUrlParametersRule.js.map +1 -1
  130. package/dist/rules/issues/routing/unknownUrlParameterRule.js +8 -1
  131. package/dist/rules/issues/routing/unknownUrlParameterRule.js.map +1 -1
  132. package/dist/rules/issues/slots/unknownComponentSlotRule.js +9 -2
  133. package/dist/rules/issues/slots/unknownComponentSlotRule.js.map +1 -1
  134. package/dist/rules/issues/style/invalidStyleSyntaxRule.js +9 -1
  135. package/dist/rules/issues/style/invalidStyleSyntaxRule.js.map +1 -1
  136. package/dist/rules/issues/style/legacyStyleVariableRule.js +9 -3
  137. package/dist/rules/issues/style/legacyStyleVariableRule.js.map +1 -1
  138. package/dist/rules/issues/style/legacyThemeRule.js +7 -1
  139. package/dist/rules/issues/style/legacyThemeRule.js.map +1 -1
  140. package/dist/rules/issues/style/noReferenceGlobalCSSVariable.js +8 -1
  141. package/dist/rules/issues/style/noReferenceGlobalCSSVariable.js.map +1 -1
  142. package/dist/rules/issues/style/unknownCSSVariable.js +43 -45
  143. package/dist/rules/issues/style/unknownCSSVariable.js.map +1 -1
  144. package/dist/rules/issues/style/unknownClassnameRule.js +8 -1
  145. package/dist/rules/issues/style/unknownClassnameRule.js.map +1 -1
  146. package/dist/rules/issues/variables/noReferenceVariableRule.js +8 -1
  147. package/dist/rules/issues/variables/noReferenceVariableRule.js.map +1 -1
  148. package/dist/rules/issues/variables/unknownVariableRule.js +8 -1
  149. package/dist/rules/issues/variables/unknownVariableRule.js.map +1 -1
  150. package/dist/rules/issues/variables/unknownVariableSetterRule.js +8 -1
  151. package/dist/rules/issues/variables/unknownVariableSetterRule.js.map +1 -1
  152. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.js +8 -1
  153. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.js.map +1 -1
  154. package/dist/rules/issues/workflows/noPostNavigateAction.js +8 -1
  155. package/dist/rules/issues/workflows/noPostNavigateAction.js.map +1 -1
  156. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.js +8 -1
  157. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.js.map +1 -1
  158. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js +10 -3
  159. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js.map +1 -1
  160. package/dist/rules/issues/workflows/unknownContextWorkflowRule.js +10 -3
  161. package/dist/rules/issues/workflows/unknownContextWorkflowRule.js.map +1 -1
  162. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.js +9 -2
  163. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.js.map +1 -1
  164. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.js +7 -1
  165. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.js.map +1 -1
  166. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.js +9 -2
  167. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.js.map +1 -1
  168. package/dist/searchProject.js +2 -1
  169. package/dist/searchProject.js.map +1 -1
  170. package/dist/types.d.ts +13 -2
  171. package/package.json +3 -3
  172. package/src/rules/issues/actions/actionRules.index.ts +5 -0
  173. package/src/rules/issues/actions/createActionNameRule.ts +10 -1
  174. package/src/rules/issues/actions/duplicateActionArgumentNameRule.ts +8 -1
  175. package/src/rules/issues/actions/legacyActionRule.ts +10 -3
  176. package/src/rules/issues/actions/noReferenceProjectActionRule.ts +8 -1
  177. package/src/rules/issues/actions/unknownActionArgumentRule.ts +18 -9
  178. package/src/rules/issues/actions/unknownActionEventRule.ts +8 -4
  179. package/src/rules/issues/actions/unknownProjectActionRule.ts +8 -1
  180. package/src/rules/issues/apis/invalidApiParserModeRule.ts +8 -1
  181. package/src/rules/issues/apis/invalidApiProxyBodySettingRule.ts +8 -1
  182. package/src/rules/issues/apis/invalidApiProxyCookieSettingRule.ts +8 -1
  183. package/src/rules/issues/apis/legacyApiRule.ts +8 -1
  184. package/src/rules/issues/apis/noReferenceApiInputRule.ts +8 -1
  185. package/src/rules/issues/apis/noReferenceApiRule.ts +8 -1
  186. package/src/rules/issues/apis/noReferenceApiServiceRule.ts +9 -1
  187. package/src/rules/issues/apis/unknownApiInputRule.ts +8 -1
  188. package/src/rules/issues/apis/unknownApiRule.ts +16 -2
  189. package/src/rules/issues/apis/unknownApiServiceRule.ts +9 -5
  190. package/src/rules/issues/apis/unknownFetchInputRule.ts +9 -1
  191. package/src/rules/issues/attributes/noReferenceAttributeInInstanceRule.ts +9 -2
  192. package/src/rules/issues/attributes/noReferenceAttributeRule.ts +8 -1
  193. package/src/rules/issues/attributes/unknownAttributeRule.ts +8 -1
  194. package/src/rules/issues/attributes/unknownComponentAttributeRule.ts +9 -3
  195. package/src/rules/issues/components/invalidComponentStructureRule.ts +9 -5
  196. package/src/rules/issues/components/noReferenceComponentRule.ts +9 -1
  197. package/src/rules/issues/components/unknownComponentRule.ts +8 -1
  198. package/src/rules/issues/context/noContextConsumersRule.ts +8 -1
  199. package/src/rules/issues/context/unknownContextFormulaRule.ts +10 -3
  200. package/src/rules/issues/context/unknownContextProviderFormulaRule.ts +10 -3
  201. package/src/rules/issues/context/unknownContextProviderRule.ts +8 -1
  202. package/src/rules/issues/dom/createRequiredDirectChildRule.ts +11 -4
  203. package/src/rules/issues/dom/createRequiredDirectParentRule.ts +11 -4
  204. package/src/rules/issues/dom/createRequiredElementAttributeRule.ts +8 -1
  205. package/src/rules/issues/dom/createRequiredMetaTagRule.ts +14 -1
  206. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.ts +26 -3
  207. package/src/rules/issues/dom/imageWithoutDimensionRule.ts +8 -1
  208. package/src/rules/issues/dom/nonEmptyVoidElementRule.ts +8 -1
  209. package/src/rules/issues/events/duplicateEventTriggerRule.ts +8 -1
  210. package/src/rules/issues/events/noReferenceEventRule.ts +9 -1
  211. package/src/rules/issues/events/unknownEventRule.ts +8 -1
  212. package/src/rules/issues/events/unknownTriggerEventRule.ts +8 -1
  213. package/src/rules/issues/formulas/duplicateFormulaArgumentNameRule.ts +8 -1
  214. package/src/rules/issues/formulas/legacyFormulaRule.ts +12 -7
  215. package/src/rules/issues/formulas/noReferenceComponentFormulaRule.ts +12 -5
  216. package/src/rules/issues/formulas/noReferenceProjectFormulaRule.ts +8 -1
  217. package/src/rules/issues/formulas/unknownComponentFormulaInputRule.ts +8 -1
  218. package/src/rules/issues/formulas/unknownFormulaRule.ts +8 -1
  219. package/src/rules/issues/formulas/unknownProjectFormulaInputRule.ts +8 -1
  220. package/src/rules/issues/formulas/unknownProjectFormulaRule.ts +8 -1
  221. package/src/rules/issues/formulas/unknownRepeatIndexFormulaRule.ts +14 -2
  222. package/src/rules/issues/formulas/unknownRepeatItemFormulaRule.ts +14 -2
  223. package/src/rules/issues/logic/noStaticNodeCondition.ts +15 -4
  224. package/src/rules/issues/logic/noUnnecessaryConditionFalsy.ts +8 -1
  225. package/src/rules/issues/logic/noUnnecessaryConditionTruthy.ts +8 -1
  226. package/src/rules/issues/miscellaneous/createStaticSizeConstraintRule.test.ts +153 -0
  227. package/src/rules/issues/miscellaneous/createStaticSizeConstraintRule.ts +90 -0
  228. package/src/rules/issues/miscellaneous/miscRules.index.ts +10 -1
  229. package/src/rules/issues/miscellaneous/noReferenceNodeRule.ts +9 -1
  230. package/src/rules/issues/miscellaneous/requireExtensionRule.ts +8 -1
  231. package/src/rules/issues/miscellaneous/unknownCookieRule.ts +8 -1
  232. package/src/rules/issues/routing/duplicateRouteRule.ts +18 -6
  233. package/src/rules/issues/routing/duplicateUrlParameterRule.ts +16 -2
  234. package/src/rules/issues/routing/unknownSetUrlParameterRule.ts +8 -1
  235. package/src/rules/issues/routing/unknownSetUrlParametersRule.ts +8 -1
  236. package/src/rules/issues/routing/unknownUrlParameterRule.ts +8 -1
  237. package/src/rules/issues/slots/unknownComponentSlotRule.ts +9 -2
  238. package/src/rules/issues/style/invalidStyleSyntaxRule.ts +9 -1
  239. package/src/rules/issues/style/legacyStyleVariableRule.ts +9 -3
  240. package/src/rules/issues/style/legacyThemeRule.ts +7 -1
  241. package/src/rules/issues/style/noReferenceGlobalCSSVariable.ts +8 -1
  242. package/src/rules/issues/style/unknownCSSVariable.test.ts +45 -37
  243. package/src/rules/issues/style/unknownCSSVariable.ts +49 -52
  244. package/src/rules/issues/style/unknownClassnameRule.ts +8 -1
  245. package/src/rules/issues/variables/noReferenceVariableRule.ts +8 -1
  246. package/src/rules/issues/variables/unknownVariableRule.ts +8 -1
  247. package/src/rules/issues/variables/unknownVariableSetterRule.ts +8 -1
  248. package/src/rules/issues/workflows/duplicateWorkflowParameterRule.ts +8 -1
  249. package/src/rules/issues/workflows/noPostNavigateAction.ts +8 -1
  250. package/src/rules/issues/workflows/noReferenceComponentWorkflowRule.ts +8 -1
  251. package/src/rules/issues/workflows/unknownContextProviderWorkflowRule.ts +10 -3
  252. package/src/rules/issues/workflows/unknownContextWorkflowRule.ts +10 -3
  253. package/src/rules/issues/workflows/unknownTriggerWorkflowParameterRule.ts +9 -2
  254. package/src/rules/issues/workflows/unknownTriggerWorkflowRule.ts +7 -1
  255. package/src/rules/issues/workflows/unknownWorkflowParameterRule.ts +9 -2
  256. package/src/searchProject.ts +2 -1
  257. package/src/types.ts +22 -10
@@ -10,7 +10,13 @@ export const requireExtensionRule = {
10
10
  state.isBrowserExtensionAvailable === true) {
11
11
  return;
12
12
  }
13
- report(path);
13
+ report({
14
+ path,
15
+ info: {
16
+ title: 'Browser plugin recommended',
17
+ description: '**Toddle browser plugin** is recommended for working with cookies. [Install extension](https://chromewebstore.google.com/detail/toddle/hfhgjncckomifajhndceigiaiojhlllp?hl=en)',
18
+ },
19
+ });
14
20
  },
15
21
  };
16
22
  //# sourceMappingURL=requireExtensionRule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"requireExtensionRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/requireExtensionRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAE5B;IACH,IAAI,EAAE,oBAAoB;IAC1B,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,cAAc;YAC3B,KAAK,CAAC,IAAI,KAAK,SAAS;YACxB,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,CAAC,KAAK;YACN,KAAK,CAAC,2BAA2B,KAAK,IAAI,EAC1C,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,CAAA;IAAA,CACb;CACF,CAAA"}
1
+ {"version":3,"file":"requireExtensionRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/requireExtensionRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,oBAAoB,GAE5B;IACH,IAAI,EAAE,oBAAoB;IAC1B,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,cAAc;YAC3B,KAAK,CAAC,IAAI,KAAK,SAAS;YACxB,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,CAAC,KAAK;YACN,KAAK,CAAC,2BAA2B,KAAK,IAAI,EAC1C,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,CAAC;YACL,IAAI;YACJ,IAAI,EAAE;gBACJ,KAAK,EAAE,4BAA4B;gBACnC,WAAW,EACT,gLAAgL;aACnL;SACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
@@ -19,7 +19,14 @@ export const unknownCookieRule = {
19
19
  }
20
20
  const cookie = state.cookiesAvailable?.find((c) => c.name === formula.value);
21
21
  if (!cookie) {
22
- report(path, { name: formula.value });
22
+ report({
23
+ path,
24
+ info: {
25
+ title: 'Unknown cookie',
26
+ description: `**${formula.value}** is not found in the browser extension cookies.`,
27
+ },
28
+ details: { name: formula.value },
29
+ });
23
30
  }
24
31
  },
25
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unknownCookieRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/unknownCookieRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,iBAAiB,GAEzB;IACH,IAAI,EAAE,gBAAgB;IACtB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,UAAU;YACzB,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAC5B,KAAK,EAAE,2BAA2B,KAAK,IAAI,EAC3C,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAA;QAC3C,IACE,CAAC,SAAS,CAAC,OAAO,CAAC;YACnB,OAAO,CAAC,IAAI,KAAK,OAAO;YACxB,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EACjC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QACvC,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownCookieRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/miscellaneous/unknownCookieRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,iBAAiB,GAEzB;IACH,IAAI,EAAE,gBAAgB;IACtB,KAAK,EAAE,MAAM;IACb,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,UAAU;YACzB,KAAK,CAAC,IAAI,KAAK,2BAA2B;YAC1C,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;YAC5B,KAAK,EAAE,2BAA2B,KAAK,IAAI,EAC3C,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,CAAA;QAC3C,IACE,CAAC,SAAS,CAAC,OAAO,CAAC;YACnB,OAAO,CAAC,IAAI,KAAK,OAAO;YACxB,OAAO,OAAO,CAAC,KAAK,KAAK,QAAQ,EACjC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,CAAA;QAC5E,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,CAAC;gBACL,IAAI;gBACJ,IAAI,EAAE;oBACJ,KAAK,EAAE,gBAAgB;oBACvB,WAAW,EAAE,KAAK,OAAO,CAAC,KAAK,mDAAmD;iBACnF;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,EAAE;aACjC,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -28,12 +28,22 @@ export const duplicateRouteRule = {
28
28
  });
29
29
  const match = allRoutes.get(getRouteKey(value.route?.path));
30
30
  if (match && match.length > 1) {
31
- report([...path, 'route', 'path'], {
32
- name: value.name,
33
- type: 'page',
34
- duplicates: match
35
- .filter((m) => m !== value.name)
36
- .map((name) => ({ name, type: 'page' })),
31
+ const duplicates = match
32
+ .filter((m) => m !== value.name)
33
+ .map((name) => ({ name, type: 'page' }));
34
+ report({
35
+ path: [...path, 'route', 'path'],
36
+ info: {
37
+ title: 'Duplicate route declaration',
38
+ description: `The page **${value.name}** has the same route/path declared as the pages/routes below. Route declarations must be unique.${duplicates
39
+ .map((d) => `\n- ${d.name} (${d.type})`)
40
+ .join('')}`,
41
+ },
42
+ details: {
43
+ name: value.name,
44
+ type: 'page',
45
+ duplicates,
46
+ },
37
47
  });
38
48
  }
39
49
  },
@@ -1 +1 @@
1
- {"version":3,"file":"duplicateRouteRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/duplicateRouteRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAGhF,MAAM,CAAC,MAAM,kBAAkB,GAI1B;IACH,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACnD,IAAI,QAAQ,KAAK,WAAW,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAM;QACR,CAAC;QACD,MAAM,WAAW,GAAG,CAAC,KAA+B,EAAE,EAAE,CACtD,KAAK,CAAC,MAAM,CACV,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,EACnE,GAAG,CACJ,CAAA;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAA;YAC1C,uEAAuE;YACvE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CACxC,CAAC,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC;gBAC/B,IAAI,cAAc,IAAI,eAAe,CAAC,cAAc,CAAC,EAAE,CAAC;oBACtD,MAAM,GAAG,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;oBAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,QAAQ,EAAE,CAAC;wBACb,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAC1B,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;oBAC9B,CAAC;gBACH,CAAC;YAAA,CACF,CACF,CAAA;YACD,OAAO,MAAM,CAAA;QAAA,CACd,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;QAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE;gBACjC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,IAAI,EAAE,MAAM;gBACZ,UAAU,EAAE,KAAK;qBACd,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC;qBAC/B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;aAC3C,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"duplicateRouteRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/duplicateRouteRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAGhF,MAAM,CAAC,MAAM,kBAAkB,GAI1B;IACH,IAAI,EAAE,iBAAiB;IACvB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;QACnD,IAAI,QAAQ,KAAK,WAAW,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;YACxD,OAAM;QACR,CAAC;QACD,MAAM,WAAW,GAAG,CAAC,KAA+B,EAAE,EAAE,CACtD,KAAK,CAAC,MAAM,CACV,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,EACnE,GAAG,CACJ,CAAA;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC;YACxC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAoB,CAAA;YAC1C,uEAAuE;YACvE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,GAAG,CACxC,CAAC,CAAC,SAAS,EAAE,cAAc,CAAC,EAAE,EAAE,CAAC;gBAC/B,IAAI,cAAc,IAAI,eAAe,CAAC,cAAc,CAAC,EAAE,CAAC;oBACtD,MAAM,GAAG,GAAG,WAAW,CAAC,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;oBAClD,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;oBAChC,IAAI,QAAQ,EAAE,CAAC;wBACb,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;oBAC1B,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAA;oBAC9B,CAAC;gBACH,CAAC;YAAA,CACF,CACF,CAAA;YACD,OAAO,MAAM,CAAA;QAAA,CACd,CAAC,CAAA;QACF,MAAM,KAAK,GAAG,SAAS,CAAC,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,CAAA;QAC3D,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,KAAK;iBACrB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC;iBAC/B,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAe,EAAE,CAAC,CAAC,CAAA;YACnD,MAAM,CAAC;gBACL,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,CAAC;gBAChC,IAAI,EAAE;oBACJ,KAAK,EAAE,6BAA6B;oBACpC,WAAW,EAAE,cACX,KAAK,CAAC,IACR,oGAAoG,UAAU;yBAC3G,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,GAAG,CAAC;yBACvC,IAAI,CAAC,EAAE,CAAC,EAAE;iBACd;gBACD,OAAO,EAAE;oBACP,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,IAAI,EAAE,MAAM;oBACZ,UAAU;iBACX;aACF,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -13,13 +13,27 @@ export const duplicateUrlParameterRule = {
13
13
  const pathNames = new Set();
14
14
  value.route.path.forEach((p, i) => {
15
15
  if (pathNames.has(p.name)) {
16
- report([...path, 'route', 'path', i], { name: p.name });
16
+ report({
17
+ path: [...path, 'route', 'path', i],
18
+ info: {
19
+ title: 'Duplicate URL parameter',
20
+ description: `**${p.name}** appears multiple times in the path/query parameters. This may lead to unexpected behavior. Consider consolidating them into a single parameter or renaming them.`,
21
+ },
22
+ details: { name: p.name },
23
+ });
17
24
  }
18
25
  pathNames.add(p.name);
19
26
  });
20
27
  Object.keys(value.route.query).forEach((key) => {
21
28
  if (pathNames.has(key)) {
22
- report([...path, 'route', 'query', key], { name: key });
29
+ report({
30
+ path: [...path, 'route', 'query', key],
31
+ info: {
32
+ title: 'Duplicate URL parameter',
33
+ description: `**${key}** appears multiple times in the path/query parameters. This may lead to unexpected behavior. Consider consolidating them into a single parameter or renaming them.`,
34
+ },
35
+ details: { name: key },
36
+ });
23
37
  }
24
38
  });
25
39
  },
@@ -1 +1 @@
1
- {"version":3,"file":"duplicateUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/duplicateUrlParameterRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,IAAI,EAAE,yBAAyB;IAC/B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5C,IACE,QAAQ,KAAK,WAAW;YACxB,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;YACvB,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAC7B,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;QACnC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YACzD,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAAA,CACtB,CAAC,CAAA;QACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC9C,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;YACzD,CAAC;QAAA,CACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
1
+ {"version":3,"file":"duplicateUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/duplicateUrlParameterRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,yBAAyB,GAA2B;IAC/D,IAAI,EAAE,yBAAyB;IAC/B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5C,IACE,QAAQ,KAAK,WAAW;YACxB,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC;YACvB,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;YAC5B,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAC7B,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;QACnC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YACjC,IAAI,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,MAAM,CAAC;oBACL,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;oBACnC,IAAI,EAAE;wBACJ,KAAK,EAAE,yBAAyB;wBAChC,WAAW,EAAE,KAAK,CAAC,CAAC,IAAI,qKAAqK;qBAC9L;oBACD,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;iBAC1B,CAAC,CAAA;YACJ,CAAC;YACD,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAAA,CACtB,CAAC,CAAA;QACF,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC;YAC9C,IAAI,SAAS,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACvB,MAAM,CAAC;oBACL,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC;oBACtC,IAAI,EAAE;wBACJ,KAAK,EAAE,yBAAyB;wBAChC,WAAW,EAAE,KAAK,GAAG,qKAAqK;qBAC3L;oBACD,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;iBACvB,CAAC,CAAA;YACJ,CAAC;QAAA,CACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
@@ -17,7 +17,14 @@ export const unknownSetUrlParameterRule = {
17
17
  Object.values(args.component.route?.query ?? {}).some((q) => q.name === parameterName);
18
18
  const parameterName = args.value.parameter;
19
19
  if (!isValidParameter(parameterName)) {
20
- report(args.path, { name: parameterName });
20
+ report({
21
+ path: args.path,
22
+ info: {
23
+ title: 'Unknown URL parameter update',
24
+ description: `**${parameterName}** does not exist as a path- or query-parameter and cannot be set/updated.`,
25
+ },
26
+ details: { name: parameterName },
27
+ });
21
28
  }
22
29
  },
23
30
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unknownSetUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownSetUrlParameterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,0BAA0B,GAElC;IACH,IAAI,EAAE,2BAA2B;IACjC,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,QAAQ,KAAK,cAAc;YAChC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EACrC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,EAAE;QACjD,uEAAuE;QACvE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,aAAa;YACxB,oDAAoD;YACpD,CAAC,CAAC,IAAI,KAAK,OAAO;QACpB,wEAAwE;SACzE;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAA;QACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAC1C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,CAAA;QAC5C,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownSetUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownSetUrlParameterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,0BAA0B,GAElC;IACH,IAAI,EAAE,2BAA2B;IACjC,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,QAAQ,KAAK,cAAc;YAChC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,iBAAiB,EACrC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,EAAE;QACjD,uEAAuE;QACvE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,aAAa;YACxB,oDAAoD;YACpD,CAAC,CAAC,IAAI,KAAK,OAAO;QACpB,wEAAwE;SACzE;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAA;QACH,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAA;QAC1C,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAE,CAAC;YACrC,MAAM,CAAC;gBACL,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,IAAI,EAAE;oBACJ,KAAK,EAAE,8BAA8B;oBACrC,WAAW,EAAE,KAAK,aAAa,4EAA4E;iBAC5G;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;aACjC,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -17,7 +17,14 @@ export const unknownSetUrlParametersRule = {
17
17
  Object.values(args.component.route?.query ?? {}).some((q) => q.name === parameterName);
18
18
  for (const key of Object.keys(args.value.parameters ?? {})) {
19
19
  if (!isValidParameter(key)) {
20
- report([...args.path, 'parameters', key], { name: key });
20
+ report({
21
+ path: [...args.path, 'parameters', key],
22
+ info: {
23
+ title: 'Unknown URL parameter update',
24
+ description: `**${key}** does not exist as a path- or query-parameter and cannot be set/updated.`,
25
+ },
26
+ details: { name: key },
27
+ });
21
28
  }
22
29
  }
23
30
  },
@@ -1 +1 @@
1
- {"version":3,"file":"unknownSetUrlParametersRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownSetUrlParametersRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAEnC;IACH,IAAI,EAAE,4BAA4B;IAClC,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,QAAQ,KAAK,cAAc;YAChC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,EACtC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,EAAE;QACjD,uEAAuE;QACvE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,aAAa;YACxB,oDAAoD;YACpD,CAAC,CAAC,IAAI,KAAK,OAAO;QACpB,wEAAwE;SACzE;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAA;QACH,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1D,CAAC;QACH,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownSetUrlParametersRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownSetUrlParametersRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,2BAA2B,GAEnC;IACH,IAAI,EAAE,4BAA4B;IAClC,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IACE,IAAI,CAAC,QAAQ,KAAK,cAAc;YAChC,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,kBAAkB,EACtC,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,gBAAgB,GAAG,CAAC,aAAqB,EAAE,EAAE;QACjD,uEAAuE;QACvE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAC9B,CAAC,CAAC,EAAE,EAAE,CACJ,CAAC,CAAC,IAAI,KAAK,aAAa;YACxB,oDAAoD;YACpD,CAAC,CAAC,IAAI,KAAK,OAAO;QACpB,wEAAwE;SACzE;YACD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC,IAAI,CACnD,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAChC,CAAA;QACH,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC3B,MAAM,CAAC;oBACL,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,GAAG,CAAC;oBACvC,IAAI,EAAE;wBACJ,KAAK,EAAE,8BAA8B;wBACrC,WAAW,EAAE,KAAK,GAAG,4EAA4E;qBAClG;oBACD,OAAO,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE;iBACvB,CAAC,CAAA;YACJ,CAAC;QACH,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -13,7 +13,14 @@ export const unknownUrlParameterRule = {
13
13
  const component = files.components[componentName];
14
14
  if (!component?.route?.query?.[parameterKey] &&
15
15
  !component?.route?.path?.some((p) => p.name === parameterKey)) {
16
- report(path, { name: parameterKey });
16
+ report({
17
+ path,
18
+ info: {
19
+ title: 'Unknown URL parameter',
20
+ description: `**${parameterKey}** does not exist as a path- or query-parameter. Using an unknown URL parameter will always return *Null*.`,
21
+ },
22
+ details: { name: parameterKey },
23
+ });
17
24
  }
18
25
  },
19
26
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unknownUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownUrlParameterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,uBAAuB,GAE/B;IACH,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,EAClC,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;QACnC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IACE,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC;YACxC,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,EAC7D,CAAC;YACD,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAA;QACtC,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownUrlParameterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/routing/unknownUrlParameterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,uBAAuB,GAE/B;IACH,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,gBAAgB,EAClC,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,CAAC,EAAE,YAAY,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;QACnC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IACE,CAAC,SAAS,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,YAAY,CAAC;YACxC,CAAC,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,EAC7D,CAAC;YACD,MAAM,CAAC;gBACL,IAAI;gBACJ,IAAI,EAAE;oBACJ,KAAK,EAAE,uBAAuB;oBAC9B,WAAW,EAAE,KAAK,YAAY,4GAA4G;iBAC3I;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE;aAChC,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -8,7 +8,7 @@ export const unknownComponentSlotRule = {
8
8
  return;
9
9
  }
10
10
  // We only want to check the immediate children of a "sub component"
11
- if (value.type !== 'component' || value.children.length === 0) {
11
+ if (value.type !== 'component' || (value?.children ?? []).length === 0) {
12
12
  return;
13
13
  }
14
14
  const [, currentComponentName, ,] = path;
@@ -34,7 +34,14 @@ export const unknownComponentSlotRule = {
34
34
  const childNode = files.components[currentComponentName]?.nodes?.[child];
35
35
  const usedSlot = childNode?.slot ?? 'default';
36
36
  if (!usableSlots.includes(usedSlot)) {
37
- report([path[0], path[1], path[2], child], { slotName: usedSlot });
37
+ report({
38
+ path: [path[0], path[1], path[2], child],
39
+ info: {
40
+ title: 'Unknown component slot',
41
+ description: `**${usedSlot}** slot name does not exist as a slot on the parent component.`,
42
+ },
43
+ details: { slotName: usedSlot },
44
+ });
38
45
  }
39
46
  });
40
47
  },
@@ -1 +1 @@
1
- {"version":3,"file":"unknownComponentSlotRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/slots/unknownComponentSlotRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAIhF,MAAM,CAAC,MAAM,wBAAwB,GAA+B;IAClE,IAAI,EAAE,wBAAwB;IAC9B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAClC,OAAM;QACR,CAAC;QAED,oEAAoE;QACpE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9D,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,oBAAoB,EAAE,AAAD,EAAG,GAAG,IAAI,CAAA;QAExC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAM;QACR,CAAC;QACD,sCAAsC;QACtC,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC;YACvC,SAAS;YACT,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;YAC9C,WAAW,EAAE,SAAS;YACtB,cAAc,EAAE;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB;SACF,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;aACxD,MAAM,CAAC,CAAC,IAAI,EAAyB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;aAC7D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;QAExC,0EAA0E;QAC1E,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;YACxE,MAAM,QAAQ,GAAG,SAAS,EAAE,IAAI,IAAI,SAAS,CAAA;YAE7C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAA;YACpE,CAAC;QAAA,CACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
1
+ {"version":3,"file":"unknownComponentSlotRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/slots/unknownComponentSlotRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,gDAAgD,CAAA;AAIhF,MAAM,CAAC,MAAM,wBAAwB,GAA+B;IAClE,IAAI,EAAE,wBAAwB;IAC9B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IAAI,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YAClC,OAAM;QACR,CAAC;QAED,oEAAoE;QACpE,IAAI,KAAK,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvE,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,oBAAoB,EAAE,AAAD,EAAG,GAAG,IAAI,CAAA;QAExC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAC9C,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,OAAM;QACR,CAAC;QACD,sCAAsC;QACtC,MAAM,YAAY,GAAG,IAAI,eAAe,CAAC;YACvC,SAAS;YACT,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC;YAC9C,WAAW,EAAE,SAAS;YACtB,cAAc,EAAE;gBACd,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB;SACF,CAAC,CAAA;QAEF,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,IAAI,EAAE,CAAC;aACxD,MAAM,CAAC,CAAC,IAAI,EAAyB,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC;aAC7D,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,SAAS,CAAC,CAAA;QAExC,0EAA0E;QAC1E,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC;YAChC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,CAAA;YACxE,MAAM,QAAQ,GAAG,SAAS,EAAE,IAAI,IAAI,SAAS,CAAA;YAE7C,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACpC,MAAM,CAAC;oBACL,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC;oBACxC,IAAI,EAAE;wBACJ,KAAK,EAAE,wBAAwB;wBAC/B,WAAW,EAAE,KAAK,QAAQ,gEAAgE;qBAC3F;oBACD,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE;iBAChC,CAAC,CAAA;YACJ,CAAC;QAAA,CACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
@@ -18,7 +18,15 @@ export const invalidStyleSyntaxRule = {
18
18
  }
19
19
  });
20
20
  if (!valid) {
21
- report(path, { property: value.styleProperty }, ['delete-style-property']);
21
+ report({
22
+ path,
23
+ info: {
24
+ title: `Invalid style declaration`,
25
+ description: `The style declaration for the property "${value.styleProperty}" is invalid. This can lead to unforeseen styling behavior across other elements. Please fix the style declaration or remove it.`,
26
+ },
27
+ details: { property: value.styleProperty },
28
+ fixes: ['delete-style-property'],
29
+ });
22
30
  }
23
31
  },
24
32
  fixes: {
@@ -1 +1 @@
1
- {"version":3,"file":"invalidStyleSyntaxRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/invalidStyleSyntaxRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,sBAAsB,GAE9B;IACH,IAAI,EAAE,sBAAsB;IAC5B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAClD,IAAI,QAAQ,KAAK,mBAAmB,EAAE,CAAC;YACrC,OAAM;QACR,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAChB,eAAe,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,UAAU,EAAE,EACxD,GAAG,EAAE,CAAC;YACJ,IAAI,CAAC;gBACH,KAAK,CAAC,GAAG,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;gBACpD,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QAAA,CACF,CACF,CAAA;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE,EAAE,CAAC,uBAAuB,CAAC,CAAC,CAAA;QAC5E,CAAC;IAAA,CACF;IACD,KAAK,EAAE;QACL,uBAAuB,EAAE,iBAAiB;KAC3C;CACF,CAAA"}
1
+ {"version":3,"file":"invalidStyleSyntaxRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/invalidStyleSyntaxRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAE/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,sBAAsB,GAE9B;IACH,IAAI,EAAE,sBAAsB;IAC5B,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,SAAS;IACnB,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;QAClD,IAAI,QAAQ,KAAK,mBAAmB,EAAE,CAAC;YACrC,OAAM;QACR,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,CAChB,eAAe,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,UAAU,EAAE,EACxD,GAAG,EAAE,CAAC;YACJ,IAAI,CAAC;gBACH,KAAK,CAAC,GAAG,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAA;gBACpD,OAAO,IAAI,CAAA;YACb,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,KAAK,CAAA;YACd,CAAC;QAAA,CACF,CACF,CAAA;QACD,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,MAAM,CAAC;gBACL,IAAI;gBACJ,IAAI,EAAE;oBACJ,KAAK,EAAE,2BAA2B;oBAClC,WAAW,EAAE,2CAA2C,KAAK,CAAC,aAAa,kIAAkI;iBAC9M;gBACD,OAAO,EAAE,EAAE,QAAQ,EAAE,KAAK,CAAC,aAAa,EAAE;gBAC1C,KAAK,EAAE,CAAC,uBAAuB,CAAC;aACjC,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;IACD,KAAK,EAAE;QACL,uBAAuB,EAAE,iBAAiB;KAC3C;CACF,CAAA"}
@@ -8,9 +8,15 @@ export const legacyStyleVariableRule = {
8
8
  if (data.nodeType !== 'style-variable') {
9
9
  return;
10
10
  }
11
- report(data.path, { name: data.value.styleVariable.name }, [
12
- 'replace-legacy-style-variable',
13
- ]);
11
+ report({
12
+ path: data.path,
13
+ info: {
14
+ title: `Legacy style variable`,
15
+ description: `Style variable **--${data.value.styleVariable.name}** can be replaced with the newer CSS variable system. Consider removing the style variable and create a new CSS variable with the same name.`,
16
+ },
17
+ details: { name: data.value.styleVariable.name },
18
+ fixes: ['replace-legacy-style-variable'],
19
+ });
14
20
  },
15
21
  fixes: {
16
22
  'replace-legacy-style-variable': replaceLegacyStyleVariable,
@@ -1 +1 @@
1
- {"version":3,"file":"legacyStyleVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/legacyStyleVariableRule.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAA;AAOjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,uBAAuB,GAMhC;IACF,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YACvC,OAAM;QACR,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE,EAAE;YACzD,+BAA+B;SAChC,CAAC,CAAA;IAAA,CACH;IACD,KAAK,EAAE;QACL,+BAA+B,EAAE,0BAA0B;KAC5D;CACF,CAAA;AAID,SAAS,0BAA0B,CACjC,IAAqE,EACP;IAC9D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAA;IACvE,MAAM,oBAAoB,GAAG;QAC3B,YAAY;QACZ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,kBAAkB;KACnB,CAAA;IACD,MAAM,GAAG,GAAuB,KAAK,IAAI,EAAE,CAAA;IAC3C,MAAM,KAAK,GAAmB;QAC5B,OAAO;QACP,IAAI;QACJ,MAAM,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,IAAI,EACD,4BAA4B,CAAC,QAAQ,CAAyB,IAAI,GAAG;SACzE;KACF,CAAA;IAED,OAAO,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE;QACxD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC,GAAG,CAAC,EAAE,KAAK;KACb,CAAC,CAAA;AAAA,CACH;AAED,MAAM,4BAA4B,GAG9B;IACF,eAAe,EAAE,mBAAmB;IACpC,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,mBAAmB;IAChC,aAAa,EAAE,QAAQ;IACvB,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,mBAAmB;IAC5B,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;CACjB,CAAA"}
1
+ {"version":3,"file":"legacyStyleVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/legacyStyleVariableRule.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,wCAAwC,CAAA;AAOjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,uBAAuB,GAMhC;IACF,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,gBAAgB,EAAE,CAAC;YACvC,OAAM;QACR,CAAC;QAED,MAAM,CAAC;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE;gBACJ,KAAK,EAAE,uBAAuB;gBAC9B,WAAW,EAAE,sBAAsB,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,+IAA+I;aAChN;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,IAAI,EAAE;YAChD,KAAK,EAAE,CAAC,+BAA+B,CAAC;SACzC,CAAC,CAAA;IAAA,CACH;IACD,KAAK,EAAE;QACL,+BAA+B,EAAE,0BAA0B;KAC5D;CACF,CAAA;AAID,SAAS,0BAA0B,CACjC,IAAqE,EACP;IAC9D,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAA;IACvE,MAAM,oBAAoB,GAAG;QAC3B,YAAY;QACZ,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,OAAO;QACP,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACjB,kBAAkB;KACnB,CAAA;IACD,MAAM,GAAG,GAAuB,KAAK,IAAI,EAAE,CAAA;IAC3C,MAAM,KAAK,GAAmB;QAC5B,OAAO;QACP,IAAI;QACJ,MAAM,EAAE;YACN,IAAI,EAAE,WAAW;YACjB,IAAI,EACD,4BAA4B,CAAC,QAAQ,CAAyB,IAAI,GAAG;SACzE;KACF,CAAA;IAED,OAAO,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,oBAAoB,EAAE;QACxD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,oBAAoB,CAAC,IAAI,EAAE,CAAC;QACrD,CAAC,GAAG,CAAC,EAAE,KAAK;KACb,CAAC,CAAA;AAAA,CACH;AAED,MAAM,4BAA4B,GAG9B;IACF,eAAe,EAAE,mBAAmB;IACpC,KAAK,EAAE,OAAO;IACd,WAAW,EAAE,mBAAmB;IAChC,aAAa,EAAE,QAAQ;IACvB,SAAS,EAAE,SAAS;IACpB,OAAO,EAAE,mBAAmB;IAC5B,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,OAAO;IACjB,QAAQ,EAAE,MAAM;CACjB,CAAA"}
@@ -10,7 +10,13 @@ export const legacyThemeRule = {
10
10
  if (isDefined(data.value.propertyDefinitions)) {
11
11
  return;
12
12
  }
13
- report(data.path, undefined, []);
13
+ report({
14
+ path: data.path,
15
+ info: {
16
+ title: `Legacy theme`,
17
+ description: `You are using an older Nordcraft theme system. Migrate your theme to the newest version to enable multi-theme support and more.`,
18
+ },
19
+ });
14
20
  },
15
21
  };
16
22
  //# sourceMappingURL=legacyThemeRule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"legacyThemeRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/legacyThemeRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC9C,OAAM;QACR,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAA;IAAA,CACjC;CACF,CAAA"}
1
+ {"version":3,"file":"legacyThemeRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/legacyThemeRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,eAAe,GAAS;IACnC,IAAI,EAAE,cAAc;IACpB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,aAAa;IACvB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,eAAe,EAAE,CAAC;YACtC,OAAM;QACR,CAAC;QAED,IAAI,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC9C,OAAM;QACR,CAAC;QAED,MAAM,CAAC;YACL,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE;gBACJ,KAAK,EAAE,cAAc;gBACrB,WAAW,EAAE,iIAAiI;aAC/I;SACF,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
@@ -72,7 +72,14 @@ export const noReferenceGlobalCSSVariableRule = {
72
72
  usedCSSVariablesInPackageComponents.has(value.key)) {
73
73
  return;
74
74
  }
75
- report(path, { name: value.key });
75
+ report({
76
+ path,
77
+ info: {
78
+ title: `Unused CSS variable`,
79
+ description: `**${value.key}** is never used in any style or other CSS variable. Consider removing it.`,
80
+ },
81
+ details: { name: value.key },
82
+ });
76
83
  },
77
84
  };
78
85
  //# sourceMappingURL=noReferenceGlobalCSSVariable.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"noReferenceGlobalCSSVariable.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/noReferenceGlobalCSSVariable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"noReferenceGlobalCSSVariable.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/noReferenceGlobalCSSVariable.ts"],"names":[],"mappings":"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"}
@@ -18,59 +18,57 @@ export const unknownCSSVariableRule = {
18
18
  if (vars.length === 0) {
19
19
  return;
20
20
  }
21
- const themeCssVariables = theme.propertyDefinitions;
22
- const [_fileType, componentName, _nodes, nodeName] = path;
23
- const localCssVariables = memo(`component-css-variables-${componentName}-${nodeName}`, () => {
24
- const vars = new Set();
25
- const component = files.components[componentName];
26
- if (!component) {
27
- return vars;
28
- }
29
- const visitVars = (nodeName) => {
30
- const node = component?.nodes?.[nodeName];
31
- if (!node) {
32
- return;
33
- }
34
- if (node.type === 'component' || node.type === 'element') {
35
- Object.keys(node.customProperties ?? {}).forEach((varName) => {
36
- vars.add(varName);
37
- });
38
- Object.values(node.variants ?? {}).forEach((variant) => {
39
- Object.keys(variant.customProperties ?? {}).forEach((varName) => {
40
- vars.add(varName);
21
+ const allCssVariableDeclarations = memo(`all-css-variables-declarations`, () => {
22
+ const cssVariableKeys = new Set(Object.keys(theme.propertyDefinitions ?? {}));
23
+ Object.values(files.components ?? {}).forEach((component) => {
24
+ Object.keys(component?.nodes ?? {}).forEach((nodeKey) => {
25
+ const node = component?.nodes?.[nodeKey];
26
+ if (!node) {
27
+ return;
28
+ }
29
+ if (node.type === 'component' || node.type === 'element') {
30
+ Object.keys(node.customProperties ?? {}).forEach((varName) => {
31
+ cssVariableKeys.add(varName);
41
32
  });
42
- });
43
- // Also add legacy style variables
44
- if (node.type === 'element' && node['style-variables']) {
45
- node['style-variables'].forEach((styleVar) => {
46
- vars.add(`--${styleVar.name}`);
33
+ Object.values(node.variants ?? {}).forEach((variant) => {
34
+ Object.keys(variant.customProperties ?? {}).forEach((varName) => {
35
+ cssVariableKeys.add(varName);
36
+ });
47
37
  });
48
- }
49
- // Add if declared in any parent styles object
50
- Object.keys(node.style ?? {}).forEach((styleKey) => {
51
- if (styleKey.startsWith('--')) {
52
- vars.add(styleKey);
38
+ // Also add legacy style variables
39
+ if (node.type === 'element' && node['style-variables']) {
40
+ node['style-variables'].forEach((styleVar) => {
41
+ cssVariableKeys.add(`--${styleVar.name}`);
42
+ });
53
43
  }
54
- });
55
- Object.values(node.variants ?? {}).forEach((variant) => {
56
- Object.keys(variant.style ?? {}).forEach((styleKey) => {
44
+ // Add if declared in any parent styles object
45
+ Object.keys(node.style ?? {}).forEach((styleKey) => {
57
46
  if (styleKey.startsWith('--')) {
58
- vars.add(styleKey);
47
+ cssVariableKeys.add(styleKey);
59
48
  }
60
49
  });
61
- });
62
- }
63
- const parent = Object.entries(component.nodes ?? {}).find(([_, n]) => n.children?.includes(nodeName));
64
- if (parent) {
65
- visitVars(parent[0]);
66
- }
67
- };
68
- visitVars(nodeName.toString());
69
- return vars;
50
+ Object.values(node.variants ?? {}).forEach((variant) => {
51
+ Object.keys(variant.style ?? {}).forEach((styleKey) => {
52
+ if (styleKey.startsWith('--')) {
53
+ cssVariableKeys.add(styleKey);
54
+ }
55
+ });
56
+ });
57
+ }
58
+ });
59
+ });
60
+ return cssVariableKeys;
70
61
  });
71
62
  for (const varName of vars) {
72
- if (!(varName in themeCssVariables) && !localCssVariables.has(varName)) {
73
- report(path, { name: varName });
63
+ if (allCssVariableDeclarations.has(varName) === false) {
64
+ report({
65
+ path,
66
+ info: {
67
+ title: `Unknown CSS variable`,
68
+ description: `The CSS variable **${varName}** is not declared in any parent element or in your theme. The CSS variable must be declared in an ancestor element in its component or in your global theme.`,
69
+ },
70
+ details: { name: varName },
71
+ });
74
72
  }
75
73
  }
76
74
  },
@@ -1 +1 @@
1
- {"version":3,"file":"unknownCSSVariable.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/unknownCSSVariable.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unknownCSSVariable.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/unknownCSSVariable.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,14 @@ export const unknownClassnameRule = {
10
10
  isDefined(value.element.classes?.[value.variant.className])) {
11
11
  return;
12
12
  }
13
- report(path, { name: value.variant.className });
13
+ report({
14
+ path,
15
+ info: {
16
+ title: 'Unknown classname',
17
+ description: `**${value.variant.className}** is not defined. Using an unknown classname will have no effect.`,
18
+ },
19
+ details: { name: value.variant.className },
20
+ });
14
21
  },
15
22
  };
16
23
  //# sourceMappingURL=unknownClassnameRule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"unknownClassnameRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/unknownClassnameRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,oBAAoB,GAE5B;IACH,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC5C,IACE,QAAQ,KAAK,eAAe;YAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ;YAC3C,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;YAChC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAC3D,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC,CAAA;IAAA,CAChD;CACF,CAAA"}
1
+ {"version":3,"file":"unknownClassnameRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/style/unknownClassnameRule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAA;AAG3D,MAAM,CAAC,MAAM,oBAAoB,GAE5B;IACH,IAAI,EAAE,mBAAmB;IACzB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QAC5C,IACE,QAAQ,KAAK,eAAe;YAC5B,OAAO,KAAK,CAAC,OAAO,CAAC,SAAS,KAAK,QAAQ;YAC3C,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,SAAS;YAChC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAC3D,CAAC;YACD,OAAM;QACR,CAAC;QACD,MAAM,CAAC;YACL,IAAI;YACJ,IAAI,EAAE;gBACJ,KAAK,EAAE,mBAAmB;gBAC1B,WAAW,EAAE,KAAK,KAAK,CAAC,OAAO,CAAC,SAAS,oEAAoE;aAC9G;YACD,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,SAAS,EAAE;SAC3C,CAAC,CAAA;IAAA,CACH;CACF,CAAA"}
@@ -17,7 +17,14 @@ export const noReferenceVariableRule = {
17
17
  if (variableInComponent.has(variableKey)) {
18
18
  return;
19
19
  }
20
- report(path, undefined, ['delete-variable']);
20
+ report({
21
+ path,
22
+ info: {
23
+ title: 'Unused variable',
24
+ description: `**${variableKey}** is set but never used by any formula. Consider removing it.`,
25
+ },
26
+ fixes: ['delete-variable'],
27
+ });
21
28
  },
22
29
  fixes: {
23
30
  'delete-variable': removeFromPathFix,
@@ -1 +1 @@
1
- {"version":3,"file":"noReferenceVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/noReferenceVariableRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,uBAAuB,GAAe;IACjD,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;YAC3C,OAAM;QACR,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QAEtC,MAAM,CAAC,EAAE,AAAD,EAAG,AAAD,EAAG,WAAW,CAAC,GAAG,IAAI,CAAA;QAEhC,MAAM,mBAAmB,GAAG,IAAI,CAC9B,uBAAuB,SAAS,CAAC,IAAI,EAAE,EACvC,GAAG,EAAE,CACH,IAAI,GAAG,CACL,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC;aACxC,MAAM,CACL,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CACd,OAAO,CAAC,IAAI,KAAK,MAAM;YACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB;aACA,GAAG,CAAkB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAE,OAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACnE,CACJ,CAAA;QAED,IAAI,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,OAAM;QACR,CAAC;QAED,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,iBAAiB,CAAC,CAAC,CAAA;IAAA,CAC7C;IACD,KAAK,EAAE;QACL,iBAAiB,EAAE,iBAAiB;KACrC;CACF,CAAA"}
1
+ {"version":3,"file":"noReferenceVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/noReferenceVariableRule.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,MAAM,CAAC,MAAM,uBAAuB,GAAe;IACjD,IAAI,EAAE,uBAAuB;IAC7B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,eAAe;IACzB,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,QAAQ,KAAK,oBAAoB,EAAE,CAAC;YAC3C,OAAM;QACR,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,IAAI,CAAA;QAEtC,MAAM,CAAC,EAAE,AAAD,EAAG,AAAD,EAAG,WAAW,CAAC,GAAG,IAAI,CAAA;QAEhC,MAAM,mBAAmB,GAAG,IAAI,CAC9B,uBAAuB,SAAS,CAAC,IAAI,EAAE,EACvC,GAAG,EAAE,CACH,IAAI,GAAG,CACL,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,mBAAmB,EAAE,CAAC;aACxC,MAAM,CACL,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CACd,OAAO,CAAC,IAAI,KAAK,MAAM;YACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW;YAC/B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAClB;aACA,GAAG,CAAkB,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAE,OAAe,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CACnE,CACJ,CAAA;QAED,IAAI,mBAAmB,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,OAAM;QACR,CAAC;QAED,MAAM,CAAC;YACL,IAAI;YACJ,IAAI,EAAE;gBACJ,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,KAAK,WAAW,gEAAgE;aAC9F;YACD,KAAK,EAAE,CAAC,iBAAiB,CAAC;SAC3B,CAAC,CAAA;IAAA,CACH;IACD,KAAK,EAAE;QACL,iBAAiB,EAAE,iBAAiB;KACrC;CACF,CAAA"}
@@ -12,7 +12,14 @@ export const unknownVariableRule = {
12
12
  const [, variableKey] = value.path;
13
13
  const component = files.components[componentName];
14
14
  if (!component?.variables?.[variableKey]) {
15
- report(path, { name: variableKey });
15
+ report({
16
+ path,
17
+ info: {
18
+ title: 'Unknown variable',
19
+ description: `**${variableKey}** does not exist. Make sure to define it before usage.`,
20
+ },
21
+ details: { name: variableKey },
22
+ });
16
23
  }
17
24
  },
18
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unknownVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/unknownVariableRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAE3B;IACH,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAC7B,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAA;QACrC,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownVariableRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/unknownVariableRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,mBAAmB,GAE3B;IACH,IAAI,EAAE,kBAAkB;IACxB,KAAK,EAAE,OAAO;IACd,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IACE,QAAQ,KAAK,SAAS;YACtB,KAAK,CAAC,IAAI,KAAK,MAAM;YACrB,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,WAAW,EAC7B,CAAC;YACD,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,CAAC,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,IAAI,CAAA;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,MAAM,CAAC;gBACL,IAAI;gBACJ,IAAI,EAAE;oBACJ,KAAK,EAAE,kBAAkB;oBACzB,WAAW,EAAE,KAAK,WAAW,yDAAyD;iBACvF;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE;aAC/B,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}
@@ -9,7 +9,14 @@ export const unknownVariableSetterRule = {
9
9
  const [, componentName] = path;
10
10
  const component = files.components[componentName];
11
11
  if (!component?.variables?.[value.variable]) {
12
- report(path, { name: value.variable });
12
+ report({
13
+ path,
14
+ info: {
15
+ title: 'Unknown variable setter',
16
+ description: `**${value.variable}** does not exist. Make sure to define it before setting.`,
17
+ },
18
+ details: { name: value.variable },
19
+ });
13
20
  }
14
21
  },
15
22
  };
@@ -1 +1 @@
1
- {"version":3,"file":"unknownVariableSetterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/unknownVariableSetterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAEjC;IACH,IAAI,EAAE,yBAAyB;IAC/B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IAAI,QAAQ,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAChE,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;QACxC,CAAC;IAAA,CACF;CACF,CAAA"}
1
+ {"version":3,"file":"unknownVariableSetterRule.js","sourceRoot":"","sources":["../../../../src/rules/issues/variables/unknownVariableSetterRule.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,MAAM,yBAAyB,GAEjC;IACH,IAAI,EAAE,yBAAyB;IAC/B,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,mBAAmB;IAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;QACnD,IAAI,QAAQ,KAAK,cAAc,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YAChE,OAAM;QACR,CAAC;QAED,MAAM,CAAC,EAAE,aAAa,CAAC,GAAG,IAAI,CAAA;QAC9B,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,aAAa,CAAC,CAAA;QACjD,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,MAAM,CAAC;gBACL,IAAI;gBACJ,IAAI,EAAE;oBACJ,KAAK,EAAE,yBAAyB;oBAChC,WAAW,EAAE,KAAK,KAAK,CAAC,QAAQ,2DAA2D;iBAC5F;gBACD,OAAO,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,QAAQ,EAAE;aAClC,CAAC,CAAA;QACJ,CAAC;IAAA,CACF;CACF,CAAA"}