@nordcraft/search 1.0.93 → 1.0.95

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 (306) hide show
  1. package/dist/findProblems.js.map +1 -1
  2. package/dist/findSearch.d.ts +6 -0
  3. package/dist/findSearch.js +102 -0
  4. package/dist/findSearch.js.map +1 -0
  5. package/dist/fixProblems.js.map +1 -1
  6. package/dist/fixProject.js.map +1 -1
  7. package/dist/problems.worker.js.map +1 -1
  8. package/dist/rules/issues/actions/actionRules.index.d.ts +1 -1
  9. package/dist/rules/issues/actions/createActionNameRule.d.ts +2 -2
  10. package/dist/rules/issues/actions/createActionNameRule.js.map +1 -1
  11. package/dist/rules/issues/actions/duplicateActionArgumentNameRule.d.ts +2 -2
  12. package/dist/rules/issues/actions/duplicateActionArgumentNameRule.js.map +1 -1
  13. package/dist/rules/issues/actions/legacyActionRule.d.ts +2 -2
  14. package/dist/rules/issues/actions/legacyActionRule.fix.js.map +1 -1
  15. package/dist/rules/issues/actions/legacyActionRule.js.map +1 -1
  16. package/dist/rules/issues/actions/noReferenceProjectActionRule.d.ts +2 -2
  17. package/dist/rules/issues/actions/noReferenceProjectActionRule.js.map +1 -1
  18. package/dist/rules/issues/actions/projectActionIsReferenced.memo.js.map +1 -1
  19. package/dist/rules/issues/actions/unknownActionArgumentRule.d.ts +2 -2
  20. package/dist/rules/issues/actions/unknownActionArgumentRule.js.map +1 -1
  21. package/dist/rules/issues/actions/unknownActionEventRule.d.ts +2 -2
  22. package/dist/rules/issues/actions/unknownActionEventRule.js.map +1 -1
  23. package/dist/rules/issues/actions/unknownProjectActionRule.d.ts +2 -2
  24. package/dist/rules/issues/actions/unknownProjectActionRule.js.map +1 -1
  25. package/dist/rules/issues/apis/apiRules.index.d.ts +4 -4
  26. package/dist/rules/issues/apis/invalidApiParserModeRule.d.ts +2 -2
  27. package/dist/rules/issues/apis/invalidApiParserModeRule.js.map +1 -1
  28. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.d.ts +2 -2
  29. package/dist/rules/issues/apis/invalidApiProxyBodySettingRule.js.map +1 -1
  30. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.d.ts +2 -2
  31. package/dist/rules/issues/apis/invalidApiProxyCookieSettingRule.js.map +1 -1
  32. package/dist/rules/issues/apis/legacyApiRule.d.ts +2 -2
  33. package/dist/rules/issues/apis/legacyApiRule.js.map +1 -1
  34. package/dist/rules/issues/apis/noReferenceApiInputRule.d.ts +2 -2
  35. package/dist/rules/issues/apis/noReferenceApiInputRule.js.map +1 -1
  36. package/dist/rules/issues/apis/noReferenceApiRule.d.ts +2 -2
  37. package/dist/rules/issues/apis/noReferenceApiRule.js.map +1 -1
  38. package/dist/rules/issues/apis/noReferenceApiServiceRule.d.ts +2 -2
  39. package/dist/rules/issues/apis/noReferenceApiServiceRule.js.map +1 -1
  40. package/dist/rules/issues/apis/unknownApiInputRule.d.ts +2 -2
  41. package/dist/rules/issues/apis/unknownApiInputRule.js.map +1 -1
  42. package/dist/rules/issues/apis/unknownApiRule.d.ts +2 -2
  43. package/dist/rules/issues/apis/unknownApiRule.js.map +1 -1
  44. package/dist/rules/issues/apis/unknownApiServiceRule.d.ts +2 -2
  45. package/dist/rules/issues/apis/unknownApiServiceRule.js.map +1 -1
  46. package/dist/rules/issues/apis/unknownFetchInputRule.d.ts +2 -2
  47. package/dist/rules/issues/apis/unknownFetchInputRule.js.map +1 -1
  48. package/dist/rules/issues/attributes/attributeRules.index.d.ts +2 -2
  49. package/dist/rules/issues/attributes/noReferenceAttributeInInstanceRule.d.ts +2 -2
  50. package/dist/rules/issues/attributes/noReferenceAttributeInInstanceRule.js.map +1 -1
  51. package/dist/rules/issues/attributes/noReferenceAttributeRule.d.ts +2 -2
  52. package/dist/rules/issues/attributes/noReferenceAttributeRule.js.map +1 -1
  53. package/dist/rules/issues/attributes/unknownAttributeRule.d.ts +2 -2
  54. package/dist/rules/issues/attributes/unknownAttributeRule.js.map +1 -1
  55. package/dist/rules/issues/attributes/unknownComponentAttributeRule.d.ts +2 -2
  56. package/dist/rules/issues/attributes/unknownComponentAttributeRule.js.map +1 -1
  57. package/dist/rules/issues/components/componentIsReferenced.memo.js.map +1 -1
  58. package/dist/rules/issues/components/componentRules.index.d.ts +1 -1
  59. package/dist/rules/issues/components/invalidComponentStructureRule.d.ts +2 -2
  60. package/dist/rules/issues/components/invalidComponentStructureRule.js.map +1 -1
  61. package/dist/rules/issues/components/noReferenceComponentRule.d.ts +2 -2
  62. package/dist/rules/issues/components/noReferenceComponentRule.js.map +1 -1
  63. package/dist/rules/issues/components/unknownComponentRule.d.ts +2 -2
  64. package/dist/rules/issues/components/unknownComponentRule.js.map +1 -1
  65. package/dist/rules/issues/context/contextRules.index.d.ts +3 -3
  66. package/dist/rules/issues/context/noContextConsumersRule.d.ts +2 -2
  67. package/dist/rules/issues/context/noContextConsumersRule.js.map +1 -1
  68. package/dist/rules/issues/context/unknownContextFormulaRule.d.ts +2 -2
  69. package/dist/rules/issues/context/unknownContextFormulaRule.js.map +1 -1
  70. package/dist/rules/issues/context/unknownContextProviderFormulaRule.d.ts +2 -2
  71. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js.map +1 -1
  72. package/dist/rules/issues/context/unknownContextProviderRule.d.ts +2 -2
  73. package/dist/rules/issues/context/unknownContextProviderRule.js.map +1 -1
  74. package/dist/rules/issues/dom/createRequiredDirectChildRule.d.ts +2 -2
  75. package/dist/rules/issues/dom/createRequiredDirectChildRule.js.map +1 -1
  76. package/dist/rules/issues/dom/createRequiredDirectParentRule.d.ts +2 -2
  77. package/dist/rules/issues/dom/createRequiredDirectParentRule.js.map +1 -1
  78. package/dist/rules/issues/dom/createRequiredElementAttributeRule.d.ts +2 -2
  79. package/dist/rules/issues/dom/createRequiredElementAttributeRule.js.map +1 -1
  80. package/dist/rules/issues/dom/createRequiredMetaTagRule.d.ts +2 -2
  81. package/dist/rules/issues/dom/createRequiredMetaTagRule.js.map +1 -1
  82. package/dist/rules/issues/dom/domRules.index.d.ts +5 -5
  83. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.d.ts +2 -2
  84. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js.map +1 -1
  85. package/dist/rules/issues/dom/imageWithoutDimensionRule.d.ts +2 -2
  86. package/dist/rules/issues/dom/imageWithoutDimensionRule.js.map +1 -1
  87. package/dist/rules/issues/dom/nonEmptyVoidElementRule.d.ts +2 -2
  88. package/dist/rules/issues/dom/nonEmptyVoidElementRule.js.map +1 -1
  89. package/dist/rules/issues/events/duplicateEventTriggerRule.d.ts +2 -2
  90. package/dist/rules/issues/events/duplicateEventTriggerRule.js.map +1 -1
  91. package/dist/rules/issues/events/eventRules.index.d.ts +2 -2
  92. package/dist/rules/issues/events/noReferenceEventRule.d.ts +2 -2
  93. package/dist/rules/issues/events/noReferenceEventRule.js.map +1 -1
  94. package/dist/rules/issues/events/unknownEventRule.d.ts +2 -2
  95. package/dist/rules/issues/events/unknownEventRule.js.map +1 -1
  96. package/dist/rules/issues/events/unknownTriggerEventRule.d.ts +2 -2
  97. package/dist/rules/issues/events/unknownTriggerEventRule.js.map +1 -1
  98. package/dist/rules/issues/formulas/duplicateFormulaArgumentNameRule.d.ts +2 -2
  99. package/dist/rules/issues/formulas/duplicateFormulaArgumentNameRule.js.map +1 -1
  100. package/dist/rules/issues/formulas/formulaRules.index.d.ts +2 -2
  101. package/dist/rules/issues/formulas/legacyFormulaRule.d.ts +2 -2
  102. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js +2 -2
  103. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js.map +1 -1
  104. package/dist/rules/issues/formulas/legacyFormulaRule.js.map +1 -1
  105. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.d.ts +2 -2
  106. package/dist/rules/issues/formulas/noReferenceComponentFormulaRule.js.map +1 -1
  107. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.d.ts +2 -2
  108. package/dist/rules/issues/formulas/noReferenceProjectFormulaRule.js.map +1 -1
  109. package/dist/rules/issues/formulas/projectFormulaIsReferenced.memo.js.map +1 -1
  110. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.d.ts +2 -2
  111. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.js.map +1 -1
  112. package/dist/rules/issues/formulas/unknownFormulaRule.d.ts +2 -2
  113. package/dist/rules/issues/formulas/unknownFormulaRule.js.map +1 -1
  114. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.d.ts +2 -2
  115. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.js.map +1 -1
  116. package/dist/rules/issues/formulas/unknownProjectFormulaRule.d.ts +2 -2
  117. package/dist/rules/issues/formulas/unknownProjectFormulaRule.js.map +1 -1
  118. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.d.ts +2 -2
  119. package/dist/rules/issues/formulas/unknownRepeatIndexFormulaRule.js.map +1 -1
  120. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.d.ts +2 -2
  121. package/dist/rules/issues/formulas/unknownRepeatItemFormulaRule.js.map +1 -1
  122. package/dist/rules/issues/logic/logicRules.index.d.ts +2 -2
  123. package/dist/rules/issues/logic/noStaticNodeCondition.d.ts +2 -2
  124. package/dist/rules/issues/logic/noStaticNodeCondition.js.map +1 -1
  125. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.d.ts +2 -2
  126. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js +1 -1
  127. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js.map +1 -1
  128. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.d.ts +2 -2
  129. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js +1 -1
  130. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js.map +1 -1
  131. package/dist/rules/issues/miscellaneous/createStaticSizeConstraintRule.d.ts +2 -2
  132. package/dist/rules/issues/miscellaneous/createStaticSizeConstraintRule.js.map +1 -1
  133. package/dist/rules/issues/miscellaneous/miscRules.index.d.ts +3 -3
  134. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.d.ts +2 -2
  135. package/dist/rules/issues/miscellaneous/noReferenceNodeRule.js.map +1 -1
  136. package/dist/rules/issues/miscellaneous/noReferencePackageRule.d.ts +2 -2
  137. package/dist/rules/issues/miscellaneous/noReferencePackageRule.js.map +1 -1
  138. package/dist/rules/issues/miscellaneous/requireExtensionRule.d.ts +2 -2
  139. package/dist/rules/issues/miscellaneous/requireExtensionRule.js.map +1 -1
  140. package/dist/rules/issues/miscellaneous/unknownCookieRule.d.ts +2 -2
  141. package/dist/rules/issues/miscellaneous/unknownCookieRule.js +5 -2
  142. package/dist/rules/issues/miscellaneous/unknownCookieRule.js.map +1 -1
  143. package/dist/rules/issues/routing/duplicateRouteRule.d.ts +2 -2
  144. package/dist/rules/issues/routing/duplicateRouteRule.js.map +1 -1
  145. package/dist/rules/issues/routing/duplicateUrlParameterRule.d.ts +2 -2
  146. package/dist/rules/issues/routing/duplicateUrlParameterRule.js.map +1 -1
  147. package/dist/rules/issues/routing/routingRules.index.d.ts +2 -2
  148. package/dist/rules/issues/routing/unknownSetUrlParameterRule.d.ts +2 -2
  149. package/dist/rules/issues/routing/unknownSetUrlParameterRule.js.map +1 -1
  150. package/dist/rules/issues/routing/unknownSetUrlParametersRule.d.ts +2 -2
  151. package/dist/rules/issues/routing/unknownSetUrlParametersRule.js.map +1 -1
  152. package/dist/rules/issues/routing/unknownUrlParameterRule.d.ts +2 -2
  153. package/dist/rules/issues/routing/unknownUrlParameterRule.js.map +1 -1
  154. package/dist/rules/issues/slots/slotRules.index.d.ts +1 -1
  155. package/dist/rules/issues/slots/unknownComponentSlotRule.d.ts +2 -2
  156. package/dist/rules/issues/slots/unknownComponentSlotRule.js.map +1 -1
  157. package/dist/rules/issues/style/invalidStyleSyntaxRule.d.ts +2 -2
  158. package/dist/rules/issues/style/invalidStyleSyntaxRule.js.map +1 -1
  159. package/dist/rules/issues/style/legacyStyleVariableRule.d.ts +2 -2
  160. package/dist/rules/issues/style/legacyStyleVariableRule.js.map +1 -1
  161. package/dist/rules/issues/style/legacyThemeRule.d.ts +2 -2
  162. package/dist/rules/issues/style/legacyThemeRule.js.map +1 -1
  163. package/dist/rules/issues/style/noReferenceAnimationRule.d.ts +2 -2
  164. package/dist/rules/issues/style/noReferenceAnimationRule.js.map +1 -1
  165. package/dist/rules/issues/style/noReferenceGlobalCSSVariable.d.ts +2 -2
  166. package/dist/rules/issues/style/noReferenceGlobalCSSVariable.js.map +1 -1
  167. package/dist/rules/issues/style/styleRules.index.d.ts +3 -3
  168. package/dist/rules/issues/style/unknownCSSVariable.d.ts +2 -2
  169. package/dist/rules/issues/style/unknownCSSVariable.js.map +1 -1
  170. package/dist/rules/issues/style/unknownClassnameRule.d.ts +2 -2
  171. package/dist/rules/issues/style/unknownClassnameRule.js.map +1 -1
  172. package/dist/rules/issues/variables/noReferenceVariableRule.d.ts +2 -2
  173. package/dist/rules/issues/variables/noReferenceVariableRule.js.map +1 -1
  174. package/dist/rules/issues/variables/unknownVariableRule.d.ts +2 -2
  175. package/dist/rules/issues/variables/unknownVariableRule.js.map +1 -1
  176. package/dist/rules/issues/variables/unknownVariableSetterRule.d.ts +2 -2
  177. package/dist/rules/issues/variables/unknownVariableSetterRule.js.map +1 -1
  178. package/dist/rules/issues/variables/variableRules.index.d.ts +1 -1
  179. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.d.ts +2 -2
  180. package/dist/rules/issues/workflows/duplicateWorkflowParameterRule.js.map +1 -1
  181. package/dist/rules/issues/workflows/noPostNavigateAction.d.ts +2 -2
  182. package/dist/rules/issues/workflows/noPostNavigateAction.js.map +1 -1
  183. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.d.ts +2 -2
  184. package/dist/rules/issues/workflows/noReferenceComponentWorkflowRule.js.map +1 -1
  185. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.d.ts +2 -2
  186. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js.map +1 -1
  187. package/dist/rules/issues/workflows/unknownContextWorkflowRule.d.ts +2 -2
  188. package/dist/rules/issues/workflows/unknownContextWorkflowRule.js.map +1 -1
  189. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.d.ts +2 -2
  190. package/dist/rules/issues/workflows/unknownTriggerWorkflowParameterRule.js.map +1 -1
  191. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.d.ts +2 -2
  192. package/dist/rules/issues/workflows/unknownTriggerWorkflowRule.js.map +1 -1
  193. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.d.ts +2 -2
  194. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.js.map +1 -1
  195. package/dist/rules/issues/workflows/workflowRules.index.d.ts +3 -3
  196. package/dist/rules/search/fieldSearchRule.d.ts +8 -0
  197. package/dist/rules/search/fieldSearchRule.js +293 -0
  198. package/dist/rules/search/fieldSearchRule.js.map +1 -0
  199. package/dist/search.worker.d.ts +1 -11
  200. package/dist/search.worker.js +17 -6
  201. package/dist/search.worker.js.map +1 -1
  202. package/dist/searchProject.d.ts +11 -5
  203. package/dist/searchProject.js +11 -12
  204. package/dist/searchProject.js.map +1 -1
  205. package/dist/types.d.ts +33 -3
  206. package/dist/util/contextlessEvaluateFormula.js +4 -4
  207. package/dist/util/contextlessEvaluateFormula.js.map +1 -1
  208. package/dist/util/helpers.js.map +1 -1
  209. package/dist/util/parseSearchQuery.d.ts +24 -0
  210. package/dist/util/parseSearchQuery.js +81 -0
  211. package/dist/util/parseSearchQuery.js.map +1 -0
  212. package/dist/util/removeUnused.fix.js.map +1 -1
  213. package/package.json +6 -5
  214. package/src/findProblems.ts +7 -3
  215. package/src/findSearch.ts +134 -0
  216. package/src/rules/issues/actions/createActionNameRule.ts +2 -2
  217. package/src/rules/issues/actions/duplicateActionArgumentNameRule.ts +2 -2
  218. package/src/rules/issues/actions/legacyActionRule.ts +2 -2
  219. package/src/rules/issues/actions/noReferenceProjectActionRule.ts +2 -2
  220. package/src/rules/issues/actions/unknownActionArgumentRule.ts +2 -2
  221. package/src/rules/issues/actions/unknownActionEventRule.ts +2 -2
  222. package/src/rules/issues/actions/unknownProjectActionRule.ts +2 -2
  223. package/src/rules/issues/apis/invalidApiParserModeRule.ts +2 -2
  224. package/src/rules/issues/apis/invalidApiProxyBodySettingRule.ts +2 -2
  225. package/src/rules/issues/apis/invalidApiProxyCookieSettingRule.ts +2 -2
  226. package/src/rules/issues/apis/legacyApiRule.ts +2 -2
  227. package/src/rules/issues/apis/noReferenceApiInputRule.ts +2 -2
  228. package/src/rules/issues/apis/noReferenceApiRule.ts +2 -2
  229. package/src/rules/issues/apis/noReferenceApiServiceRule.ts +2 -2
  230. package/src/rules/issues/apis/unknownApiInputRule.ts +2 -2
  231. package/src/rules/issues/apis/unknownApiRule.ts +2 -2
  232. package/src/rules/issues/apis/unknownApiServiceRule.ts +2 -2
  233. package/src/rules/issues/apis/unknownFetchInputRule.ts +2 -2
  234. package/src/rules/issues/attributes/noReferenceAttributeInInstanceRule.ts +2 -2
  235. package/src/rules/issues/attributes/noReferenceAttributeRule.ts +2 -2
  236. package/src/rules/issues/attributes/unknownAttributeRule.ts +2 -2
  237. package/src/rules/issues/attributes/unknownComponentAttributeRule.ts +2 -2
  238. package/src/rules/issues/components/invalidComponentStructureRule.ts +2 -2
  239. package/src/rules/issues/components/noReferenceComponentRule.ts +2 -2
  240. package/src/rules/issues/components/unknownComponentRule.ts +2 -2
  241. package/src/rules/issues/context/noContextConsumersRule.ts +2 -2
  242. package/src/rules/issues/context/unknownContextFormulaRule.ts +2 -2
  243. package/src/rules/issues/context/unknownContextProviderFormulaRule.ts +2 -2
  244. package/src/rules/issues/context/unknownContextProviderRule.ts +32 -31
  245. package/src/rules/issues/dom/createRequiredDirectChildRule.ts +2 -2
  246. package/src/rules/issues/dom/createRequiredDirectParentRule.ts +2 -2
  247. package/src/rules/issues/dom/createRequiredElementAttributeRule.ts +2 -2
  248. package/src/rules/issues/dom/createRequiredMetaTagRule.ts +2 -2
  249. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.ts +2 -2
  250. package/src/rules/issues/dom/imageWithoutDimensionRule.ts +2 -2
  251. package/src/rules/issues/dom/nonEmptyVoidElementRule.ts +2 -2
  252. package/src/rules/issues/events/duplicateEventTriggerRule.ts +2 -2
  253. package/src/rules/issues/events/noReferenceEventRule.ts +2 -2
  254. package/src/rules/issues/events/unknownEventRule.ts +2 -2
  255. package/src/rules/issues/events/unknownTriggerEventRule.ts +2 -2
  256. package/src/rules/issues/formulas/duplicateFormulaArgumentNameRule.ts +2 -2
  257. package/src/rules/issues/formulas/legacyFormulaRule.fix.ts +2 -2
  258. package/src/rules/issues/formulas/legacyFormulaRule.ts +2 -2
  259. package/src/rules/issues/formulas/noReferenceComponentFormulaRule.ts +2 -2
  260. package/src/rules/issues/formulas/noReferenceProjectFormulaRule.ts +2 -2
  261. package/src/rules/issues/formulas/unknownComponentFormulaInputRule.ts +2 -2
  262. package/src/rules/issues/formulas/unknownFormulaRule.ts +2 -2
  263. package/src/rules/issues/formulas/unknownProjectFormulaInputRule.ts +2 -2
  264. package/src/rules/issues/formulas/unknownProjectFormulaRule.ts +2 -2
  265. package/src/rules/issues/formulas/unknownRepeatIndexFormulaRule.ts +2 -2
  266. package/src/rules/issues/formulas/unknownRepeatItemFormulaRule.ts +2 -2
  267. package/src/rules/issues/logic/noStaticNodeCondition.ts +2 -2
  268. package/src/rules/issues/logic/noUnnecessaryConditionFalsy.ts +3 -3
  269. package/src/rules/issues/logic/noUnnecessaryConditionTruthy.ts +3 -3
  270. package/src/rules/issues/miscellaneous/createStaticSizeConstraintRule.ts +2 -2
  271. package/src/rules/issues/miscellaneous/noReferenceNodeRule.ts +2 -2
  272. package/src/rules/issues/miscellaneous/noReferencePackageRule.ts +2 -2
  273. package/src/rules/issues/miscellaneous/requireExtensionRule.ts +2 -2
  274. package/src/rules/issues/miscellaneous/unknownCookieRule.ts +7 -4
  275. package/src/rules/issues/routing/duplicateRouteRule.ts +2 -2
  276. package/src/rules/issues/routing/duplicateUrlParameterRule.ts +2 -2
  277. package/src/rules/issues/routing/unknownSetUrlParameterRule.ts +2 -2
  278. package/src/rules/issues/routing/unknownSetUrlParametersRule.ts +2 -2
  279. package/src/rules/issues/routing/unknownUrlParameterRule.ts +2 -2
  280. package/src/rules/issues/slots/unknownComponentSlotRule.ts +2 -2
  281. package/src/rules/issues/style/invalidStyleSyntaxRule.ts +2 -2
  282. package/src/rules/issues/style/legacyStyleVariableRule.ts +2 -2
  283. package/src/rules/issues/style/legacyThemeRule.ts +2 -2
  284. package/src/rules/issues/style/noReferenceAnimationRule.ts +2 -2
  285. package/src/rules/issues/style/noReferenceGlobalCSSVariable.ts +2 -2
  286. package/src/rules/issues/style/unknownCSSVariable.ts +2 -2
  287. package/src/rules/issues/style/unknownClassnameRule.ts +2 -2
  288. package/src/rules/issues/variables/noReferenceVariableRule.ts +2 -2
  289. package/src/rules/issues/variables/unknownVariableRule.ts +2 -2
  290. package/src/rules/issues/variables/unknownVariableSetterRule.ts +2 -2
  291. package/src/rules/issues/workflows/duplicateWorkflowParameterRule.ts +29 -28
  292. package/src/rules/issues/workflows/noPostNavigateAction.ts +2 -2
  293. package/src/rules/issues/workflows/noReferenceComponentWorkflowRule.ts +2 -2
  294. package/src/rules/issues/workflows/unknownContextProviderWorkflowRule.ts +2 -2
  295. package/src/rules/issues/workflows/unknownContextWorkflowRule.ts +2 -2
  296. package/src/rules/issues/workflows/unknownTriggerWorkflowParameterRule.ts +55 -54
  297. package/src/rules/issues/workflows/unknownTriggerWorkflowRule.ts +2 -2
  298. package/src/rules/issues/workflows/unknownWorkflowParameterRule.ts +2 -2
  299. package/src/rules/search/fieldSearchRule.test.ts +464 -0
  300. package/src/rules/search/fieldSearchRule.ts +391 -0
  301. package/src/search.worker.ts +19 -46
  302. package/src/searchProject.ts +45 -27
  303. package/src/types.ts +41 -3
  304. package/src/util/contextlessEvaluateFormula.ts +4 -4
  305. package/src/util/parseSearchQuery.test.ts +56 -0
  306. package/src/util/parseSearchQuery.ts +92 -0
@@ -1,11 +1,11 @@
1
1
  import type { Component } from '@nordcraft/core/dist/component/component.types'
2
2
  import { isDefined } from '@nordcraft/core/dist/utils/util'
3
- import type { Rule } from '../../../types'
3
+ import type { IssueRule } from '../../../types'
4
4
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
5
5
  import { removeFromPathFix } from '../../../util/removeUnused.fix'
6
6
  import { componentIsReferenced } from './componentIsReferenced.memo'
7
7
 
8
- export const noReferenceComponentRule: Rule<void> = {
8
+ export const noReferenceComponentRule: IssueRule<void> = {
9
9
  code: 'no-reference component',
10
10
  level: 'warning',
11
11
  category: 'No References',
@@ -1,7 +1,7 @@
1
1
  import { isDefined } from '@nordcraft/core/dist/utils/util'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownComponentRule: Rule<{
4
+ export const unknownComponentRule: IssueRule<{
5
5
  name: string
6
6
  }> = {
7
7
  code: 'unknown component',
@@ -1,10 +1,10 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
3
  /**
4
4
  * Rule for checking if a component exposes formulas or workflows
5
5
  * in context but has no slots or components that could consume them
6
6
  */
7
- export const noContextConsumersRule: Rule<{
7
+ export const noContextConsumersRule: IssueRule<{
8
8
  providerName: string
9
9
  formulaName: string
10
10
  }> = {
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownContextFormulaRule: Rule<{
3
+ export const unknownContextFormulaRule: IssueRule<{
4
4
  providerName: string
5
5
  formulaName: string
6
6
  }> = {
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownContextProviderFormulaRule: Rule<{
3
+ export const unknownContextProviderFormulaRule: IssueRule<{
4
4
  providerName: string
5
5
  formulaName: string
6
6
  }> = {
@@ -1,37 +1,38 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownContextProviderRule: Rule<{ componentName: string }> = {
4
- code: 'unknown context provider',
5
- level: 'error',
6
- category: 'Unknown Reference',
7
- visit: (report, { path, files, value, nodeType }) => {
8
- if (nodeType !== 'component-context') {
9
- return
10
- }
11
-
12
- if (!value.componentName) {
13
- return
14
- }
15
-
16
- if (value.package) {
17
- const _package = files.packages?.[value.package]
18
- if (_package?.components[value.componentName]) {
3
+ export const unknownContextProviderRule: IssueRule<{ componentName: string }> =
4
+ {
5
+ code: 'unknown context provider',
6
+ level: 'error',
7
+ category: 'Unknown Reference',
8
+ visit: (report, { path, files, value, nodeType }) => {
9
+ if (nodeType !== 'component-context') {
19
10
  return
20
11
  }
21
- } else {
22
- const component = files.components[value.componentName]
23
- if (component) {
12
+
13
+ if (!value.componentName) {
24
14
  return
25
15
  }
26
- }
27
16
 
28
- report({
29
- path,
30
- info: {
31
- title: 'Unknown context provider',
32
- description: `**${value.componentName}** component or page does not exist and cannot be subscribed. Make sure to define it before using it.`,
33
- },
34
- details: { componentName: value.componentName },
35
- })
36
- },
37
- }
17
+ if (value.package) {
18
+ const _package = files.packages?.[value.package]
19
+ if (_package?.components[value.componentName]) {
20
+ return
21
+ }
22
+ } else {
23
+ const component = files.components[value.componentName]
24
+ if (component) {
25
+ return
26
+ }
27
+ }
28
+
29
+ report({
30
+ path,
31
+ info: {
32
+ title: 'Unknown context provider',
33
+ description: `**${value.componentName}** component or page does not exist and cannot be subscribed. Make sure to define it before using it.`,
34
+ },
35
+ details: { componentName: value.componentName },
36
+ })
37
+ },
38
+ }
@@ -1,11 +1,11 @@
1
1
  import type { NodeModel } from '@nordcraft/core/dist/component/component.types'
2
- import type { Level, Rule } from '../../../types'
2
+ import type { IssueRule, Level } from '../../../types'
3
3
 
4
4
  export function createRequiredDirectChildRule(
5
5
  parentTags: string[],
6
6
  childTags: string[],
7
7
  level: Level = 'warning',
8
- ): Rule<{
8
+ ): IssueRule<{
9
9
  parentTag: string
10
10
  childTag: string
11
11
  allowedChildTags: string[]
@@ -1,10 +1,10 @@
1
- import type { Level, Rule } from '../../../types'
1
+ import type { IssueRule, Level } from '../../../types'
2
2
 
3
3
  export function createRequiredDirectParentRule(
4
4
  parentTags: string[],
5
5
  childTags: string[],
6
6
  level: Level = 'warning',
7
- ): Rule<{
7
+ ): IssueRule<{
8
8
  parentTag: string
9
9
  childTag: string
10
10
  allowedParentTags: string[]
@@ -1,5 +1,5 @@
1
1
  import { isDefined, toBoolean } from '@nordcraft/core/dist/utils/util'
2
- import type { Level, Rule } from '../../../types'
2
+ import type { IssueRule, Level } from '../../../types'
3
3
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
4
4
 
5
5
  /**
@@ -19,7 +19,7 @@ export function createRequiredElementAttributeRule({
19
19
  attribute: string | string[]
20
20
  level?: Level
21
21
  allowEmptyString?: boolean
22
- }): Rule<{
22
+ }): IssueRule<{
23
23
  tag: string
24
24
  attribute: string
25
25
  }> {
@@ -1,10 +1,10 @@
1
1
  import { isFormula } from '@nordcraft/core/dist/formula/formula'
2
- import type { Level, Rule } from '../../../types'
2
+ import type { IssueRule, Level } from '../../../types'
3
3
 
4
4
  export function createRequiredMetaTagRule(
5
5
  tag: string,
6
6
  level: Level = 'warning',
7
- ): Rule<{
7
+ ): IssueRule<{
8
8
  tag: string
9
9
  }> {
10
10
  return {
@@ -1,7 +1,7 @@
1
1
  import type { Component } from '@nordcraft/core/dist/component/component.types'
2
2
  import type { ToddleComponent } from '@nordcraft/core/dist/component/ToddleComponent'
3
3
  import { isDefined } from '@nordcraft/core/dist/utils/util'
4
- import type { Rule } from '../../../types'
4
+ import type { IssueRule } from '../../../types'
5
5
  import {
6
6
  interactiveContentElementDefinition,
7
7
  type InteractiveContent,
@@ -9,7 +9,7 @@ import {
9
9
 
10
10
  const ELEMENTS_WITHOUT_INTERACTIVE_CONTENT = ['button', 'a']
11
11
 
12
- export const elementWithoutInteractiveContentRule: Rule<{
12
+ export const elementWithoutInteractiveContentRule: IssueRule<{
13
13
  parentTag: string
14
14
  invalidChild: InteractiveContent
15
15
  }> = {
@@ -1,5 +1,5 @@
1
1
  import { isDefined } from '@nordcraft/core/dist/utils/util'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
4
4
 
5
5
  const nonStaticDimensionKeywords = ['', 'auto']
@@ -7,7 +7,7 @@ const nonStaticDimensionKeywords = ['', 'auto']
7
7
  * Lighthouse reports a similar issue:
8
8
  * https://web.dev/articles/optimize-cls?utm_source=lighthouse&utm_medium=devtools#images_without_dimensions
9
9
  */
10
- export const imageWithoutDimensionRule: Rule = {
10
+ export const imageWithoutDimensionRule: IssueRule = {
11
11
  code: 'image without dimension',
12
12
  level: 'warning',
13
13
  category: 'Performance',
@@ -1,10 +1,10 @@
1
1
  import { VOID_HTML_ELEMENTS } from '@nordcraft/core/dist/utils/html'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
  /**
4
4
  * See full list here
5
5
  * https://developer.mozilla.org/en-US/docs/Glossary/Void_element
6
6
  */
7
- export const nonEmptyVoidElementRule: Rule<{ tag: string }> = {
7
+ export const nonEmptyVoidElementRule: IssueRule<{ tag: string }> = {
8
8
  code: 'non-empty void element',
9
9
  level: 'warning',
10
10
  category: 'Quality',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const duplicateEventTriggerRule: Rule<{ trigger: string }> = {
3
+ export const duplicateEventTriggerRule: IssueRule<{ trigger: string }> = {
4
4
  code: 'duplicate event trigger',
5
5
  level: 'warning',
6
6
  category: 'Quality',
@@ -1,8 +1,8 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
  import { isLegacyAction } from '../../../util/helpers'
3
3
  import { removeFromPathFix } from '../../../util/removeUnused.fix'
4
4
 
5
- export const noReferenceEventRule: Rule<{ name: string }> = {
5
+ export const noReferenceEventRule: IssueRule<{ name: string }> = {
6
6
  code: 'no-reference event',
7
7
  level: 'warning',
8
8
  category: 'No References',
@@ -1,7 +1,7 @@
1
1
  import { isDefined } from '@nordcraft/core/dist/utils/util'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownEventRule: Rule<{
4
+ export const unknownEventRule: IssueRule<{
5
5
  name: string
6
6
  }> = {
7
7
  code: 'unknown event',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownTriggerEventRule: Rule<{
3
+ export const unknownTriggerEventRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'unknown trigger event',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const duplicateFormulaArgumentNameRule: Rule<{
3
+ export const duplicateFormulaArgumentNameRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'duplicate formula argument name',
@@ -23,7 +23,7 @@ export const replaceLegacyFormula: FixFunction<
23
23
  const andFormula: AndOperation = {
24
24
  ...legacyAndFormula,
25
25
  type: 'and',
26
- arguments: legacyAndFormula.arguments.map((a) => {
26
+ arguments: (legacyAndFormula.arguments ?? []).map((a) => {
27
27
  const { name, ...argument } = a
28
28
  return argument
29
29
  }),
@@ -240,7 +240,7 @@ export const replaceLegacyFormula: FixFunction<
240
240
  const andFormula: OrOperation = {
241
241
  ...legacyOrFormula,
242
242
  type: 'or',
243
- arguments: legacyOrFormula.arguments.map((a) => {
243
+ arguments: (legacyOrFormula.arguments ?? []).map((a) => {
244
244
  const { name, ...argument } = a
245
245
  return argument
246
246
  }),
@@ -2,10 +2,10 @@ import type { FunctionOperation } from '@nordcraft/core/dist/formula/formula'
2
2
  import { isToddleFormula } from '@nordcraft/core/dist/formula/formula'
3
3
  import { isDefined } from '@nordcraft/core/dist/utils/util'
4
4
  import type { ProjectFiles } from '@nordcraft/ssr/dist/ssr.types'
5
- import type { FormulaNode, NodeType, Rule } from '../../../types'
5
+ import type { FormulaNode, IssueRule, NodeType } from '../../../types'
6
6
  import { replaceLegacyFormula } from './legacyFormulaRule.fix'
7
7
 
8
- export const legacyFormulaRule: Rule<
8
+ export const legacyFormulaRule: IssueRule<
9
9
  {
10
10
  name: string
11
11
  },
@@ -1,8 +1,8 @@
1
1
  import { ToddleComponent } from '@nordcraft/core/dist/component/ToddleComponent'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
  import { removeFromPathFix } from '../../../util/removeUnused.fix'
4
4
 
5
- export const noReferenceComponentFormulaRule: Rule<{
5
+ export const noReferenceComponentFormulaRule: IssueRule<{
6
6
  name: string
7
7
  contextSubscribers: string[]
8
8
  }> = {
@@ -1,8 +1,8 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
  import { removeFromPathFix } from '../../../util/removeUnused.fix'
3
3
  import { projectFormulaIsReferenced } from './projectFormulaIsReferenced.memo'
4
4
 
5
- export const noReferenceProjectFormulaRule: Rule<void> = {
5
+ export const noReferenceProjectFormulaRule: IssueRule<void> = {
6
6
  code: 'no-reference project formula',
7
7
  level: 'warning',
8
8
  category: 'No References',
@@ -1,9 +1,9 @@
1
1
  import type { ComponentFormula } from '@nordcraft/core/dist/component/component.types'
2
2
  import { get } from '@nordcraft/core/dist/utils/collections'
3
3
  import { isDefined } from '@nordcraft/core/dist/utils/util'
4
- import type { Rule } from '../../../types'
4
+ import type { IssueRule } from '../../../types'
5
5
 
6
- export const unknownComponentFormulaInputRule: Rule<{
6
+ export const unknownComponentFormulaInputRule: IssueRule<{
7
7
  name?: string | null
8
8
  }> = {
9
9
  code: 'unknown component formula input',
@@ -1,7 +1,7 @@
1
1
  import { isFormulaApplyOperation } from '@nordcraft/core/dist/formula/formula'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownFormulaRule: Rule<{
4
+ export const unknownFormulaRule: IssueRule<{
5
5
  name: string
6
6
  }> = {
7
7
  code: 'unknown formula',
@@ -1,9 +1,9 @@
1
1
  import type { ComponentFormula } from '@nordcraft/core/dist/component/component.types'
2
2
  import { get } from '@nordcraft/core/dist/utils/collections'
3
3
  import { isDefined } from '@nordcraft/core/dist/utils/util'
4
- import type { Rule } from '../../../types'
4
+ import type { IssueRule } from '../../../types'
5
5
 
6
- export const unknownProjectFormulaInputRule: Rule<{
6
+ export const unknownProjectFormulaInputRule: IssueRule<{
7
7
  name?: string | null
8
8
  }> = {
9
9
  code: 'unknown project formula input',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownProjectFormulaRule: Rule<{ name: string }> = {
3
+ export const unknownProjectFormulaRule: IssueRule<{ name: string }> = {
4
4
  code: 'unknown project formula',
5
5
  level: 'warning',
6
6
  category: 'Unknown Reference',
@@ -1,7 +1,7 @@
1
1
  import type { NodeModel } from '@nordcraft/core/dist/component/component.types'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownRepeatIndexFormulaRule: Rule = {
4
+ export const unknownRepeatIndexFormulaRule: IssueRule = {
5
5
  code: 'unknown repeat index formula',
6
6
  level: 'error',
7
7
  category: 'Unknown Reference',
@@ -1,7 +1,7 @@
1
1
  import type { NodeModel } from '@nordcraft/core/dist/component/component.types'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownRepeatItemFormulaRule: Rule = {
4
+ export const unknownRepeatItemFormulaRule: IssueRule = {
5
5
  code: 'unknown repeat item formula',
6
6
  level: 'error',
7
7
  category: 'Unknown Reference',
@@ -1,11 +1,11 @@
1
- import type { FixFunction, NodeType, Rule } from '../../../types'
1
+ import type { FixFunction, IssueRule, NodeType } from '../../../types'
2
2
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
3
3
  import {
4
4
  removeFromPathFix,
5
5
  removeNodeFromPathFix,
6
6
  } from '../../../util/removeUnused.fix'
7
7
 
8
- export const noStaticNodeCondition: Rule<{
8
+ export const noStaticNodeCondition: IssueRule<{
9
9
  result: ReturnType<typeof contextlessEvaluateFormula>['result']
10
10
  }> = {
11
11
  code: 'no-static-node-condition',
@@ -1,7 +1,7 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
3
3
 
4
- export const noUnnecessaryConditionFalsy: Rule = {
4
+ export const noUnnecessaryConditionFalsy: IssueRule = {
5
5
  code: 'no-unnecessary-condition-falsy',
6
6
  level: 'info',
7
7
  category: 'Quality',
@@ -11,7 +11,7 @@ export const noUnnecessaryConditionFalsy: Rule = {
11
11
  }
12
12
 
13
13
  if (
14
- value.arguments.some((arg) => {
14
+ (value.arguments ?? []).some((arg) => {
15
15
  const { result, isStatic } = contextlessEvaluateFormula(arg.formula)
16
16
  return isStatic && Boolean(result) === false
17
17
  })
@@ -1,7 +1,7 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
  import { contextlessEvaluateFormula } from '../../../util/contextlessEvaluateFormula'
3
3
 
4
- export const noUnnecessaryConditionTruthy: Rule = {
4
+ export const noUnnecessaryConditionTruthy: IssueRule = {
5
5
  code: 'no-unnecessary-condition-truthy',
6
6
  level: 'info',
7
7
  category: 'Quality',
@@ -11,7 +11,7 @@ export const noUnnecessaryConditionTruthy: Rule = {
11
11
  }
12
12
 
13
13
  if (
14
- value.arguments.some((arg) => {
14
+ (value.arguments ?? []).some((arg) => {
15
15
  // Objects and arrays, even empty ones, are always truthy
16
16
  if (arg.formula.type === 'object' || arg.formula.type === 'array') {
17
17
  return true
@@ -1,13 +1,13 @@
1
1
  import type { NodeModel } from '@nordcraft/core/dist/component/component.types'
2
2
  import { VOID_HTML_ELEMENTS } from '@nordcraft/core/dist/utils/html'
3
3
  import { isDefined } from '@nordcraft/core/dist/utils/util'
4
- import type { Level, Rule } from '../../../types'
4
+ import type { IssueRule, Level } from '../../../types'
5
5
 
6
6
  export function createStaticSizeConstraintRule(
7
7
  tag: string,
8
8
  maxSize: number,
9
9
  level: Level = 'info',
10
- ): Rule<{
10
+ ): IssueRule<{
11
11
  tag: string
12
12
  size: number
13
13
  }> {
@@ -1,7 +1,7 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
  import { removeNodeFromPathFix } from '../../../util/removeUnused.fix'
3
3
 
4
- export const noReferenceNodeRule: Rule<{ node: string }> = {
4
+ export const noReferenceNodeRule: IssueRule<{ node: string }> = {
5
5
  code: 'no-reference node',
6
6
  level: 'warning',
7
7
  category: 'No References',
@@ -1,11 +1,11 @@
1
1
  import type { PluginActionV2 } from '@nordcraft/core/dist/types'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
  import { removeFromPathFix } from '../../../util/removeUnused.fix'
4
4
  import { projectActionIsReferenced } from '../actions/projectActionIsReferenced.memo'
5
5
  import { componentIsReferenced } from '../components/componentIsReferenced.memo'
6
6
  import { projectFormulaIsReferenced } from '../formulas/projectFormulaIsReferenced.memo'
7
7
 
8
- export const noReferenceProjectPackageRule: Rule<{ node: string }> = {
8
+ export const noReferenceProjectPackageRule: IssueRule<{ node: string }> = {
9
9
  code: 'no-reference project package',
10
10
  level: 'info',
11
11
  category: 'No References',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const requireExtensionRule: Rule<{
3
+ export const requireExtensionRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'required extension',
@@ -1,7 +1,7 @@
1
1
  import { isDefined } from '@nordcraft/core/dist/utils/util'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const unknownCookieRule: Rule<{
4
+ export const unknownCookieRule: IssueRule<{
5
5
  name: string
6
6
  }> = {
7
7
  code: 'unknown cookie',
@@ -12,12 +12,15 @@ export const unknownCookieRule: Rule<{
12
12
  nodeType !== 'formula' ||
13
13
  value.type !== 'function' ||
14
14
  value.name !== '@toddle/getHttpOnlyCookie' ||
15
- value.arguments.length !== 1 ||
16
15
  state?.isBrowserExtensionAvailable !== true
17
16
  ) {
18
17
  return
19
18
  }
20
- const formula = value.arguments[0]?.formula
19
+ const args = value.arguments ?? []
20
+ if (args.length !== 1) {
21
+ return
22
+ }
23
+ const formula = args[0]?.formula
21
24
  if (
22
25
  !isDefined(formula) ||
23
26
  formula.type !== 'value' ||
@@ -1,8 +1,8 @@
1
1
  import type { RouteDeclaration } from '@nordcraft/core/dist/component/component.types'
2
2
  import { isPageComponent } from '@nordcraft/core/dist/component/isPageComponent'
3
- import type { Rule } from '../../../types'
3
+ import type { IssueRule } from '../../../types'
4
4
 
5
- export const duplicateRouteRule: Rule<{
5
+ export const duplicateRouteRule: IssueRule<{
6
6
  name: string
7
7
  type: 'route' | 'page'
8
8
  duplicates: Array<{ name: string; type: 'route' | 'page' }>
@@ -1,7 +1,7 @@
1
1
  import { isDefined } from '@nordcraft/core/dist/utils/util'
2
- import type { Rule } from '../../../types'
2
+ import type { IssueRule } from '../../../types'
3
3
 
4
- export const duplicateUrlParameterRule: Rule<{ name: string }> = {
4
+ export const duplicateUrlParameterRule: IssueRule<{ name: string }> = {
5
5
  code: 'duplicate url parameter',
6
6
  level: 'warning',
7
7
  category: 'Quality',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownSetUrlParameterRule: Rule<{
3
+ export const unknownSetUrlParameterRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'unknown set url parameter',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownSetUrlParametersRule: Rule<{
3
+ export const unknownSetUrlParametersRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'unknown set url parameters',
@@ -1,6 +1,6 @@
1
- import type { Rule } from '../../../types'
1
+ import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownUrlParameterRule: Rule<{
3
+ export const unknownUrlParameterRule: IssueRule<{
4
4
  name: string
5
5
  }> = {
6
6
  code: 'unknown url parameter',
@@ -1,8 +1,8 @@
1
1
  import { ToddleComponent } from '@nordcraft/core/dist/component/ToddleComponent'
2
2
  import type { SlotNodeModel } from '@nordcraft/core/dist/component/component.types'
3
- import type { Rule } from '../../../types'
3
+ import type { IssueRule } from '../../../types'
4
4
 
5
- export const unknownComponentSlotRule: Rule<{ slotName: string }> = {
5
+ export const unknownComponentSlotRule: IssueRule<{ slotName: string }> = {
6
6
  code: 'unknown component slot',
7
7
  level: 'error',
8
8
  category: 'Unknown Reference',