@nordcraft/search 1.0.94 → 1.0.96

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 (70) hide show
  1. package/dist/rules/issues/apis/apiRules.index.d.ts +2 -0
  2. package/dist/rules/issues/apis/noReferenceApiInputRule.js.map +1 -1
  3. package/dist/rules/issues/apis/noReferenceApiServiceRule.js +4 -1
  4. package/dist/rules/issues/apis/noReferenceApiServiceRule.js.map +1 -1
  5. package/dist/rules/issues/apis/unknownApiRule.d.ts +1 -1
  6. package/dist/rules/issues/attributes/attributeRules.index.d.ts +1 -1
  7. package/dist/rules/issues/attributes/noReferenceAttributeRule.js.map +1 -1
  8. package/dist/rules/issues/attributes/unknownAttributeRule.d.ts +1 -1
  9. package/dist/rules/issues/context/unknownContextFormulaRule.js.map +1 -1
  10. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js +3 -2
  11. package/dist/rules/issues/context/unknownContextProviderFormulaRule.js.map +1 -1
  12. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js +13 -3
  13. package/dist/rules/issues/dom/elementWithoutInteractiveContentRule.js.map +1 -1
  14. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js +2 -2
  15. package/dist/rules/issues/formulas/legacyFormulaRule.fix.js.map +1 -1
  16. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.d.ts +1 -1
  17. package/dist/rules/issues/formulas/unknownComponentFormulaInputRule.js.map +1 -1
  18. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.d.ts +1 -1
  19. package/dist/rules/issues/formulas/unknownProjectFormulaInputRule.js.map +1 -1
  20. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js +1 -1
  21. package/dist/rules/issues/logic/noUnnecessaryConditionFalsy.js.map +1 -1
  22. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js +1 -1
  23. package/dist/rules/issues/logic/noUnnecessaryConditionTruthy.js.map +1 -1
  24. package/dist/rules/issues/miscellaneous/unknownCookieRule.js +5 -2
  25. package/dist/rules/issues/miscellaneous/unknownCookieRule.js.map +1 -1
  26. package/dist/rules/issues/routing/noEmptyUrlParameterNameRule.d.ts +4 -0
  27. package/dist/rules/issues/routing/noEmptyUrlParameterNameRule.js +39 -0
  28. package/dist/rules/issues/routing/noEmptyUrlParameterNameRule.js.map +1 -0
  29. package/dist/rules/issues/routing/routingRules.index.d.ts +2 -0
  30. package/dist/rules/issues/routing/routingRules.index.js +2 -0
  31. package/dist/rules/issues/routing/routingRules.index.js.map +1 -1
  32. package/dist/rules/issues/routing/unknownUrlParameterRule.d.ts +1 -1
  33. package/dist/rules/issues/variables/unknownVariableRule.d.ts +1 -1
  34. package/dist/rules/issues/variables/variableRules.index.d.ts +2 -0
  35. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js +3 -2
  36. package/dist/rules/issues/workflows/unknownContextProviderWorkflowRule.js.map +1 -1
  37. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.d.ts +1 -1
  38. package/dist/rules/issues/workflows/unknownWorkflowParameterRule.js.map +1 -1
  39. package/dist/rules/issues/workflows/workflowRules.index.d.ts +2 -0
  40. package/dist/searchProject.js +3 -0
  41. package/dist/searchProject.js.map +1 -1
  42. package/dist/types.d.ts +1 -1
  43. package/dist/util/contextlessEvaluateFormula.js +4 -4
  44. package/dist/util/contextlessEvaluateFormula.js.map +1 -1
  45. package/package.json +3 -3
  46. package/src/rules/issues/apis/noReferenceApiInputRule.ts +1 -1
  47. package/src/rules/issues/apis/noReferenceApiServiceRule.ts +6 -1
  48. package/src/rules/issues/apis/unknownApiRule.ts +1 -1
  49. package/src/rules/issues/attributes/noReferenceAttributeRule.ts +1 -1
  50. package/src/rules/issues/attributes/unknownAttributeRule.ts +1 -1
  51. package/src/rules/issues/context/unknownContextFormulaRule.ts +4 -4
  52. package/src/rules/issues/context/unknownContextProviderFormulaRule.ts +3 -2
  53. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.test.ts +40 -0
  54. package/src/rules/issues/dom/elementWithoutInteractiveContentRule.ts +20 -2
  55. package/src/rules/issues/formulas/legacyFormulaRule.fix.ts +2 -2
  56. package/src/rules/issues/formulas/unknownComponentFormulaInputRule.ts +2 -2
  57. package/src/rules/issues/formulas/unknownProjectFormulaInputRule.ts +2 -2
  58. package/src/rules/issues/logic/noUnnecessaryConditionFalsy.ts +1 -1
  59. package/src/rules/issues/logic/noUnnecessaryConditionTruthy.ts +1 -1
  60. package/src/rules/issues/miscellaneous/unknownCookieRule.ts +5 -2
  61. package/src/rules/issues/routing/noEmptyUrlParameterNameRule.test.ts +78 -0
  62. package/src/rules/issues/routing/noEmptyUrlParameterNameRule.ts +44 -0
  63. package/src/rules/issues/routing/routingRules.index.ts +2 -0
  64. package/src/rules/issues/routing/unknownUrlParameterRule.ts +1 -1
  65. package/src/rules/issues/variables/unknownVariableRule.ts +1 -1
  66. package/src/rules/issues/workflows/unknownContextProviderWorkflowRule.ts +3 -2
  67. package/src/rules/issues/workflows/unknownWorkflowParameterRule.ts +4 -2
  68. package/src/searchProject.ts +3 -0
  69. package/src/types.ts +1 -0
  70. package/src/util/contextlessEvaluateFormula.ts +4 -4
@@ -23,8 +23,9 @@ export const unknownContextProviderWorkflowRule: IssueRule<{
23
23
  if (!component) {
24
24
  return
25
25
  }
26
- for (const workflowName of value.workflows) {
27
- if (component.workflows?.[workflowName]?.exposeInContext !== true) {
26
+ for (const key of value.workflows) {
27
+ if (component.workflows?.[key]?.exposeInContext !== true) {
28
+ const workflowName = component.workflows?.[key]?.name ?? key
28
29
  report({
29
30
  path,
30
31
  info: {
@@ -1,6 +1,8 @@
1
1
  import type { IssueRule } from '../../../types'
2
2
 
3
- export const unknownWorkflowParameterRule: IssueRule<{ parameter: string }> = {
3
+ export const unknownWorkflowParameterRule: IssueRule<{
4
+ parameter: string | number
5
+ }> = {
4
6
  code: 'unknown workflow parameter',
5
7
  level: 'error',
6
8
  category: 'Unknown Reference',
@@ -24,7 +26,7 @@ export const unknownWorkflowParameterRule: IssueRule<{ parameter: string }> = {
24
26
  }
25
27
  const [_components, _componentName, _workflows, workflowName] = path
26
28
  const [_Parameters, parameterName] = value.path
27
- const workflowParameters = new Set(
29
+ const workflowParameters = new Set<string | number>(
28
30
  Object.values(component.workflows?.[workflowName]?.parameters ?? {}).map(
29
31
  (p) => p.name,
30
32
  ),
@@ -441,6 +441,9 @@ function* visitNode({
441
441
 
442
442
  for (const key in value.apis) {
443
443
  const api = value.apis[key]
444
+ if (!api) {
445
+ continue
446
+ }
444
447
  yield* visitNode({
445
448
  args: {
446
449
  nodeType: 'component-api',
package/src/types.ts CHANGED
@@ -82,6 +82,7 @@ export type Code =
82
82
  | 'no context consumers'
83
83
  | 'no post navigate action'
84
84
  | 'no-console'
85
+ | 'no-empty url parameter name'
85
86
  | 'no-reference animation'
86
87
  | 'no-reference api input'
87
88
  | 'no-reference api service'
@@ -38,7 +38,7 @@ export const contextlessEvaluateFormula = (
38
38
  }
39
39
 
40
40
  case 'array': {
41
- const results = formula.arguments.map((arg) =>
41
+ const results = (formula.arguments ?? []).map((arg) =>
42
42
  contextlessEvaluateFormula(arg.formula),
43
43
  )
44
44
 
@@ -49,7 +49,7 @@ export const contextlessEvaluateFormula = (
49
49
  }
50
50
 
51
51
  case 'record': {
52
- const entries = Object.entries(formula.entries).map(
52
+ const entries = Object.entries(formula.entries ?? {}).map(
53
53
  ([key, arg]) => [key, contextlessEvaluateFormula(arg.formula)] as const,
54
54
  )
55
55
 
@@ -68,7 +68,7 @@ export const contextlessEvaluateFormula = (
68
68
  // - ANY condition is static and falsy
69
69
  // - EMPTY argument list is always true
70
70
  case 'and': {
71
- const results = formula.arguments.map((arg) =>
71
+ const results = (formula.arguments ?? []).map((arg) =>
72
72
  contextlessEvaluateFormula(arg.formula),
73
73
  )
74
74
 
@@ -90,7 +90,7 @@ export const contextlessEvaluateFormula = (
90
90
  // - ALL conditions are static AND falsy
91
91
  // - EMPTY argument list is always false
92
92
  case 'or': {
93
- const results = formula.arguments.map((arg) =>
93
+ const results = (formula.arguments ?? []).map((arg) =>
94
94
  contextlessEvaluateFormula(arg.formula),
95
95
  )
96
96