@pyreon/lint 0.11.5 → 0.11.7

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 (86) hide show
  1. package/README.md +91 -91
  2. package/lib/analysis/cli.js.html +1 -1
  3. package/lib/analysis/index.js.html +1 -1
  4. package/lib/cli.js +214 -1
  5. package/lib/cli.js.map +1 -1
  6. package/lib/index.js +207 -1
  7. package/lib/index.js.map +1 -1
  8. package/lib/types/index.d.ts +30 -5
  9. package/lib/types/index.d.ts.map +1 -1
  10. package/package.json +15 -15
  11. package/src/cache.ts +1 -1
  12. package/src/cli.ts +38 -28
  13. package/src/config/ignore.ts +23 -23
  14. package/src/config/loader.ts +8 -8
  15. package/src/config/presets.ts +11 -11
  16. package/src/index.ts +14 -12
  17. package/src/lint.ts +19 -19
  18. package/src/lsp/index.ts +225 -0
  19. package/src/reporter.ts +17 -17
  20. package/src/rules/accessibility/dialog-a11y.ts +10 -10
  21. package/src/rules/accessibility/overlay-a11y.ts +11 -11
  22. package/src/rules/accessibility/toast-a11y.ts +11 -11
  23. package/src/rules/architecture/dev-guard-warnings.ts +19 -19
  24. package/src/rules/architecture/no-circular-import.ts +16 -16
  25. package/src/rules/architecture/no-cross-layer-import.ts +35 -35
  26. package/src/rules/architecture/no-deep-import.ts +7 -7
  27. package/src/rules/architecture/no-error-without-prefix.ts +20 -20
  28. package/src/rules/form/no-submit-without-validation.ts +13 -13
  29. package/src/rules/form/no-unregistered-field.ts +12 -12
  30. package/src/rules/form/prefer-field-array.ts +11 -11
  31. package/src/rules/hooks/no-raw-addeventlistener.ts +9 -9
  32. package/src/rules/hooks/no-raw-localstorage.ts +11 -11
  33. package/src/rules/hooks/no-raw-setinterval.ts +11 -11
  34. package/src/rules/index.ts +60 -57
  35. package/src/rules/jsx/no-and-conditional.ts +8 -8
  36. package/src/rules/jsx/no-children-access.ts +12 -12
  37. package/src/rules/jsx/no-classname.ts +10 -10
  38. package/src/rules/jsx/no-htmlfor.ts +10 -10
  39. package/src/rules/jsx/no-index-as-by.ts +17 -17
  40. package/src/rules/jsx/no-map-in-jsx.ts +9 -9
  41. package/src/rules/jsx/no-missing-for-by.ts +9 -9
  42. package/src/rules/jsx/no-onchange.ts +12 -12
  43. package/src/rules/jsx/no-props-destructure.ts +11 -11
  44. package/src/rules/jsx/no-ternary-conditional.ts +8 -8
  45. package/src/rules/jsx/use-by-not-key.ts +12 -12
  46. package/src/rules/lifecycle/no-dom-in-setup.ts +18 -18
  47. package/src/rules/lifecycle/no-effect-in-mount.ts +11 -11
  48. package/src/rules/lifecycle/no-missing-cleanup.ts +19 -19
  49. package/src/rules/lifecycle/no-mount-in-effect.ts +11 -11
  50. package/src/rules/performance/no-eager-import.ts +7 -7
  51. package/src/rules/performance/no-effect-in-for.ts +10 -10
  52. package/src/rules/performance/no-large-for-without-by.ts +9 -9
  53. package/src/rules/performance/prefer-show-over-display.ts +16 -16
  54. package/src/rules/reactivity/no-bare-signal-in-jsx.ts +10 -10
  55. package/src/rules/reactivity/no-context-destructure.ts +45 -0
  56. package/src/rules/reactivity/no-effect-assignment.ts +16 -16
  57. package/src/rules/reactivity/no-nested-effect.ts +10 -10
  58. package/src/rules/reactivity/no-peek-in-tracked.ts +10 -10
  59. package/src/rules/reactivity/no-signal-in-loop.ts +13 -13
  60. package/src/rules/reactivity/no-signal-leak.ts +9 -9
  61. package/src/rules/reactivity/no-unbatched-updates.ts +12 -12
  62. package/src/rules/reactivity/prefer-computed.ts +13 -13
  63. package/src/rules/router/index.ts +4 -4
  64. package/src/rules/router/no-href-navigation.ts +14 -14
  65. package/src/rules/router/no-imperative-navigate-in-render.ts +19 -19
  66. package/src/rules/router/no-missing-fallback.ts +16 -16
  67. package/src/rules/router/prefer-use-is-active.ts +11 -11
  68. package/src/rules/ssr/no-mismatch-risk.ts +11 -11
  69. package/src/rules/ssr/no-window-in-ssr.ts +22 -22
  70. package/src/rules/ssr/prefer-request-context.ts +14 -14
  71. package/src/rules/store/no-duplicate-store-id.ts +9 -9
  72. package/src/rules/store/no-mutate-store-state.ts +11 -11
  73. package/src/rules/store/no-store-outside-provider.ts +15 -15
  74. package/src/rules/styling/no-dynamic-styled.ts +13 -13
  75. package/src/rules/styling/no-inline-style-object.ts +10 -10
  76. package/src/rules/styling/no-theme-outside-provider.ts +11 -11
  77. package/src/rules/styling/prefer-cx.ts +12 -12
  78. package/src/runner.ts +13 -13
  79. package/src/tests/lsp.test.ts +88 -0
  80. package/src/tests/runner.test.ts +325 -325
  81. package/src/types.ts +15 -15
  82. package/src/utils/ast.ts +50 -50
  83. package/src/utils/imports.ts +53 -53
  84. package/src/utils/index.ts +5 -5
  85. package/src/utils/source.ts +2 -2
  86. package/src/watcher.ts +19 -19
@@ -5386,7 +5386,7 @@ var drawChart = (function (exports) {
5386
5386
  </script>
5387
5387
  <script>
5388
5388
  /*<!--*/
5389
- const data = {"version":2,"tree":{"name":"root","children":[{"name":"index.js","children":[{"name":"src","children":[{"uid":"a9807467-1","name":"cache.ts"},{"name":"config","children":[{"uid":"a9807467-3","name":"ignore.ts"},{"uid":"a9807467-5","name":"loader.ts"},{"uid":"a9807467-123","name":"presets.ts"}]},{"name":"utils","children":[{"uid":"a9807467-7","name":"imports.ts"},{"uid":"a9807467-9","name":"ast.ts"},{"uid":"a9807467-125","name":"source.ts"},{"uid":"a9807467-127","name":"index.ts"}]},{"name":"rules","children":[{"name":"accessibility","children":[{"uid":"a9807467-11","name":"dialog-a11y.ts"},{"uid":"a9807467-13","name":"overlay-a11y.ts"},{"uid":"a9807467-15","name":"toast-a11y.ts"}]},{"name":"architecture","children":[{"uid":"a9807467-17","name":"dev-guard-warnings.ts"},{"uid":"a9807467-19","name":"no-circular-import.ts"},{"uid":"a9807467-21","name":"no-cross-layer-import.ts"},{"uid":"a9807467-23","name":"no-deep-import.ts"},{"uid":"a9807467-25","name":"no-error-without-prefix.ts"}]},{"name":"form","children":[{"uid":"a9807467-27","name":"no-submit-without-validation.ts"},{"uid":"a9807467-29","name":"no-unregistered-field.ts"},{"uid":"a9807467-31","name":"prefer-field-array.ts"}]},{"name":"hooks","children":[{"uid":"a9807467-33","name":"no-raw-addeventlistener.ts"},{"uid":"a9807467-35","name":"no-raw-localstorage.ts"},{"uid":"a9807467-37","name":"no-raw-setinterval.ts"}]},{"name":"jsx","children":[{"uid":"a9807467-39","name":"no-and-conditional.ts"},{"uid":"a9807467-41","name":"no-children-access.ts"},{"uid":"a9807467-43","name":"no-classname.ts"},{"uid":"a9807467-45","name":"no-htmlfor.ts"},{"uid":"a9807467-47","name":"no-index-as-by.ts"},{"uid":"a9807467-49","name":"no-map-in-jsx.ts"},{"uid":"a9807467-51","name":"no-missing-for-by.ts"},{"uid":"a9807467-53","name":"no-onchange.ts"},{"uid":"a9807467-55","name":"no-props-destructure.ts"},{"uid":"a9807467-57","name":"no-ternary-conditional.ts"},{"uid":"a9807467-59","name":"use-by-not-key.ts"}]},{"name":"lifecycle","children":[{"uid":"a9807467-61","name":"no-dom-in-setup.ts"},{"uid":"a9807467-63","name":"no-effect-in-mount.ts"},{"uid":"a9807467-65","name":"no-missing-cleanup.ts"},{"uid":"a9807467-67","name":"no-mount-in-effect.ts"}]},{"name":"performance","children":[{"uid":"a9807467-69","name":"no-eager-import.ts"},{"uid":"a9807467-71","name":"no-effect-in-for.ts"},{"uid":"a9807467-73","name":"no-large-for-without-by.ts"},{"uid":"a9807467-75","name":"prefer-show-over-display.ts"}]},{"name":"reactivity","children":[{"uid":"a9807467-77","name":"no-bare-signal-in-jsx.ts"},{"uid":"a9807467-79","name":"no-effect-assignment.ts"},{"uid":"a9807467-81","name":"no-nested-effect.ts"},{"uid":"a9807467-83","name":"no-peek-in-tracked.ts"},{"uid":"a9807467-85","name":"no-signal-in-loop.ts"},{"uid":"a9807467-87","name":"no-signal-leak.ts"},{"uid":"a9807467-89","name":"no-unbatched-updates.ts"},{"uid":"a9807467-91","name":"prefer-computed.ts"}]},{"name":"router","children":[{"uid":"a9807467-93","name":"no-href-navigation.ts"},{"uid":"a9807467-95","name":"no-imperative-navigate-in-render.ts"},{"uid":"a9807467-97","name":"no-missing-fallback.ts"},{"uid":"a9807467-99","name":"prefer-use-is-active.ts"}]},{"name":"ssr","children":[{"uid":"a9807467-101","name":"no-mismatch-risk.ts"},{"uid":"a9807467-103","name":"no-window-in-ssr.ts"},{"uid":"a9807467-105","name":"prefer-request-context.ts"}]},{"name":"store","children":[{"uid":"a9807467-107","name":"no-duplicate-store-id.ts"},{"uid":"a9807467-109","name":"no-mutate-store-state.ts"},{"uid":"a9807467-111","name":"no-store-outside-provider.ts"}]},{"name":"styling","children":[{"uid":"a9807467-113","name":"no-dynamic-styled.ts"},{"uid":"a9807467-115","name":"no-inline-style-object.ts"},{"uid":"a9807467-117","name":"no-theme-outside-provider.ts"},{"uid":"a9807467-119","name":"prefer-cx.ts"}]},{"uid":"a9807467-121","name":"index.ts"}]},{"uid":"a9807467-129","name":"runner.ts"},{"uid":"a9807467-131","name":"lint.ts"},{"uid":"a9807467-133","name":"reporter.ts"},{"uid":"a9807467-135","name":"watcher.ts"},{"uid":"a9807467-137","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"a9807467-1":{"renderedLength":1035,"gzipLength":568,"brotliLength":0,"metaUid":"a9807467-0"},"a9807467-3":{"renderedLength":3011,"gzipLength":1239,"brotliLength":0,"metaUid":"a9807467-2"},"a9807467-5":{"renderedLength":1626,"gzipLength":713,"brotliLength":0,"metaUid":"a9807467-4"},"a9807467-7":{"renderedLength":2019,"gzipLength":780,"brotliLength":0,"metaUid":"a9807467-6"},"a9807467-9":{"renderedLength":2849,"gzipLength":776,"brotliLength":0,"metaUid":"a9807467-8"},"a9807467-11":{"renderedLength":775,"gzipLength":445,"brotliLength":0,"metaUid":"a9807467-10"},"a9807467-13":{"renderedLength":864,"gzipLength":470,"brotliLength":0,"metaUid":"a9807467-12"},"a9807467-15":{"renderedLength":1014,"gzipLength":554,"brotliLength":0,"metaUid":"a9807467-14"},"a9807467-17":{"renderedLength":1384,"gzipLength":617,"brotliLength":0,"metaUid":"a9807467-16"},"a9807467-19":{"renderedLength":1388,"gzipLength":674,"brotliLength":0,"metaUid":"a9807467-18"},"a9807467-21":{"renderedLength":1688,"gzipLength":687,"brotliLength":0,"metaUid":"a9807467-20"},"a9807467-23":{"renderedLength":710,"gzipLength":443,"brotliLength":0,"metaUid":"a9807467-22"},"a9807467-25":{"renderedLength":2127,"gzipLength":819,"brotliLength":0,"metaUid":"a9807467-24"},"a9807467-27":{"renderedLength":1182,"gzipLength":592,"brotliLength":0,"metaUid":"a9807467-26"},"a9807467-29":{"renderedLength":1258,"gzipLength":613,"brotliLength":0,"metaUid":"a9807467-28"},"a9807467-31":{"renderedLength":905,"gzipLength":500,"brotliLength":0,"metaUid":"a9807467-30"},"a9807467-33":{"renderedLength":740,"gzipLength":425,"brotliLength":0,"metaUid":"a9807467-32"},"a9807467-35":{"renderedLength":987,"gzipLength":537,"brotliLength":0,"metaUid":"a9807467-34"},"a9807467-37":{"renderedLength":924,"gzipLength":508,"brotliLength":0,"metaUid":"a9807467-36"},"a9807467-39":{"renderedLength":718,"gzipLength":404,"brotliLength":0,"metaUid":"a9807467-38"},"a9807467-41":{"renderedLength":967,"gzipLength":507,"brotliLength":0,"metaUid":"a9807467-40"},"a9807467-43":{"renderedLength":680,"gzipLength":373,"brotliLength":0,"metaUid":"a9807467-42"},"a9807467-45":{"renderedLength":662,"gzipLength":371,"brotliLength":0,"metaUid":"a9807467-44"},"a9807467-47":{"renderedLength":1641,"gzipLength":677,"brotliLength":0,"metaUid":"a9807467-46"},"a9807467-49":{"renderedLength":839,"gzipLength":451,"brotliLength":0,"metaUid":"a9807467-48"},"a9807467-51":{"renderedLength":617,"gzipLength":408,"brotliLength":0,"metaUid":"a9807467-50"},"a9807467-53":{"renderedLength":1068,"gzipLength":555,"brotliLength":0,"metaUid":"a9807467-52"},"a9807467-55":{"renderedLength":1414,"gzipLength":614,"brotliLength":0,"metaUid":"a9807467-54"},"a9807467-57":{"renderedLength":748,"gzipLength":411,"brotliLength":0,"metaUid":"a9807467-56"},"a9807467-59":{"renderedLength":825,"gzipLength":454,"brotliLength":0,"metaUid":"a9807467-58"},"a9807467-61":{"renderedLength":1158,"gzipLength":596,"brotliLength":0,"metaUid":"a9807467-60"},"a9807467-63":{"renderedLength":780,"gzipLength":414,"brotliLength":0,"metaUid":"a9807467-62"},"a9807467-65":{"renderedLength":1844,"gzipLength":792,"brotliLength":0,"metaUid":"a9807467-64"},"a9807467-67":{"renderedLength":707,"gzipLength":396,"brotliLength":0,"metaUid":"a9807467-66"},"a9807467-69":{"renderedLength":636,"gzipLength":427,"brotliLength":0,"metaUid":"a9807467-68"},"a9807467-71":{"renderedLength":947,"gzipLength":492,"brotliLength":0,"metaUid":"a9807467-70"},"a9807467-73":{"renderedLength":696,"gzipLength":431,"brotliLength":0,"metaUid":"a9807467-72"},"a9807467-75":{"renderedLength":1232,"gzipLength":600,"brotliLength":0,"metaUid":"a9807467-74"},"a9807467-77":{"renderedLength":1266,"gzipLength":635,"brotliLength":0,"metaUid":"a9807467-76"},"a9807467-79":{"renderedLength":1450,"gzipLength":617,"brotliLength":0,"metaUid":"a9807467-78"},"a9807467-81":{"renderedLength":686,"gzipLength":396,"brotliLength":0,"metaUid":"a9807467-80"},"a9807467-83":{"renderedLength":821,"gzipLength":440,"brotliLength":0,"metaUid":"a9807467-82"},"a9807467-85":{"renderedLength":1217,"gzipLength":514,"brotliLength":0,"metaUid":"a9807467-84"},"a9807467-87":{"renderedLength":1348,"gzipLength":652,"brotliLength":0,"metaUid":"a9807467-86"},"a9807467-89":{"renderedLength":1672,"gzipLength":680,"brotliLength":0,"metaUid":"a9807467-88"},"a9807467-91":{"renderedLength":1280,"gzipLength":561,"brotliLength":0,"metaUid":"a9807467-90"},"a9807467-93":{"renderedLength":1247,"gzipLength":642,"brotliLength":0,"metaUid":"a9807467-92"},"a9807467-95":{"renderedLength":1887,"gzipLength":716,"brotliLength":0,"metaUid":"a9807467-94"},"a9807467-97":{"renderedLength":2081,"gzipLength":873,"brotliLength":0,"metaUid":"a9807467-96"},"a9807467-99":{"renderedLength":1126,"gzipLength":551,"brotliLength":0,"metaUid":"a9807467-98"},"a9807467-101":{"renderedLength":1062,"gzipLength":556,"brotliLength":0,"metaUid":"a9807467-100"},"a9807467-103":{"renderedLength":1683,"gzipLength":673,"brotliLength":0,"metaUid":"a9807467-102"},"a9807467-105":{"renderedLength":1327,"gzipLength":576,"brotliLength":0,"metaUid":"a9807467-104"},"a9807467-107":{"renderedLength":927,"gzipLength":522,"brotliLength":0,"metaUid":"a9807467-106"},"a9807467-109":{"renderedLength":976,"gzipLength":503,"brotliLength":0,"metaUid":"a9807467-108"},"a9807467-111":{"renderedLength":1445,"gzipLength":684,"brotliLength":0,"metaUid":"a9807467-110"},"a9807467-113":{"renderedLength":1371,"gzipLength":505,"brotliLength":0,"metaUid":"a9807467-112"},"a9807467-115":{"renderedLength":768,"gzipLength":452,"brotliLength":0,"metaUid":"a9807467-114"},"a9807467-117":{"renderedLength":1014,"gzipLength":533,"brotliLength":0,"metaUid":"a9807467-116"},"a9807467-119":{"renderedLength":1040,"gzipLength":503,"brotliLength":0,"metaUid":"a9807467-118"},"a9807467-121":{"renderedLength":1093,"gzipLength":580,"brotliLength":0,"metaUid":"a9807467-120"},"a9807467-123":{"renderedLength":1307,"gzipLength":528,"brotliLength":0,"metaUid":"a9807467-122"},"a9807467-125":{"renderedLength":699,"gzipLength":407,"brotliLength":0,"metaUid":"a9807467-124"},"a9807467-127":{"renderedLength":368,"gzipLength":256,"brotliLength":0,"metaUid":"a9807467-126"},"a9807467-129":{"renderedLength":3228,"gzipLength":1252,"brotliLength":0,"metaUid":"a9807467-128"},"a9807467-131":{"renderedLength":4170,"gzipLength":1355,"brotliLength":0,"metaUid":"a9807467-130"},"a9807467-133":{"renderedLength":1975,"gzipLength":729,"brotliLength":0,"metaUid":"a9807467-132"},"a9807467-135":{"renderedLength":2261,"gzipLength":991,"brotliLength":0,"metaUid":"a9807467-134"},"a9807467-137":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"metaUid":"a9807467-136"}},"nodeMetas":{"a9807467-0":{"id":"/src/cache.ts","moduleParts":{"index.js":"a9807467-1"},"imported":[],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-2":{"id":"/src/config/ignore.ts","moduleParts":{"index.js":"a9807467-3"},"imported":[{"uid":"a9807467-138"},{"uid":"a9807467-139"}],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-4":{"id":"/src/config/loader.ts","moduleParts":{"index.js":"a9807467-5"},"imported":[{"uid":"a9807467-138"},{"uid":"a9807467-139"}],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-130"}]},"a9807467-6":{"id":"/src/utils/imports.ts","moduleParts":{"index.js":"a9807467-7"},"imported":[],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-126"},{"uid":"a9807467-18"},{"uid":"a9807467-20"},{"uid":"a9807467-22"},{"uid":"a9807467-30"},{"uid":"a9807467-40"},{"uid":"a9807467-68"},{"uid":"a9807467-92"},{"uid":"a9807467-96"},{"uid":"a9807467-102"},{"uid":"a9807467-110"},{"uid":"a9807467-116"},{"uid":"a9807467-8"}]},"a9807467-8":{"id":"/src/utils/ast.ts","moduleParts":{"index.js":"a9807467-9"},"imported":[{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-126"},{"uid":"a9807467-10"},{"uid":"a9807467-12"},{"uid":"a9807467-14"},{"uid":"a9807467-16"},{"uid":"a9807467-18"},{"uid":"a9807467-20"},{"uid":"a9807467-22"},{"uid":"a9807467-24"},{"uid":"a9807467-26"},{"uid":"a9807467-28"},{"uid":"a9807467-30"},{"uid":"a9807467-32"},{"uid":"a9807467-34"},{"uid":"a9807467-36"},{"uid":"a9807467-38"},{"uid":"a9807467-40"},{"uid":"a9807467-42"},{"uid":"a9807467-44"},{"uid":"a9807467-46"},{"uid":"a9807467-48"},{"uid":"a9807467-50"},{"uid":"a9807467-52"},{"uid":"a9807467-54"},{"uid":"a9807467-56"},{"uid":"a9807467-58"},{"uid":"a9807467-60"},{"uid":"a9807467-62"},{"uid":"a9807467-64"},{"uid":"a9807467-66"},{"uid":"a9807467-68"},{"uid":"a9807467-70"},{"uid":"a9807467-72"},{"uid":"a9807467-74"},{"uid":"a9807467-76"},{"uid":"a9807467-78"},{"uid":"a9807467-80"},{"uid":"a9807467-82"},{"uid":"a9807467-84"},{"uid":"a9807467-86"},{"uid":"a9807467-88"},{"uid":"a9807467-90"},{"uid":"a9807467-92"},{"uid":"a9807467-94"},{"uid":"a9807467-96"},{"uid":"a9807467-98"},{"uid":"a9807467-100"},{"uid":"a9807467-102"},{"uid":"a9807467-104"},{"uid":"a9807467-106"},{"uid":"a9807467-108"},{"uid":"a9807467-110"},{"uid":"a9807467-112"},{"uid":"a9807467-114"},{"uid":"a9807467-116"},{"uid":"a9807467-118"}]},"a9807467-10":{"id":"/src/rules/accessibility/dialog-a11y.ts","moduleParts":{"index.js":"a9807467-11"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-12":{"id":"/src/rules/accessibility/overlay-a11y.ts","moduleParts":{"index.js":"a9807467-13"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-14":{"id":"/src/rules/accessibility/toast-a11y.ts","moduleParts":{"index.js":"a9807467-15"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-16":{"id":"/src/rules/architecture/dev-guard-warnings.ts","moduleParts":{"index.js":"a9807467-17"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-18":{"id":"/src/rules/architecture/no-circular-import.ts","moduleParts":{"index.js":"a9807467-19"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-20":{"id":"/src/rules/architecture/no-cross-layer-import.ts","moduleParts":{"index.js":"a9807467-21"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-22":{"id":"/src/rules/architecture/no-deep-import.ts","moduleParts":{"index.js":"a9807467-23"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-24":{"id":"/src/rules/architecture/no-error-without-prefix.ts","moduleParts":{"index.js":"a9807467-25"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-26":{"id":"/src/rules/form/no-submit-without-validation.ts","moduleParts":{"index.js":"a9807467-27"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-28":{"id":"/src/rules/form/no-unregistered-field.ts","moduleParts":{"index.js":"a9807467-29"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-30":{"id":"/src/rules/form/prefer-field-array.ts","moduleParts":{"index.js":"a9807467-31"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-32":{"id":"/src/rules/hooks/no-raw-addeventlistener.ts","moduleParts":{"index.js":"a9807467-33"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-34":{"id":"/src/rules/hooks/no-raw-localstorage.ts","moduleParts":{"index.js":"a9807467-35"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-36":{"id":"/src/rules/hooks/no-raw-setinterval.ts","moduleParts":{"index.js":"a9807467-37"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-38":{"id":"/src/rules/jsx/no-and-conditional.ts","moduleParts":{"index.js":"a9807467-39"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-40":{"id":"/src/rules/jsx/no-children-access.ts","moduleParts":{"index.js":"a9807467-41"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-42":{"id":"/src/rules/jsx/no-classname.ts","moduleParts":{"index.js":"a9807467-43"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-44":{"id":"/src/rules/jsx/no-htmlfor.ts","moduleParts":{"index.js":"a9807467-45"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-46":{"id":"/src/rules/jsx/no-index-as-by.ts","moduleParts":{"index.js":"a9807467-47"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-48":{"id":"/src/rules/jsx/no-map-in-jsx.ts","moduleParts":{"index.js":"a9807467-49"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-50":{"id":"/src/rules/jsx/no-missing-for-by.ts","moduleParts":{"index.js":"a9807467-51"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-52":{"id":"/src/rules/jsx/no-onchange.ts","moduleParts":{"index.js":"a9807467-53"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-54":{"id":"/src/rules/jsx/no-props-destructure.ts","moduleParts":{"index.js":"a9807467-55"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-56":{"id":"/src/rules/jsx/no-ternary-conditional.ts","moduleParts":{"index.js":"a9807467-57"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-58":{"id":"/src/rules/jsx/use-by-not-key.ts","moduleParts":{"index.js":"a9807467-59"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-60":{"id":"/src/rules/lifecycle/no-dom-in-setup.ts","moduleParts":{"index.js":"a9807467-61"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-62":{"id":"/src/rules/lifecycle/no-effect-in-mount.ts","moduleParts":{"index.js":"a9807467-63"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-64":{"id":"/src/rules/lifecycle/no-missing-cleanup.ts","moduleParts":{"index.js":"a9807467-65"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-66":{"id":"/src/rules/lifecycle/no-mount-in-effect.ts","moduleParts":{"index.js":"a9807467-67"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-68":{"id":"/src/rules/performance/no-eager-import.ts","moduleParts":{"index.js":"a9807467-69"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-70":{"id":"/src/rules/performance/no-effect-in-for.ts","moduleParts":{"index.js":"a9807467-71"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-72":{"id":"/src/rules/performance/no-large-for-without-by.ts","moduleParts":{"index.js":"a9807467-73"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-74":{"id":"/src/rules/performance/prefer-show-over-display.ts","moduleParts":{"index.js":"a9807467-75"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-76":{"id":"/src/rules/reactivity/no-bare-signal-in-jsx.ts","moduleParts":{"index.js":"a9807467-77"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-78":{"id":"/src/rules/reactivity/no-effect-assignment.ts","moduleParts":{"index.js":"a9807467-79"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-80":{"id":"/src/rules/reactivity/no-nested-effect.ts","moduleParts":{"index.js":"a9807467-81"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-82":{"id":"/src/rules/reactivity/no-peek-in-tracked.ts","moduleParts":{"index.js":"a9807467-83"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-84":{"id":"/src/rules/reactivity/no-signal-in-loop.ts","moduleParts":{"index.js":"a9807467-85"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-86":{"id":"/src/rules/reactivity/no-signal-leak.ts","moduleParts":{"index.js":"a9807467-87"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-88":{"id":"/src/rules/reactivity/no-unbatched-updates.ts","moduleParts":{"index.js":"a9807467-89"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-90":{"id":"/src/rules/reactivity/prefer-computed.ts","moduleParts":{"index.js":"a9807467-91"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-92":{"id":"/src/rules/router/no-href-navigation.ts","moduleParts":{"index.js":"a9807467-93"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-94":{"id":"/src/rules/router/no-imperative-navigate-in-render.ts","moduleParts":{"index.js":"a9807467-95"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-96":{"id":"/src/rules/router/no-missing-fallback.ts","moduleParts":{"index.js":"a9807467-97"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-98":{"id":"/src/rules/router/prefer-use-is-active.ts","moduleParts":{"index.js":"a9807467-99"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-100":{"id":"/src/rules/ssr/no-mismatch-risk.ts","moduleParts":{"index.js":"a9807467-101"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-102":{"id":"/src/rules/ssr/no-window-in-ssr.ts","moduleParts":{"index.js":"a9807467-103"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-104":{"id":"/src/rules/ssr/prefer-request-context.ts","moduleParts":{"index.js":"a9807467-105"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-106":{"id":"/src/rules/store/no-duplicate-store-id.ts","moduleParts":{"index.js":"a9807467-107"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-108":{"id":"/src/rules/store/no-mutate-store-state.ts","moduleParts":{"index.js":"a9807467-109"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-110":{"id":"/src/rules/store/no-store-outside-provider.ts","moduleParts":{"index.js":"a9807467-111"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-112":{"id":"/src/rules/styling/no-dynamic-styled.ts","moduleParts":{"index.js":"a9807467-113"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-114":{"id":"/src/rules/styling/no-inline-style-object.ts","moduleParts":{"index.js":"a9807467-115"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-116":{"id":"/src/rules/styling/no-theme-outside-provider.ts","moduleParts":{"index.js":"a9807467-117"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-118":{"id":"/src/rules/styling/prefer-cx.ts","moduleParts":{"index.js":"a9807467-119"},"imported":[{"uid":"a9807467-8"}],"importedBy":[{"uid":"a9807467-120"}]},"a9807467-120":{"id":"/src/rules/index.ts","moduleParts":{"index.js":"a9807467-121"},"imported":[{"uid":"a9807467-10"},{"uid":"a9807467-12"},{"uid":"a9807467-14"},{"uid":"a9807467-16"},{"uid":"a9807467-18"},{"uid":"a9807467-20"},{"uid":"a9807467-22"},{"uid":"a9807467-24"},{"uid":"a9807467-26"},{"uid":"a9807467-28"},{"uid":"a9807467-30"},{"uid":"a9807467-32"},{"uid":"a9807467-34"},{"uid":"a9807467-36"},{"uid":"a9807467-38"},{"uid":"a9807467-40"},{"uid":"a9807467-42"},{"uid":"a9807467-44"},{"uid":"a9807467-46"},{"uid":"a9807467-48"},{"uid":"a9807467-50"},{"uid":"a9807467-52"},{"uid":"a9807467-54"},{"uid":"a9807467-56"},{"uid":"a9807467-58"},{"uid":"a9807467-60"},{"uid":"a9807467-62"},{"uid":"a9807467-64"},{"uid":"a9807467-66"},{"uid":"a9807467-68"},{"uid":"a9807467-70"},{"uid":"a9807467-72"},{"uid":"a9807467-74"},{"uid":"a9807467-76"},{"uid":"a9807467-78"},{"uid":"a9807467-80"},{"uid":"a9807467-82"},{"uid":"a9807467-84"},{"uid":"a9807467-86"},{"uid":"a9807467-88"},{"uid":"a9807467-90"},{"uid":"a9807467-92"},{"uid":"a9807467-94"},{"uid":"a9807467-96"},{"uid":"a9807467-98"},{"uid":"a9807467-100"},{"uid":"a9807467-102"},{"uid":"a9807467-104"},{"uid":"a9807467-106"},{"uid":"a9807467-108"},{"uid":"a9807467-110"},{"uid":"a9807467-112"},{"uid":"a9807467-114"},{"uid":"a9807467-116"},{"uid":"a9807467-118"}],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-122"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-122":{"id":"/src/config/presets.ts","moduleParts":{"index.js":"a9807467-123"},"imported":[{"uid":"a9807467-120"}],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-124":{"id":"/src/utils/source.ts","moduleParts":{"index.js":"a9807467-125"},"imported":[],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-128"},{"uid":"a9807467-126"}]},"a9807467-126":{"id":"/src/utils/index.ts","moduleParts":{"index.js":"a9807467-127"},"imported":[{"uid":"a9807467-8"},{"uid":"a9807467-6"},{"uid":"a9807467-124"}],"importedBy":[{"uid":"a9807467-130"},{"uid":"a9807467-128"},{"uid":"a9807467-134"}]},"a9807467-128":{"id":"/src/runner.ts","moduleParts":{"index.js":"a9807467-129"},"imported":[{"uid":"a9807467-140"},{"uid":"a9807467-126"},{"uid":"a9807467-124"}],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-130":{"id":"/src/lint.ts","moduleParts":{"index.js":"a9807467-131"},"imported":[{"uid":"a9807467-138"},{"uid":"a9807467-139"},{"uid":"a9807467-0"},{"uid":"a9807467-2"},{"uid":"a9807467-4"},{"uid":"a9807467-122"},{"uid":"a9807467-120"},{"uid":"a9807467-128"},{"uid":"a9807467-126"}],"importedBy":[{"uid":"a9807467-136"}]},"a9807467-132":{"id":"/src/reporter.ts","moduleParts":{"index.js":"a9807467-133"},"imported":[],"importedBy":[{"uid":"a9807467-136"},{"uid":"a9807467-134"}]},"a9807467-134":{"id":"/src/watcher.ts","moduleParts":{"index.js":"a9807467-135"},"imported":[{"uid":"a9807467-138"},{"uid":"a9807467-139"},{"uid":"a9807467-0"},{"uid":"a9807467-2"},{"uid":"a9807467-122"},{"uid":"a9807467-132"},{"uid":"a9807467-120"},{"uid":"a9807467-128"},{"uid":"a9807467-126"}],"importedBy":[{"uid":"a9807467-136"}]},"a9807467-136":{"id":"/src/index.ts","moduleParts":{"index.js":"a9807467-137"},"imported":[{"uid":"a9807467-0"},{"uid":"a9807467-2"},{"uid":"a9807467-4"},{"uid":"a9807467-122"},{"uid":"a9807467-130"},{"uid":"a9807467-132"},{"uid":"a9807467-120"},{"uid":"a9807467-128"},{"uid":"a9807467-6"},{"uid":"a9807467-124"},{"uid":"a9807467-134"}],"importedBy":[],"isEntry":true},"a9807467-138":{"id":"node:fs","moduleParts":{},"imported":[],"importedBy":[{"uid":"a9807467-2"},{"uid":"a9807467-4"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-139":{"id":"node:path","moduleParts":{},"imported":[],"importedBy":[{"uid":"a9807467-2"},{"uid":"a9807467-4"},{"uid":"a9807467-130"},{"uid":"a9807467-134"}]},"a9807467-140":{"id":"oxc-parser","moduleParts":{},"imported":[],"importedBy":[{"uid":"a9807467-128"}]}},"env":{"rollup":"4.23.0"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
5389
+ const data = {"version":2,"tree":{"name":"root","children":[{"name":"index.js","children":[{"name":"src","children":[{"uid":"af902890-1","name":"cache.ts"},{"name":"config","children":[{"uid":"af902890-3","name":"ignore.ts"},{"uid":"af902890-5","name":"loader.ts"},{"uid":"af902890-125","name":"presets.ts"}]},{"name":"utils","children":[{"uid":"af902890-7","name":"imports.ts"},{"uid":"af902890-9","name":"ast.ts"},{"uid":"af902890-127","name":"source.ts"},{"uid":"af902890-129","name":"index.ts"}]},{"name":"rules","children":[{"name":"accessibility","children":[{"uid":"af902890-11","name":"dialog-a11y.ts"},{"uid":"af902890-13","name":"overlay-a11y.ts"},{"uid":"af902890-15","name":"toast-a11y.ts"}]},{"name":"architecture","children":[{"uid":"af902890-17","name":"dev-guard-warnings.ts"},{"uid":"af902890-19","name":"no-circular-import.ts"},{"uid":"af902890-21","name":"no-cross-layer-import.ts"},{"uid":"af902890-23","name":"no-deep-import.ts"},{"uid":"af902890-25","name":"no-error-without-prefix.ts"}]},{"name":"form","children":[{"uid":"af902890-27","name":"no-submit-without-validation.ts"},{"uid":"af902890-29","name":"no-unregistered-field.ts"},{"uid":"af902890-31","name":"prefer-field-array.ts"}]},{"name":"hooks","children":[{"uid":"af902890-33","name":"no-raw-addeventlistener.ts"},{"uid":"af902890-35","name":"no-raw-localstorage.ts"},{"uid":"af902890-37","name":"no-raw-setinterval.ts"}]},{"name":"jsx","children":[{"uid":"af902890-39","name":"no-and-conditional.ts"},{"uid":"af902890-41","name":"no-children-access.ts"},{"uid":"af902890-43","name":"no-classname.ts"},{"uid":"af902890-45","name":"no-htmlfor.ts"},{"uid":"af902890-47","name":"no-index-as-by.ts"},{"uid":"af902890-49","name":"no-map-in-jsx.ts"},{"uid":"af902890-51","name":"no-missing-for-by.ts"},{"uid":"af902890-53","name":"no-onchange.ts"},{"uid":"af902890-55","name":"no-props-destructure.ts"},{"uid":"af902890-57","name":"no-ternary-conditional.ts"},{"uid":"af902890-59","name":"use-by-not-key.ts"}]},{"name":"lifecycle","children":[{"uid":"af902890-61","name":"no-dom-in-setup.ts"},{"uid":"af902890-63","name":"no-effect-in-mount.ts"},{"uid":"af902890-65","name":"no-missing-cleanup.ts"},{"uid":"af902890-67","name":"no-mount-in-effect.ts"}]},{"name":"performance","children":[{"uid":"af902890-69","name":"no-eager-import.ts"},{"uid":"af902890-71","name":"no-effect-in-for.ts"},{"uid":"af902890-73","name":"no-large-for-without-by.ts"},{"uid":"af902890-75","name":"prefer-show-over-display.ts"}]},{"name":"reactivity","children":[{"uid":"af902890-77","name":"no-bare-signal-in-jsx.ts"},{"uid":"af902890-79","name":"no-context-destructure.ts"},{"uid":"af902890-81","name":"no-effect-assignment.ts"},{"uid":"af902890-83","name":"no-nested-effect.ts"},{"uid":"af902890-85","name":"no-peek-in-tracked.ts"},{"uid":"af902890-87","name":"no-signal-in-loop.ts"},{"uid":"af902890-89","name":"no-signal-leak.ts"},{"uid":"af902890-91","name":"no-unbatched-updates.ts"},{"uid":"af902890-93","name":"prefer-computed.ts"}]},{"name":"router","children":[{"uid":"af902890-95","name":"no-href-navigation.ts"},{"uid":"af902890-97","name":"no-imperative-navigate-in-render.ts"},{"uid":"af902890-99","name":"no-missing-fallback.ts"},{"uid":"af902890-101","name":"prefer-use-is-active.ts"}]},{"name":"ssr","children":[{"uid":"af902890-103","name":"no-mismatch-risk.ts"},{"uid":"af902890-105","name":"no-window-in-ssr.ts"},{"uid":"af902890-107","name":"prefer-request-context.ts"}]},{"name":"store","children":[{"uid":"af902890-109","name":"no-duplicate-store-id.ts"},{"uid":"af902890-111","name":"no-mutate-store-state.ts"},{"uid":"af902890-113","name":"no-store-outside-provider.ts"}]},{"name":"styling","children":[{"uid":"af902890-115","name":"no-dynamic-styled.ts"},{"uid":"af902890-117","name":"no-inline-style-object.ts"},{"uid":"af902890-119","name":"no-theme-outside-provider.ts"},{"uid":"af902890-121","name":"prefer-cx.ts"}]},{"uid":"af902890-123","name":"index.ts"}]},{"uid":"af902890-131","name":"runner.ts"},{"uid":"af902890-133","name":"lint.ts"},{"uid":"af902890-135","name":"reporter.ts"},{"name":"lsp/index.ts","uid":"af902890-137"},{"uid":"af902890-139","name":"watcher.ts"},{"uid":"af902890-141","name":"index.ts"}]}]}],"isRoot":true},"nodeParts":{"af902890-1":{"renderedLength":1035,"gzipLength":568,"brotliLength":0,"metaUid":"af902890-0"},"af902890-3":{"renderedLength":3011,"gzipLength":1239,"brotliLength":0,"metaUid":"af902890-2"},"af902890-5":{"renderedLength":1626,"gzipLength":713,"brotliLength":0,"metaUid":"af902890-4"},"af902890-7":{"renderedLength":2019,"gzipLength":780,"brotliLength":0,"metaUid":"af902890-6"},"af902890-9":{"renderedLength":2849,"gzipLength":776,"brotliLength":0,"metaUid":"af902890-8"},"af902890-11":{"renderedLength":775,"gzipLength":445,"brotliLength":0,"metaUid":"af902890-10"},"af902890-13":{"renderedLength":864,"gzipLength":470,"brotliLength":0,"metaUid":"af902890-12"},"af902890-15":{"renderedLength":1014,"gzipLength":554,"brotliLength":0,"metaUid":"af902890-14"},"af902890-17":{"renderedLength":1384,"gzipLength":617,"brotliLength":0,"metaUid":"af902890-16"},"af902890-19":{"renderedLength":1388,"gzipLength":674,"brotliLength":0,"metaUid":"af902890-18"},"af902890-21":{"renderedLength":1688,"gzipLength":687,"brotliLength":0,"metaUid":"af902890-20"},"af902890-23":{"renderedLength":710,"gzipLength":443,"brotliLength":0,"metaUid":"af902890-22"},"af902890-25":{"renderedLength":2127,"gzipLength":819,"brotliLength":0,"metaUid":"af902890-24"},"af902890-27":{"renderedLength":1182,"gzipLength":592,"brotliLength":0,"metaUid":"af902890-26"},"af902890-29":{"renderedLength":1258,"gzipLength":613,"brotliLength":0,"metaUid":"af902890-28"},"af902890-31":{"renderedLength":905,"gzipLength":500,"brotliLength":0,"metaUid":"af902890-30"},"af902890-33":{"renderedLength":740,"gzipLength":425,"brotliLength":0,"metaUid":"af902890-32"},"af902890-35":{"renderedLength":987,"gzipLength":537,"brotliLength":0,"metaUid":"af902890-34"},"af902890-37":{"renderedLength":924,"gzipLength":508,"brotliLength":0,"metaUid":"af902890-36"},"af902890-39":{"renderedLength":718,"gzipLength":404,"brotliLength":0,"metaUid":"af902890-38"},"af902890-41":{"renderedLength":967,"gzipLength":507,"brotliLength":0,"metaUid":"af902890-40"},"af902890-43":{"renderedLength":680,"gzipLength":373,"brotliLength":0,"metaUid":"af902890-42"},"af902890-45":{"renderedLength":662,"gzipLength":371,"brotliLength":0,"metaUid":"af902890-44"},"af902890-47":{"renderedLength":1641,"gzipLength":677,"brotliLength":0,"metaUid":"af902890-46"},"af902890-49":{"renderedLength":839,"gzipLength":451,"brotliLength":0,"metaUid":"af902890-48"},"af902890-51":{"renderedLength":617,"gzipLength":408,"brotliLength":0,"metaUid":"af902890-50"},"af902890-53":{"renderedLength":1068,"gzipLength":555,"brotliLength":0,"metaUid":"af902890-52"},"af902890-55":{"renderedLength":1414,"gzipLength":614,"brotliLength":0,"metaUid":"af902890-54"},"af902890-57":{"renderedLength":748,"gzipLength":411,"brotliLength":0,"metaUid":"af902890-56"},"af902890-59":{"renderedLength":825,"gzipLength":454,"brotliLength":0,"metaUid":"af902890-58"},"af902890-61":{"renderedLength":1158,"gzipLength":596,"brotliLength":0,"metaUid":"af902890-60"},"af902890-63":{"renderedLength":780,"gzipLength":414,"brotliLength":0,"metaUid":"af902890-62"},"af902890-65":{"renderedLength":1844,"gzipLength":792,"brotliLength":0,"metaUid":"af902890-64"},"af902890-67":{"renderedLength":707,"gzipLength":396,"brotliLength":0,"metaUid":"af902890-66"},"af902890-69":{"renderedLength":636,"gzipLength":427,"brotliLength":0,"metaUid":"af902890-68"},"af902890-71":{"renderedLength":947,"gzipLength":492,"brotliLength":0,"metaUid":"af902890-70"},"af902890-73":{"renderedLength":696,"gzipLength":431,"brotliLength":0,"metaUid":"af902890-72"},"af902890-75":{"renderedLength":1232,"gzipLength":600,"brotliLength":0,"metaUid":"af902890-74"},"af902890-77":{"renderedLength":1266,"gzipLength":635,"brotliLength":0,"metaUid":"af902890-76"},"af902890-79":{"renderedLength":1161,"gzipLength":580,"brotliLength":0,"metaUid":"af902890-78"},"af902890-81":{"renderedLength":1450,"gzipLength":617,"brotliLength":0,"metaUid":"af902890-80"},"af902890-83":{"renderedLength":686,"gzipLength":396,"brotliLength":0,"metaUid":"af902890-82"},"af902890-85":{"renderedLength":821,"gzipLength":440,"brotliLength":0,"metaUid":"af902890-84"},"af902890-87":{"renderedLength":1217,"gzipLength":514,"brotliLength":0,"metaUid":"af902890-86"},"af902890-89":{"renderedLength":1348,"gzipLength":652,"brotliLength":0,"metaUid":"af902890-88"},"af902890-91":{"renderedLength":1672,"gzipLength":680,"brotliLength":0,"metaUid":"af902890-90"},"af902890-93":{"renderedLength":1280,"gzipLength":561,"brotliLength":0,"metaUid":"af902890-92"},"af902890-95":{"renderedLength":1247,"gzipLength":642,"brotliLength":0,"metaUid":"af902890-94"},"af902890-97":{"renderedLength":1887,"gzipLength":716,"brotliLength":0,"metaUid":"af902890-96"},"af902890-99":{"renderedLength":2081,"gzipLength":873,"brotliLength":0,"metaUid":"af902890-98"},"af902890-101":{"renderedLength":1126,"gzipLength":551,"brotliLength":0,"metaUid":"af902890-100"},"af902890-103":{"renderedLength":1062,"gzipLength":556,"brotliLength":0,"metaUid":"af902890-102"},"af902890-105":{"renderedLength":1683,"gzipLength":673,"brotliLength":0,"metaUid":"af902890-104"},"af902890-107":{"renderedLength":1327,"gzipLength":576,"brotliLength":0,"metaUid":"af902890-106"},"af902890-109":{"renderedLength":927,"gzipLength":522,"brotliLength":0,"metaUid":"af902890-108"},"af902890-111":{"renderedLength":976,"gzipLength":503,"brotliLength":0,"metaUid":"af902890-110"},"af902890-113":{"renderedLength":1445,"gzipLength":684,"brotliLength":0,"metaUid":"af902890-112"},"af902890-115":{"renderedLength":1371,"gzipLength":505,"brotliLength":0,"metaUid":"af902890-114"},"af902890-117":{"renderedLength":768,"gzipLength":452,"brotliLength":0,"metaUid":"af902890-116"},"af902890-119":{"renderedLength":1014,"gzipLength":533,"brotliLength":0,"metaUid":"af902890-118"},"af902890-121":{"renderedLength":1040,"gzipLength":503,"brotliLength":0,"metaUid":"af902890-120"},"af902890-123":{"renderedLength":1116,"gzipLength":586,"brotliLength":0,"metaUid":"af902890-122"},"af902890-125":{"renderedLength":1307,"gzipLength":528,"brotliLength":0,"metaUid":"af902890-124"},"af902890-127":{"renderedLength":699,"gzipLength":407,"brotliLength":0,"metaUid":"af902890-126"},"af902890-129":{"renderedLength":368,"gzipLength":256,"brotliLength":0,"metaUid":"af902890-128"},"af902890-131":{"renderedLength":3228,"gzipLength":1252,"brotliLength":0,"metaUid":"af902890-130"},"af902890-133":{"renderedLength":4170,"gzipLength":1355,"brotliLength":0,"metaUid":"af902890-132"},"af902890-135":{"renderedLength":1975,"gzipLength":729,"brotliLength":0,"metaUid":"af902890-134"},"af902890-137":{"renderedLength":4557,"gzipLength":1641,"brotliLength":0,"metaUid":"af902890-136"},"af902890-139":{"renderedLength":2261,"gzipLength":991,"brotliLength":0,"metaUid":"af902890-138"},"af902890-141":{"renderedLength":0,"gzipLength":0,"brotliLength":0,"metaUid":"af902890-140"}},"nodeMetas":{"af902890-0":{"id":"/src/cache.ts","moduleParts":{"index.js":"af902890-1"},"imported":[],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-132"},{"uid":"af902890-136"},{"uid":"af902890-138"}]},"af902890-2":{"id":"/src/config/ignore.ts","moduleParts":{"index.js":"af902890-3"},"imported":[{"uid":"af902890-142"},{"uid":"af902890-143"}],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-132"},{"uid":"af902890-138"}]},"af902890-4":{"id":"/src/config/loader.ts","moduleParts":{"index.js":"af902890-5"},"imported":[{"uid":"af902890-142"},{"uid":"af902890-143"}],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-132"}]},"af902890-6":{"id":"/src/utils/imports.ts","moduleParts":{"index.js":"af902890-7"},"imported":[],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-128"},{"uid":"af902890-18"},{"uid":"af902890-20"},{"uid":"af902890-22"},{"uid":"af902890-30"},{"uid":"af902890-40"},{"uid":"af902890-68"},{"uid":"af902890-94"},{"uid":"af902890-98"},{"uid":"af902890-104"},{"uid":"af902890-112"},{"uid":"af902890-118"},{"uid":"af902890-8"}]},"af902890-8":{"id":"/src/utils/ast.ts","moduleParts":{"index.js":"af902890-9"},"imported":[{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-128"},{"uid":"af902890-10"},{"uid":"af902890-12"},{"uid":"af902890-14"},{"uid":"af902890-16"},{"uid":"af902890-18"},{"uid":"af902890-20"},{"uid":"af902890-22"},{"uid":"af902890-24"},{"uid":"af902890-26"},{"uid":"af902890-28"},{"uid":"af902890-30"},{"uid":"af902890-32"},{"uid":"af902890-34"},{"uid":"af902890-36"},{"uid":"af902890-38"},{"uid":"af902890-40"},{"uid":"af902890-42"},{"uid":"af902890-44"},{"uid":"af902890-46"},{"uid":"af902890-48"},{"uid":"af902890-50"},{"uid":"af902890-52"},{"uid":"af902890-54"},{"uid":"af902890-56"},{"uid":"af902890-58"},{"uid":"af902890-60"},{"uid":"af902890-62"},{"uid":"af902890-64"},{"uid":"af902890-66"},{"uid":"af902890-68"},{"uid":"af902890-70"},{"uid":"af902890-72"},{"uid":"af902890-74"},{"uid":"af902890-76"},{"uid":"af902890-78"},{"uid":"af902890-80"},{"uid":"af902890-82"},{"uid":"af902890-84"},{"uid":"af902890-86"},{"uid":"af902890-88"},{"uid":"af902890-90"},{"uid":"af902890-92"},{"uid":"af902890-94"},{"uid":"af902890-96"},{"uid":"af902890-98"},{"uid":"af902890-100"},{"uid":"af902890-102"},{"uid":"af902890-104"},{"uid":"af902890-106"},{"uid":"af902890-108"},{"uid":"af902890-110"},{"uid":"af902890-112"},{"uid":"af902890-114"},{"uid":"af902890-116"},{"uid":"af902890-118"},{"uid":"af902890-120"}]},"af902890-10":{"id":"/src/rules/accessibility/dialog-a11y.ts","moduleParts":{"index.js":"af902890-11"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-12":{"id":"/src/rules/accessibility/overlay-a11y.ts","moduleParts":{"index.js":"af902890-13"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-14":{"id":"/src/rules/accessibility/toast-a11y.ts","moduleParts":{"index.js":"af902890-15"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-16":{"id":"/src/rules/architecture/dev-guard-warnings.ts","moduleParts":{"index.js":"af902890-17"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-18":{"id":"/src/rules/architecture/no-circular-import.ts","moduleParts":{"index.js":"af902890-19"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-20":{"id":"/src/rules/architecture/no-cross-layer-import.ts","moduleParts":{"index.js":"af902890-21"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-22":{"id":"/src/rules/architecture/no-deep-import.ts","moduleParts":{"index.js":"af902890-23"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-24":{"id":"/src/rules/architecture/no-error-without-prefix.ts","moduleParts":{"index.js":"af902890-25"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-26":{"id":"/src/rules/form/no-submit-without-validation.ts","moduleParts":{"index.js":"af902890-27"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-28":{"id":"/src/rules/form/no-unregistered-field.ts","moduleParts":{"index.js":"af902890-29"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-30":{"id":"/src/rules/form/prefer-field-array.ts","moduleParts":{"index.js":"af902890-31"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-32":{"id":"/src/rules/hooks/no-raw-addeventlistener.ts","moduleParts":{"index.js":"af902890-33"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-34":{"id":"/src/rules/hooks/no-raw-localstorage.ts","moduleParts":{"index.js":"af902890-35"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-36":{"id":"/src/rules/hooks/no-raw-setinterval.ts","moduleParts":{"index.js":"af902890-37"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-38":{"id":"/src/rules/jsx/no-and-conditional.ts","moduleParts":{"index.js":"af902890-39"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-40":{"id":"/src/rules/jsx/no-children-access.ts","moduleParts":{"index.js":"af902890-41"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-42":{"id":"/src/rules/jsx/no-classname.ts","moduleParts":{"index.js":"af902890-43"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-44":{"id":"/src/rules/jsx/no-htmlfor.ts","moduleParts":{"index.js":"af902890-45"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-46":{"id":"/src/rules/jsx/no-index-as-by.ts","moduleParts":{"index.js":"af902890-47"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-48":{"id":"/src/rules/jsx/no-map-in-jsx.ts","moduleParts":{"index.js":"af902890-49"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-50":{"id":"/src/rules/jsx/no-missing-for-by.ts","moduleParts":{"index.js":"af902890-51"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-52":{"id":"/src/rules/jsx/no-onchange.ts","moduleParts":{"index.js":"af902890-53"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-54":{"id":"/src/rules/jsx/no-props-destructure.ts","moduleParts":{"index.js":"af902890-55"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-56":{"id":"/src/rules/jsx/no-ternary-conditional.ts","moduleParts":{"index.js":"af902890-57"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-58":{"id":"/src/rules/jsx/use-by-not-key.ts","moduleParts":{"index.js":"af902890-59"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-60":{"id":"/src/rules/lifecycle/no-dom-in-setup.ts","moduleParts":{"index.js":"af902890-61"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-62":{"id":"/src/rules/lifecycle/no-effect-in-mount.ts","moduleParts":{"index.js":"af902890-63"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-64":{"id":"/src/rules/lifecycle/no-missing-cleanup.ts","moduleParts":{"index.js":"af902890-65"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-66":{"id":"/src/rules/lifecycle/no-mount-in-effect.ts","moduleParts":{"index.js":"af902890-67"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-68":{"id":"/src/rules/performance/no-eager-import.ts","moduleParts":{"index.js":"af902890-69"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-70":{"id":"/src/rules/performance/no-effect-in-for.ts","moduleParts":{"index.js":"af902890-71"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-72":{"id":"/src/rules/performance/no-large-for-without-by.ts","moduleParts":{"index.js":"af902890-73"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-74":{"id":"/src/rules/performance/prefer-show-over-display.ts","moduleParts":{"index.js":"af902890-75"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-76":{"id":"/src/rules/reactivity/no-bare-signal-in-jsx.ts","moduleParts":{"index.js":"af902890-77"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-78":{"id":"/src/rules/reactivity/no-context-destructure.ts","moduleParts":{"index.js":"af902890-79"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-80":{"id":"/src/rules/reactivity/no-effect-assignment.ts","moduleParts":{"index.js":"af902890-81"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-82":{"id":"/src/rules/reactivity/no-nested-effect.ts","moduleParts":{"index.js":"af902890-83"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-84":{"id":"/src/rules/reactivity/no-peek-in-tracked.ts","moduleParts":{"index.js":"af902890-85"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-86":{"id":"/src/rules/reactivity/no-signal-in-loop.ts","moduleParts":{"index.js":"af902890-87"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-88":{"id":"/src/rules/reactivity/no-signal-leak.ts","moduleParts":{"index.js":"af902890-89"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-90":{"id":"/src/rules/reactivity/no-unbatched-updates.ts","moduleParts":{"index.js":"af902890-91"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-92":{"id":"/src/rules/reactivity/prefer-computed.ts","moduleParts":{"index.js":"af902890-93"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-94":{"id":"/src/rules/router/no-href-navigation.ts","moduleParts":{"index.js":"af902890-95"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-96":{"id":"/src/rules/router/no-imperative-navigate-in-render.ts","moduleParts":{"index.js":"af902890-97"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-98":{"id":"/src/rules/router/no-missing-fallback.ts","moduleParts":{"index.js":"af902890-99"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-100":{"id":"/src/rules/router/prefer-use-is-active.ts","moduleParts":{"index.js":"af902890-101"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-102":{"id":"/src/rules/ssr/no-mismatch-risk.ts","moduleParts":{"index.js":"af902890-103"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-104":{"id":"/src/rules/ssr/no-window-in-ssr.ts","moduleParts":{"index.js":"af902890-105"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-106":{"id":"/src/rules/ssr/prefer-request-context.ts","moduleParts":{"index.js":"af902890-107"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-108":{"id":"/src/rules/store/no-duplicate-store-id.ts","moduleParts":{"index.js":"af902890-109"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-110":{"id":"/src/rules/store/no-mutate-store-state.ts","moduleParts":{"index.js":"af902890-111"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-112":{"id":"/src/rules/store/no-store-outside-provider.ts","moduleParts":{"index.js":"af902890-113"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-114":{"id":"/src/rules/styling/no-dynamic-styled.ts","moduleParts":{"index.js":"af902890-115"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-116":{"id":"/src/rules/styling/no-inline-style-object.ts","moduleParts":{"index.js":"af902890-117"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-118":{"id":"/src/rules/styling/no-theme-outside-provider.ts","moduleParts":{"index.js":"af902890-119"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-120":{"id":"/src/rules/styling/prefer-cx.ts","moduleParts":{"index.js":"af902890-121"},"imported":[{"uid":"af902890-8"}],"importedBy":[{"uid":"af902890-122"}]},"af902890-122":{"id":"/src/rules/index.ts","moduleParts":{"index.js":"af902890-123"},"imported":[{"uid":"af902890-10"},{"uid":"af902890-12"},{"uid":"af902890-14"},{"uid":"af902890-16"},{"uid":"af902890-18"},{"uid":"af902890-20"},{"uid":"af902890-22"},{"uid":"af902890-24"},{"uid":"af902890-26"},{"uid":"af902890-28"},{"uid":"af902890-30"},{"uid":"af902890-32"},{"uid":"af902890-34"},{"uid":"af902890-36"},{"uid":"af902890-38"},{"uid":"af902890-40"},{"uid":"af902890-42"},{"uid":"af902890-44"},{"uid":"af902890-46"},{"uid":"af902890-48"},{"uid":"af902890-50"},{"uid":"af902890-52"},{"uid":"af902890-54"},{"uid":"af902890-56"},{"uid":"af902890-58"},{"uid":"af902890-60"},{"uid":"af902890-62"},{"uid":"af902890-64"},{"uid":"af902890-66"},{"uid":"af902890-68"},{"uid":"af902890-70"},{"uid":"af902890-72"},{"uid":"af902890-74"},{"uid":"af902890-76"},{"uid":"af902890-78"},{"uid":"af902890-80"},{"uid":"af902890-82"},{"uid":"af902890-84"},{"uid":"af902890-86"},{"uid":"af902890-88"},{"uid":"af902890-90"},{"uid":"af902890-92"},{"uid":"af902890-94"},{"uid":"af902890-96"},{"uid":"af902890-98"},{"uid":"af902890-100"},{"uid":"af902890-102"},{"uid":"af902890-104"},{"uid":"af902890-106"},{"uid":"af902890-108"},{"uid":"af902890-110"},{"uid":"af902890-112"},{"uid":"af902890-114"},{"uid":"af902890-116"},{"uid":"af902890-118"},{"uid":"af902890-120"}],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-124"},{"uid":"af902890-132"},{"uid":"af902890-136"},{"uid":"af902890-138"}]},"af902890-124":{"id":"/src/config/presets.ts","moduleParts":{"index.js":"af902890-125"},"imported":[{"uid":"af902890-122"}],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-132"},{"uid":"af902890-136"},{"uid":"af902890-138"}]},"af902890-126":{"id":"/src/utils/source.ts","moduleParts":{"index.js":"af902890-127"},"imported":[],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-130"},{"uid":"af902890-128"}]},"af902890-128":{"id":"/src/utils/index.ts","moduleParts":{"index.js":"af902890-129"},"imported":[{"uid":"af902890-8"},{"uid":"af902890-6"},{"uid":"af902890-126"}],"importedBy":[{"uid":"af902890-132"},{"uid":"af902890-130"},{"uid":"af902890-138"}]},"af902890-130":{"id":"/src/runner.ts","moduleParts":{"index.js":"af902890-131"},"imported":[{"uid":"af902890-144"},{"uid":"af902890-128"},{"uid":"af902890-126"}],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-132"},{"uid":"af902890-136"},{"uid":"af902890-138"}]},"af902890-132":{"id":"/src/lint.ts","moduleParts":{"index.js":"af902890-133"},"imported":[{"uid":"af902890-142"},{"uid":"af902890-143"},{"uid":"af902890-0"},{"uid":"af902890-2"},{"uid":"af902890-4"},{"uid":"af902890-124"},{"uid":"af902890-122"},{"uid":"af902890-130"},{"uid":"af902890-128"}],"importedBy":[{"uid":"af902890-140"}]},"af902890-134":{"id":"/src/reporter.ts","moduleParts":{"index.js":"af902890-135"},"imported":[],"importedBy":[{"uid":"af902890-140"},{"uid":"af902890-138"}]},"af902890-136":{"id":"/src/lsp/index.ts","moduleParts":{"index.js":"af902890-137"},"imported":[{"uid":"af902890-0"},{"uid":"af902890-124"},{"uid":"af902890-122"},{"uid":"af902890-130"}],"importedBy":[{"uid":"af902890-140"}]},"af902890-138":{"id":"/src/watcher.ts","moduleParts":{"index.js":"af902890-139"},"imported":[{"uid":"af902890-142"},{"uid":"af902890-143"},{"uid":"af902890-0"},{"uid":"af902890-2"},{"uid":"af902890-124"},{"uid":"af902890-134"},{"uid":"af902890-122"},{"uid":"af902890-130"},{"uid":"af902890-128"}],"importedBy":[{"uid":"af902890-140"}]},"af902890-140":{"id":"/src/index.ts","moduleParts":{"index.js":"af902890-141"},"imported":[{"uid":"af902890-0"},{"uid":"af902890-2"},{"uid":"af902890-4"},{"uid":"af902890-124"},{"uid":"af902890-132"},{"uid":"af902890-134"},{"uid":"af902890-136"},{"uid":"af902890-122"},{"uid":"af902890-130"},{"uid":"af902890-6"},{"uid":"af902890-126"},{"uid":"af902890-138"}],"importedBy":[],"isEntry":true},"af902890-142":{"id":"node:fs","moduleParts":{},"imported":[],"importedBy":[{"uid":"af902890-2"},{"uid":"af902890-4"},{"uid":"af902890-132"},{"uid":"af902890-138"}]},"af902890-143":{"id":"node:path","moduleParts":{},"imported":[],"importedBy":[{"uid":"af902890-2"},{"uid":"af902890-4"},{"uid":"af902890-132"},{"uid":"af902890-138"}]},"af902890-144":{"id":"oxc-parser","moduleParts":{},"imported":[],"importedBy":[{"uid":"af902890-130"}]}},"env":{"rollup":"4.23.0"},"options":{"gzip":true,"brotli":false,"sourcemap":false}};
5390
5390
 
5391
5391
  const run = () => {
5392
5392
  const width = window.innerWidth;
package/lib/cli.js CHANGED
@@ -1512,6 +1512,39 @@ const noBareSignalInJsx = {
1512
1512
  }
1513
1513
  };
1514
1514
 
1515
+ //#endregion
1516
+ //#region src/rules/reactivity/no-context-destructure.ts
1517
+ /**
1518
+ * Detects destructuring the return value of useContext().
1519
+ *
1520
+ * `const { mode } = useContext(ctx)` loses reactivity when the context
1521
+ * provides getter properties. The value is captured once at setup time.
1522
+ *
1523
+ * Correct: `const ctx = useContext(Ctx)` then read `ctx.mode` lazily.
1524
+ */
1525
+ const noContextDestructure = {
1526
+ meta: {
1527
+ id: "pyreon/no-context-destructure",
1528
+ category: "reactivity",
1529
+ description: "Disallow destructuring useContext() — it breaks reactivity when context provides getters.",
1530
+ severity: "warn",
1531
+ fixable: false
1532
+ },
1533
+ create(context) {
1534
+ return { VariableDeclarator(node) {
1535
+ const id = node.id;
1536
+ const init = node.init;
1537
+ if (!id || !init) return;
1538
+ if (id.type !== "ObjectPattern") return;
1539
+ if (init.type !== "CallExpression" || init.callee?.type !== "Identifier" || init.callee.name !== "useContext") return;
1540
+ context.report({
1541
+ message: "Destructuring useContext() captures values once — reactive getters lose reactivity. Keep the object reference: `const ctx = useContext(Ctx)` and access `ctx.mode` lazily.",
1542
+ span: getSpan(id)
1543
+ });
1544
+ } };
1545
+ }
1546
+ };
1547
+
1515
1548
  //#endregion
1516
1549
  //#region src/rules/reactivity/no-effect-assignment.ts
1517
1550
  function isUpdateCall(node) {
@@ -2383,6 +2416,7 @@ const preferCx = {
2383
2416
  //#region src/rules/index.ts
2384
2417
  const allRules = [
2385
2418
  noBareSignalInJsx,
2419
+ noContextDestructure,
2386
2420
  noSignalInLoop,
2387
2421
  noNestedEffect,
2388
2422
  noPeekInTracked,
@@ -2789,6 +2823,178 @@ function listRules() {
2789
2823
  return allRules.map((r) => r.meta);
2790
2824
  }
2791
2825
 
2826
+ //#endregion
2827
+ //#region src/lsp/index.ts
2828
+ /**
2829
+ * Minimal LSP server for @pyreon/lint.
2830
+ *
2831
+ * Provides real-time Pyreon-specific diagnostics in editors that support
2832
+ * the Language Server Protocol (VS Code, Neovim, etc.).
2833
+ *
2834
+ * Usage: pyreon-lint --lsp
2835
+ *
2836
+ * The server communicates via JSON-RPC over stdin/stdout following the
2837
+ * LSP specification (https://microsoft.github.io/language-server-protocol/).
2838
+ *
2839
+ * Supported capabilities:
2840
+ * - textDocument/didOpen — lint on open
2841
+ * - textDocument/didSave — lint on save
2842
+ * - textDocument/didChange — lint on change (debounced)
2843
+ *
2844
+ * @module
2845
+ */
2846
+ const cache = new AstCache();
2847
+ const config = getPreset("recommended");
2848
+ function toLspDiagnostics(diagnostics) {
2849
+ return diagnostics.map((d) => ({
2850
+ range: {
2851
+ start: {
2852
+ line: d.loc.line - 1,
2853
+ character: d.loc.column - 1
2854
+ },
2855
+ end: {
2856
+ line: d.loc.line - 1,
2857
+ character: d.loc.column - 1 + (d.span.end - d.span.start)
2858
+ }
2859
+ },
2860
+ severity: d.severity === "error" ? 1 : d.severity === "warn" ? 2 : 3,
2861
+ source: "pyreon-lint",
2862
+ message: d.message,
2863
+ code: d.ruleId
2864
+ }));
2865
+ }
2866
+ function lintDocument(uri, text) {
2867
+ try {
2868
+ return toLspDiagnostics(lintFile(uri.replace("file://", ""), text, allRules, config, cache).diagnostics);
2869
+ } catch {
2870
+ return [];
2871
+ }
2872
+ }
2873
+ const DEBOUNCE_MS = 150;
2874
+ const debounceTimers = /* @__PURE__ */ new Map();
2875
+ function debounceLint(uri, text) {
2876
+ const existing = debounceTimers.get(uri);
2877
+ if (existing) clearTimeout(existing);
2878
+ debounceTimers.set(uri, setTimeout(() => {
2879
+ debounceTimers.delete(uri);
2880
+ sendNotification("textDocument/publishDiagnostics", {
2881
+ uri,
2882
+ diagnostics: lintDocument(uri, text)
2883
+ });
2884
+ }, DEBOUNCE_MS));
2885
+ }
2886
+ const openDocuments = /* @__PURE__ */ new Map();
2887
+ function handleMessage(msg) {
2888
+ if (msg.method === "initialize") return {
2889
+ jsonrpc: "2.0",
2890
+ id: msg.id,
2891
+ result: {
2892
+ capabilities: {
2893
+ textDocumentSync: 1,
2894
+ diagnosticProvider: {
2895
+ interFileDependencies: false,
2896
+ workspaceDiagnostics: false
2897
+ }
2898
+ },
2899
+ serverInfo: {
2900
+ name: "pyreon-lint",
2901
+ version: "0.11.5"
2902
+ }
2903
+ }
2904
+ };
2905
+ if (msg.method === "initialized") return null;
2906
+ if (msg.method === "textDocument/didOpen") {
2907
+ const { uri, text } = msg.params.textDocument;
2908
+ openDocuments.set(uri, text);
2909
+ sendNotification("textDocument/publishDiagnostics", {
2910
+ uri,
2911
+ diagnostics: lintDocument(uri, text)
2912
+ });
2913
+ return null;
2914
+ }
2915
+ if (msg.method === "textDocument/didChange") {
2916
+ const uri = msg.params.textDocument.uri;
2917
+ const text = msg.params.contentChanges[0]?.text;
2918
+ if (text != null) {
2919
+ openDocuments.set(uri, text);
2920
+ debounceLint(uri, text);
2921
+ }
2922
+ return null;
2923
+ }
2924
+ if (msg.method === "textDocument/didSave") {
2925
+ const uri = msg.params.textDocument.uri;
2926
+ const text = openDocuments.get(uri);
2927
+ if (text) sendNotification("textDocument/publishDiagnostics", {
2928
+ uri,
2929
+ diagnostics: lintDocument(uri, text)
2930
+ });
2931
+ return null;
2932
+ }
2933
+ if (msg.method === "textDocument/didClose") {
2934
+ const uri = msg.params.textDocument.uri;
2935
+ openDocuments.delete(uri);
2936
+ sendNotification("textDocument/publishDiagnostics", {
2937
+ uri,
2938
+ diagnostics: []
2939
+ });
2940
+ return null;
2941
+ }
2942
+ if (msg.method === "shutdown") return {
2943
+ jsonrpc: "2.0",
2944
+ id: msg.id,
2945
+ result: null
2946
+ };
2947
+ if (msg.method === "exit") process.exit(0);
2948
+ if (msg.id != null) return {
2949
+ jsonrpc: "2.0",
2950
+ id: msg.id,
2951
+ result: null
2952
+ };
2953
+ return null;
2954
+ }
2955
+ function sendMessage(msg) {
2956
+ const body = JSON.stringify(msg);
2957
+ const header = `Content-Length: ${Buffer.byteLength(body)}\r\n\r\n`;
2958
+ process.stdout.write(header + body);
2959
+ }
2960
+ function sendNotification(method, params) {
2961
+ sendMessage({
2962
+ jsonrpc: "2.0",
2963
+ method,
2964
+ params
2965
+ });
2966
+ }
2967
+ /**
2968
+ * Start the LSP server. Reads JSON-RPC messages from stdin,
2969
+ * processes them, and writes responses to stdout.
2970
+ */
2971
+ function startLspServer() {
2972
+ let buffer = "";
2973
+ process.stdin.setEncoding("utf-8");
2974
+ process.stdin.on("data", (chunk) => {
2975
+ buffer += chunk;
2976
+ while (true) {
2977
+ const headerEnd = buffer.indexOf("\r\n\r\n");
2978
+ if (headerEnd === -1) break;
2979
+ const match = buffer.slice(0, headerEnd).match(/Content-Length:\s*(\d+)/i);
2980
+ if (!match) {
2981
+ buffer = buffer.slice(headerEnd + 4);
2982
+ continue;
2983
+ }
2984
+ const contentLength = Number.parseInt(match[1], 10);
2985
+ const bodyStart = headerEnd + 4;
2986
+ if (buffer.length < bodyStart + contentLength) break;
2987
+ const body = buffer.slice(bodyStart, bodyStart + contentLength);
2988
+ buffer = buffer.slice(bodyStart + contentLength);
2989
+ try {
2990
+ const response = handleMessage(JSON.parse(body));
2991
+ if (response) sendMessage(response);
2992
+ } catch {}
2993
+ }
2994
+ });
2995
+ process.stderr.write("[pyreon-lint] LSP server started\n");
2996
+ }
2997
+
2792
2998
  //#endregion
2793
2999
  //#region src/reporter.ts
2794
3000
  const BOLD = "\x1B[1m";
@@ -2940,6 +3146,7 @@ function printUsage() {
2940
3146
  --config <path> Config file path
2941
3147
  --ignore <path> Ignore file path
2942
3148
  --watch Watch mode — re-lint on file changes
3149
+ --lsp Start LSP server (stdin/stdout JSON-RPC)
2943
3150
  --help, -h Show this help
2944
3151
  --version, -v Show version
2945
3152
  `);
@@ -2965,7 +3172,8 @@ const BOOLEAN_FLAGS = {
2965
3172
  "--list": "showList",
2966
3173
  "--fix": "fix",
2967
3174
  "--quiet": "quiet",
2968
- "--watch": "watchMode"
3175
+ "--watch": "watchMode",
3176
+ "--lsp": "lspMode"
2969
3177
  };
2970
3178
  function parseArgs(argv) {
2971
3179
  const result = {
@@ -2977,6 +3185,7 @@ function parseArgs(argv) {
2977
3185
  showHelp: false,
2978
3186
  showVersion: false,
2979
3187
  watchMode: false,
3188
+ lspMode: false,
2980
3189
  configPath: void 0,
2981
3190
  ignorePath: void 0,
2982
3191
  ruleOverrides: {},
@@ -3040,6 +3249,10 @@ function main() {
3040
3249
  printList();
3041
3250
  process.exit(0);
3042
3251
  }
3252
+ if (args.lspMode) {
3253
+ startLspServer();
3254
+ return;
3255
+ }
3043
3256
  if (args.paths.length === 0) args.paths.push(".");
3044
3257
  if (args.watchMode) {
3045
3258
  watchAndLint({