@askviraj/linter 1.1.4 → 1.1.6

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 (821) hide show
  1. package/node_modules/@astrojs/compiler-binding/package.json +10 -10
  2. package/node_modules/@astrojs/compiler-binding-darwin-arm64/README.md +3 -0
  3. package/node_modules/@astrojs/compiler-binding-darwin-arm64/astro.darwin-arm64.node +0 -0
  4. package/node_modules/@astrojs/compiler-binding-darwin-arm64/package.json +37 -0
  5. package/node_modules/@astrojs/compiler-binding-darwin-x64/README.md +3 -0
  6. package/node_modules/@astrojs/compiler-binding-darwin-x64/astro.darwin-x64.node +0 -0
  7. package/node_modules/@astrojs/compiler-binding-darwin-x64/package.json +37 -0
  8. package/node_modules/@astrojs/compiler-binding-linux-arm64-gnu/README.md +3 -0
  9. package/node_modules/@astrojs/compiler-binding-linux-arm64-gnu/astro.linux-arm64-gnu.node +0 -0
  10. package/node_modules/@astrojs/compiler-binding-linux-arm64-gnu/package.json +40 -0
  11. package/node_modules/@astrojs/compiler-binding-linux-arm64-musl/README.md +3 -0
  12. package/node_modules/@astrojs/compiler-binding-linux-arm64-musl/astro.linux-arm64-musl.node +0 -0
  13. package/node_modules/@astrojs/compiler-binding-linux-arm64-musl/package.json +40 -0
  14. package/node_modules/@astrojs/compiler-binding-linux-x64-gnu/astro.linux-x64-gnu.node +0 -0
  15. package/node_modules/@astrojs/compiler-binding-linux-x64-gnu/package.json +1 -1
  16. package/node_modules/@astrojs/compiler-binding-linux-x64-musl/README.md +3 -0
  17. package/node_modules/@astrojs/compiler-binding-linux-x64-musl/astro.linux-x64-musl.node +0 -0
  18. package/node_modules/@astrojs/compiler-binding-linux-x64-musl/package.json +40 -0
  19. package/node_modules/@astrojs/compiler-binding-win32-arm64-msvc/README.md +3 -0
  20. package/node_modules/@astrojs/compiler-binding-win32-arm64-msvc/astro.win32-arm64-msvc.node +0 -0
  21. package/node_modules/@astrojs/compiler-binding-win32-arm64-msvc/package.json +37 -0
  22. package/node_modules/@astrojs/compiler-binding-win32-x64-msvc/README.md +3 -0
  23. package/node_modules/@astrojs/compiler-binding-win32-x64-msvc/astro.win32-x64-msvc.node +0 -0
  24. package/node_modules/@astrojs/compiler-binding-win32-x64-msvc/package.json +37 -0
  25. package/node_modules/@astrojs/compiler-rs/package.json +2 -2
  26. package/node_modules/@html-eslint/core/dist/index.js +2 -0
  27. package/node_modules/@html-eslint/core/dist/index.js.map +1 -1
  28. package/node_modules/@html-eslint/core/dist/index.mjs +2 -0
  29. package/node_modules/@html-eslint/core/dist/index.mjs.map +1 -1
  30. package/node_modules/@html-eslint/core/package.json +3 -3
  31. package/node_modules/@html-eslint/eslint-plugin/lib/rules/no-duplicate-attrs.js +140 -16
  32. package/node_modules/@html-eslint/eslint-plugin/lib/rules/no-duplicate-id.js +24 -5
  33. package/node_modules/@html-eslint/eslint-plugin/lib/rules/no-duplicate-in-head.js +17 -5
  34. package/node_modules/@html-eslint/eslint-plugin/lib/rules/utils/branch-segments.js +147 -0
  35. package/node_modules/@html-eslint/eslint-plugin/package.json +7 -7
  36. package/node_modules/@html-eslint/eslint-plugin/types/rules/no-duplicate-attrs.d.ts.map +1 -1
  37. package/node_modules/@html-eslint/eslint-plugin/types/rules/no-duplicate-id.d.ts.map +1 -1
  38. package/node_modules/@html-eslint/eslint-plugin/types/rules/no-duplicate-in-head.d.ts.map +1 -1
  39. package/node_modules/@html-eslint/eslint-plugin/types/rules/utils/branch-segments.d.ts +71 -0
  40. package/node_modules/@html-eslint/eslint-plugin/types/rules/utils/branch-segments.d.ts.map +1 -0
  41. package/node_modules/@html-eslint/parser/lib/branch-annotation.js +282 -0
  42. package/node_modules/@html-eslint/parser/lib/options.js +47 -2
  43. package/node_modules/@html-eslint/parser/lib/parser.js +62 -1
  44. package/node_modules/@html-eslint/parser/lib/template-engine-syntax-preset.js +117 -2
  45. package/node_modules/@html-eslint/parser/package.json +4 -4
  46. package/node_modules/@html-eslint/parser/types/branch-annotation.d.ts +93 -0
  47. package/node_modules/@html-eslint/parser/types/branch-annotation.d.ts.map +1 -0
  48. package/node_modules/@html-eslint/parser/types/options.d.ts +12 -1
  49. package/node_modules/@html-eslint/parser/types/options.d.ts.map +1 -1
  50. package/node_modules/@html-eslint/parser/types/parser.d.ts.map +1 -1
  51. package/node_modules/@html-eslint/parser/types/template-engine-syntax-preset.d.ts +76 -2
  52. package/node_modules/@html-eslint/parser/types/template-engine-syntax-preset.d.ts.map +1 -1
  53. package/node_modules/@html-eslint/template-parser/package.json +3 -3
  54. package/node_modules/@html-eslint/template-syntax-parser/package.json +3 -3
  55. package/node_modules/@html-eslint/types/package.json +2 -2
  56. package/node_modules/@humanwhocodes/momoa/dist/momoa.cjs +14 -1
  57. package/node_modules/@humanwhocodes/momoa/dist/momoa.js +14 -1
  58. package/node_modules/@humanwhocodes/momoa/package.json +4 -4
  59. package/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs +115 -71
  60. package/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.mjs.map +2 -2
  61. package/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js +115 -71
  62. package/node_modules/@jridgewell/sourcemap-codec/dist/sourcemap-codec.umd.js.map +2 -2
  63. package/node_modules/@jridgewell/sourcemap-codec/package.json +2 -1
  64. package/node_modules/@jridgewell/sourcemap-codec/src/range-mappings.ts +47 -0
  65. package/node_modules/@jridgewell/sourcemap-codec/src/scopes.ts +66 -46
  66. package/node_modules/@jridgewell/sourcemap-codec/src/sourcemap-codec.ts +27 -11
  67. package/node_modules/@jridgewell/sourcemap-codec/src/vlq.ts +13 -17
  68. package/node_modules/@jridgewell/sourcemap-codec/types/range-mappings.d.cts +5 -0
  69. package/node_modules/@jridgewell/sourcemap-codec/types/range-mappings.d.cts.map +1 -0
  70. package/node_modules/@jridgewell/sourcemap-codec/types/range-mappings.d.mts +5 -0
  71. package/node_modules/@jridgewell/sourcemap-codec/types/range-mappings.d.mts.map +1 -0
  72. package/node_modules/@jridgewell/sourcemap-codec/types/scopes.d.cts.map +1 -1
  73. package/node_modules/@jridgewell/sourcemap-codec/types/scopes.d.mts.map +1 -1
  74. package/node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.cts +2 -0
  75. package/node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.cts.map +1 -1
  76. package/node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.mts +2 -0
  77. package/node_modules/@jridgewell/sourcemap-codec/types/sourcemap-codec.d.mts.map +1 -1
  78. package/node_modules/@jridgewell/sourcemap-codec/types/vlq.d.cts +4 -2
  79. package/node_modules/@jridgewell/sourcemap-codec/types/vlq.d.cts.map +1 -1
  80. package/node_modules/@jridgewell/sourcemap-codec/types/vlq.d.mts +4 -2
  81. package/node_modules/@jridgewell/sourcemap-codec/types/vlq.d.mts.map +1 -1
  82. package/node_modules/@rviscomi/capo.js/README.md +18 -6
  83. package/node_modules/@rviscomi/capo.js/dist/adapters/adapter.cjs +8 -0
  84. package/node_modules/@rviscomi/capo.js/dist/adapters/browser.cjs +26 -2
  85. package/node_modules/@rviscomi/capo.js/dist/adapters/index.cjs +26 -2
  86. package/node_modules/@rviscomi/capo.js/dist/analyzer.cjs +300 -263
  87. package/node_modules/@rviscomi/capo.js/dist/chrome/README.md +5 -1
  88. package/node_modules/@rviscomi/capo.js/dist/chrome/background.js +1 -1
  89. package/node_modules/@rviscomi/capo.js/dist/chrome/capo.css +4 -11
  90. package/node_modules/@rviscomi/capo.js/dist/chrome/capo.html +2 -2
  91. package/node_modules/@rviscomi/capo.js/dist/chrome/capo.js +3 -3
  92. package/node_modules/@rviscomi/capo.js/dist/chrome/chrome.js +2 -9
  93. package/node_modules/@rviscomi/capo.js/dist/chrome/manifest.json +1 -1
  94. package/node_modules/@rviscomi/capo.js/dist/chrome/options/options.html +1 -1
  95. package/node_modules/@rviscomi/capo.js/dist/chrome/options/options.js +1 -1
  96. package/node_modules/@rviscomi/capo.js/dist/chrome/styles/open-props.css +16 -14
  97. package/node_modules/@rviscomi/capo.js/dist/chrome.zip +0 -0
  98. package/node_modules/@rviscomi/capo.js/dist/firefox/README.md +5 -1
  99. package/node_modules/@rviscomi/capo.js/dist/firefox/background.js +1 -1
  100. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.css +4 -11
  101. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.html +2 -2
  102. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.js +3 -3
  103. package/node_modules/@rviscomi/capo.js/dist/firefox/chrome.js +2 -9
  104. package/node_modules/@rviscomi/capo.js/dist/firefox/manifest.json +1 -1
  105. package/node_modules/@rviscomi/capo.js/dist/firefox/options/options.html +1 -1
  106. package/node_modules/@rviscomi/capo.js/dist/firefox/options/options.js +1 -1
  107. package/node_modules/@rviscomi/capo.js/dist/firefox/styles/open-props.css +16 -14
  108. package/node_modules/@rviscomi/capo.js/dist/firefox.zip +0 -0
  109. package/node_modules/@rviscomi/capo.js/dist/index.cjs +378 -368
  110. package/node_modules/@rviscomi/capo.js/dist/lib/colors.cjs +1 -1
  111. package/node_modules/@rviscomi/capo.js/dist/lib/io.cjs +7 -5
  112. package/node_modules/@rviscomi/capo.js/dist/lib/options.cjs +7 -3
  113. package/node_modules/@rviscomi/capo.js/dist/lib/rules.cjs +25 -4
  114. package/node_modules/@rviscomi/capo.js/dist/lib/validation.cjs +326 -358
  115. package/node_modules/@rviscomi/capo.js/dist/source.zip +0 -0
  116. package/node_modules/@rviscomi/capo.js/dist/types/adapters/adapter.d.ts +6 -0
  117. package/node_modules/@rviscomi/capo.js/dist/types/adapters/browser.d.ts +8 -1
  118. package/node_modules/@rviscomi/capo.js/dist/types/adapters/index.d.ts +2 -2
  119. package/node_modules/@rviscomi/capo.js/dist/types/analyzer.d.ts +5 -0
  120. package/node_modules/@rviscomi/capo.js/dist/types/index.d.ts +5 -5
  121. package/node_modules/@rviscomi/capo.js/dist/types/lib/options.d.ts +1 -1
  122. package/node_modules/@rviscomi/capo.js/dist/types/lib/rules.d.ts +9 -2
  123. package/node_modules/@rviscomi/capo.js/dist/types/lib/validation.d.ts +4 -2
  124. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/charset.d.ts +28 -0
  125. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/content-type.d.ts +18 -0
  126. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/csp.d.ts +12 -0
  127. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/default-style.d.ts +18 -0
  128. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/head-elements.d.ts +52 -0
  129. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/http-equiv.d.ts +18 -0
  130. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/origin-trial.d.ts +19 -0
  131. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/preload.d.ts +41 -0
  132. package/node_modules/@rviscomi/capo.js/dist/types/lib/validations/viewport.d.ts +18 -0
  133. package/node_modules/@rviscomi/capo.js/dist/types/worker/worker.d.ts +16 -0
  134. package/node_modules/@rviscomi/capo.js/package.json +8 -12
  135. package/node_modules/@rviscomi/capo.js/src/adapters/adapter.js +37 -28
  136. package/node_modules/@rviscomi/capo.js/src/adapters/browser.js +41 -24
  137. package/node_modules/@rviscomi/capo.js/src/adapters/index.js +3 -3
  138. package/node_modules/@rviscomi/capo.js/src/adapters/test-suite.js +129 -129
  139. package/node_modules/@rviscomi/capo.js/src/analyzer.js +20 -25
  140. package/node_modules/@rviscomi/capo.js/src/extension/README.md +5 -1
  141. package/node_modules/@rviscomi/capo.js/src/extension/background.js +1 -1
  142. package/node_modules/@rviscomi/capo.js/src/extension/capo.css +4 -11
  143. package/node_modules/@rviscomi/capo.js/src/extension/capo.html +2 -2
  144. package/node_modules/@rviscomi/capo.js/src/extension/capo.js +21 -18
  145. package/node_modules/@rviscomi/capo.js/src/extension/chrome.js +2 -9
  146. package/node_modules/@rviscomi/capo.js/src/extension/manifest.json +2 -6
  147. package/node_modules/@rviscomi/capo.js/src/extension/options/options.html +1 -1
  148. package/node_modules/@rviscomi/capo.js/src/extension/options.js +16 -16
  149. package/node_modules/@rviscomi/capo.js/src/extension/styles/open-props.css +16 -14
  150. package/node_modules/@rviscomi/capo.js/src/index.js +10 -20
  151. package/node_modules/@rviscomi/capo.js/src/lib/colors.js +17 -17
  152. package/node_modules/@rviscomi/capo.js/src/lib/io.js +19 -17
  153. package/node_modules/@rviscomi/capo.js/src/lib/options.js +23 -20
  154. package/node_modules/@rviscomi/capo.js/src/lib/rules.js +124 -95
  155. package/node_modules/@rviscomi/capo.js/src/lib/validation.js +57 -857
  156. package/node_modules/@rviscomi/capo.js/src/lib/validations/content-type.js +94 -0
  157. package/node_modules/@rviscomi/capo.js/src/lib/validations/csp.js +68 -0
  158. package/node_modules/@rviscomi/capo.js/src/lib/validations/default-style.js +62 -0
  159. package/node_modules/@rviscomi/capo.js/src/lib/validations/http-equiv.js +138 -0
  160. package/node_modules/@rviscomi/capo.js/src/lib/validations/origin-trial.js +80 -0
  161. package/node_modules/@rviscomi/capo.js/src/lib/validations/preload.js +135 -0
  162. package/node_modules/@rviscomi/capo.js/src/lib/validations/viewport.js +183 -0
  163. package/node_modules/@rviscomi/capo.js/src/web/capo.js +12 -12
  164. package/node_modules/@rviscomi/capo.js/src/worker/worker.js +180 -0
  165. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended-raw.d.ts +2 -2
  166. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslint-recommended-raw.js +1 -0
  167. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/all.js +1 -0
  168. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/base.js +1 -0
  169. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/disable-type-checked.js +1 -0
  170. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/eslint-recommended.d.ts +1 -1
  171. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/eslint-recommended.js +1 -0
  172. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/recommended-type-checked-only.js +1 -0
  173. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/recommended-type-checked.js +1 -0
  174. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/recommended.js +1 -0
  175. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/strict-type-checked-only.js +1 -0
  176. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/strict-type-checked.js +1 -0
  177. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/strict.js +1 -0
  178. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/stylistic-type-checked-only.js +1 -0
  179. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/stylistic-type-checked.js +1 -0
  180. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/stylistic.js +1 -0
  181. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/all.d.ts +2 -2
  182. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/all.js +1 -0
  183. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/base.d.ts +2 -2
  184. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/base.js +1 -0
  185. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/disable-type-checked.d.ts +2 -2
  186. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/disable-type-checked.js +1 -0
  187. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/eslint-recommended.d.ts +2 -2
  188. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/eslint-recommended.js +1 -0
  189. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended-type-checked-only.d.ts +2 -2
  190. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended-type-checked-only.js +1 -0
  191. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended-type-checked.d.ts +2 -2
  192. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended-type-checked.js +1 -0
  193. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended.d.ts +2 -2
  194. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/recommended.js +1 -0
  195. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict-type-checked-only.d.ts +2 -2
  196. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict-type-checked-only.js +1 -0
  197. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict-type-checked.d.ts +2 -2
  198. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict-type-checked.js +1 -0
  199. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict.d.ts +2 -2
  200. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/strict.js +1 -0
  201. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic-type-checked-only.d.ts +2 -2
  202. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic-type-checked-only.js +1 -0
  203. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic-type-checked.d.ts +2 -2
  204. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic-type-checked.js +1 -0
  205. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic.d.ts +2 -2
  206. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/stylistic.js +1 -0
  207. package/node_modules/@typescript-eslint/eslint-plugin/dist/index.d.ts +2 -2
  208. package/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +1 -0
  209. package/node_modules/@typescript-eslint/eslint-plugin/dist/raw-plugin.d.ts +2 -2
  210. package/node_modules/@typescript-eslint/eslint-plugin/dist/raw-plugin.js +1 -0
  211. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/adjacent-overload-signatures.js +1 -0
  212. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/array-type.js +1 -0
  213. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/await-thenable.js +1 -0
  214. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +1 -0
  215. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-tslint-comment.js +1 -0
  216. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-literal-property-style.js +12 -4
  217. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/class-methods-use-this.js +1 -0
  218. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-generic-constructors.js +1 -0
  219. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-indexed-object-style.js +1 -0
  220. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-return.js +1 -0
  221. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-assertions.js +1 -0
  222. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-definitions.js +1 -0
  223. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-exports.js +1 -0
  224. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.d.ts +2 -1
  225. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/consistent-type-imports.js +1 -0
  226. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/default-param-last.js +1 -0
  227. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/dot-notation.js +1 -0
  228. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.d.ts +5 -0
  229. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/enum-utils/shared.js +68 -0
  230. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-function-return-type.js +1 -0
  231. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-member-accessibility.js +1 -0
  232. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/explicit-module-boundary-types.js +1 -0
  233. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.d.ts +1 -1
  234. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/index.js +1 -0
  235. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/init-declarations.js +1 -0
  236. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/max-params.js +1 -0
  237. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/member-ordering.js +1 -0
  238. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +1 -0
  239. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/enums.js +1 -0
  240. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/format.js +1 -0
  241. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/index.js +1 -0
  242. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/parse-options.js +1 -0
  243. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/schema.js +1 -0
  244. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/shared.js +1 -0
  245. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/types.js +1 -0
  246. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention-utils/validator.js +1 -0
  247. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/naming-convention.js +1 -0
  248. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-constructor.js +1 -0
  249. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-array-delete.js +1 -0
  250. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +1 -0
  251. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-non-null-assertion.js +1 -0
  252. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-confusing-void-expression.js +8 -9
  253. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-deprecated.js +1 -0
  254. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dupe-class-members.js +1 -0
  255. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-enum-values.js +1 -0
  256. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-duplicate-type-constituents.js +1 -0
  257. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-dynamic-delete.js +1 -0
  258. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-function.js +1 -0
  259. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-interface.js +1 -0
  260. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-empty-object-type.js +9 -4
  261. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-explicit-any.js +1 -0
  262. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extra-non-null-assertion.js +1 -0
  263. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-extraneous-class.js +1 -0
  264. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-floating-promises.js +64 -55
  265. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-for-in-array.js +1 -0
  266. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-implied-eval.js +1 -0
  267. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-import-type-side-effects.js +1 -0
  268. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-inferrable-types.js +1 -0
  269. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-this.js +1 -0
  270. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-invalid-void-type.js +1 -0
  271. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js +1 -0
  272. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loss-of-precision.js +1 -0
  273. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-magic-numbers.js +1 -0
  274. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-meaningless-void-operator.js +1 -0
  275. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-new.js +1 -0
  276. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +1 -0
  277. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-spread.js +1 -0
  278. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-mixed-enums.js +1 -0
  279. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-namespace.js +1 -0
  280. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-nullish-coalescing.js +1 -0
  281. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-asserted-optional-chain.js +1 -0
  282. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-non-null-assertion.js +1 -0
  283. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redeclare.js +1 -0
  284. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-redundant-type-constituents.js +1 -0
  285. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-require-imports.js +1 -0
  286. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js +1 -0
  287. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-types.js +1 -0
  288. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js +1 -0
  289. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +1 -0
  290. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-type-alias.js +1 -0
  291. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-boolean-literal-compare.js +1 -0
  292. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-condition.js +1 -0
  293. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-parameter-property-assignment.js +1 -0
  294. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-qualifier.js +1 -0
  295. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-template-expression.js +3 -14
  296. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-arguments.js +1 -0
  297. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.d.ts +1 -2
  298. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +14 -39
  299. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-constraint.js +1 -0
  300. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-conversion.js +2 -1
  301. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-parameters.js +6 -0
  302. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-argument.js +2 -91
  303. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-assignment.js +1 -0
  304. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-call.js +1 -0
  305. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-declaration-merging.js +1 -0
  306. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-enum-comparison.js +3 -113
  307. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-function-type.js +1 -0
  308. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-member-access.js +1 -0
  309. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-return.js +1 -0
  310. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-type-assertion.js +1 -0
  311. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unsafe-unary-minus.js +1 -0
  312. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-expressions.js +1 -0
  313. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-private-class-members.js +1 -0
  314. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +1 -0
  315. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-use-before-define.js +1 -0
  316. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-constructor.js +1 -0
  317. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-default-assignment.js +15 -11
  318. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-useless-empty-export.js +1 -0
  319. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-var-requires.js +1 -0
  320. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-wrapper-object-types.js +1 -0
  321. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/non-nullable-type-assertion-style.js +1 -0
  322. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/only-throw-error.js +1 -0
  323. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/parameter-properties.js +1 -0
  324. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-as-const.js +1 -0
  325. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-destructuring.js +1 -0
  326. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-enum-initializers.js +1 -0
  327. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-find.js +1 -0
  328. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-for-of.js +1 -0
  329. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.d.ts +2 -2
  330. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-function-type.js +1 -0
  331. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-includes.js +1 -0
  332. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-literal-enum-member.js +1 -0
  333. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-namespace-keyword.js +1 -0
  334. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-nullish-coalescing.js +2 -1
  335. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/PreferOptionalChainOptions.js +1 -0
  336. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/analyzeChain.js +1 -0
  337. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/checkNullishAndReport.js +1 -0
  338. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/compareNodes.js +1 -0
  339. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain-utils/gatherLogicalOperands.js +1 -0
  340. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-optional-chain.js +1 -0
  341. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-promise-reject-errors.js +1 -0
  342. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly-parameter-types.js +1 -0
  343. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-readonly.js +1 -0
  344. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-reduce-type-parameter.js +1 -0
  345. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-regexp-exec.js +1 -0
  346. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-return-this-type.js +1 -0
  347. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +1 -0
  348. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-ts-expect-error.js +1 -0
  349. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/promise-function-async.js +1 -0
  350. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/related-getter-setter-pairs.js +1 -0
  351. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +1 -0
  352. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-await.js +1 -0
  353. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-plus-operands.js +1 -0
  354. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/restrict-template-expressions.js +1 -0
  355. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/return-await.js +13 -1
  356. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/sort-type-constituents.js +1 -0
  357. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-boolean-expressions.js +1 -0
  358. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-void-return.d.ts +3 -2
  359. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/strict-void-return.js +97 -5
  360. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/switch-exhaustiveness-check.js +1 -0
  361. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/triple-slash-reference.js +1 -0
  362. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/typedef.js +1 -0
  363. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +1 -0
  364. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.d.ts +1 -1
  365. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unified-signatures.js +73 -32
  366. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/use-unknown-in-catch-callback-variable.js +1 -0
  367. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/FunctionSignature.d.ts +15 -0
  368. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/FunctionSignature.js +123 -0
  369. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/assertionFunctionUtils.js +1 -0
  370. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/astUtils.js +1 -0
  371. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/baseTypeUtils.d.ts +2 -0
  372. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/baseTypeUtils.js +17 -0
  373. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/class-scope-analyzer/classScopeAnalyzer.js +1 -0
  374. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/class-scope-analyzer/extractComputedName.js +1 -0
  375. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/class-scope-analyzer/types.js +1 -0
  376. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/collectUnusedVariables.js +1 -0
  377. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/createRule.js +1 -0
  378. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/escapeRegExp.js +1 -0
  379. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/explicitReturnTypeUtils.js +1 -0
  380. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getBaseTypesOfClassMember.js +1 -0
  381. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getConstraintInfo.js +1 -0
  382. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getESLintCoreRule.js +1 -0
  383. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFixOrSuggest.js +1 -0
  384. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getForStatementHeadLoc.js +1 -0
  385. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getFunctionHeadLoc.js +1 -0
  386. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getMemberHeadLoc.js +1 -0
  387. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getOperatorPrecedence.js +1 -0
  388. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getParentFunctionNode.js +1 -0
  389. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStaticStringValue.js +1 -0
  390. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getStringLength.js +1 -0
  391. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getTextWithParentheses.js +1 -0
  392. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getThisExpression.js +1 -0
  393. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getValueOfLiteralType.js +1 -0
  394. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappedCode.js +1 -0
  395. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/getWrappingFixer.js +1 -0
  396. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/hasOverloadSignatures.js +1 -0
  397. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.d.ts +3 -1
  398. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/index.js +4 -1
  399. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isArrayMethodCallWithPredicate.js +1 -0
  400. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isAssignee.js +1 -0
  401. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isConditionalTest.js +1 -0
  402. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isHigherPrecedenceThanAwait.js +1 -0
  403. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNodeEqual.js +1 -0
  404. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isNullLiteral.js +1 -0
  405. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isPromiseAggregatorMethod.js +1 -0
  406. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isStartOfArrowFunctionBody.d.ts +2 -0
  407. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isStartOfArrowFunctionBody.js +26 -0
  408. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isStartOfExpressionStatement.js +1 -0
  409. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isTypeImport.js +1 -0
  410. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/isUndefinedIdentifier.js +1 -0
  411. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/misc.js +1 -0
  412. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/needsPrecedingSemiColon.js +1 -0
  413. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/needsToBeAwaited.js +1 -0
  414. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/objectIterators.js +1 -0
  415. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/promiseUtils.js +1 -0
  416. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/rangeToLoc.js +1 -0
  417. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/referenceContainsTypePredicate.js +1 -0
  418. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/referenceContainsTypeQuery.js +1 -0
  419. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/scopeUtils.js +1 -0
  420. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/skipChainExpression.js +1 -0
  421. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/truthinessUtils.js +1 -0
  422. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/types.js +1 -0
  423. package/node_modules/@typescript-eslint/eslint-plugin/dist/util/walkStatements.js +1 -0
  424. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/README.md +52 -0
  425. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/index.js +785 -129
  426. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/legacy.js +660 -98
  427. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/package.json +10 -4
  428. package/node_modules/@typescript-eslint/eslint-plugin/package.json +13 -12
  429. package/node_modules/@typescript-eslint/parser/dist/index.js +1 -0
  430. package/node_modules/@typescript-eslint/parser/dist/parser.js +1 -0
  431. package/node_modules/@typescript-eslint/parser/package.json +8 -7
  432. package/node_modules/@typescript-eslint/project-service/dist/createProjectService.js +1 -0
  433. package/node_modules/@typescript-eslint/project-service/dist/getParsedConfigFileFromTSServer.js +1 -0
  434. package/node_modules/@typescript-eslint/project-service/dist/index.js +1 -0
  435. package/node_modules/@typescript-eslint/project-service/package.json +6 -5
  436. package/node_modules/@typescript-eslint/scope-manager/dist/ID.js +1 -0
  437. package/node_modules/@typescript-eslint/scope-manager/dist/ScopeManager.js +1 -0
  438. package/node_modules/@typescript-eslint/scope-manager/dist/analyze.js +1 -0
  439. package/node_modules/@typescript-eslint/scope-manager/dist/assert.js +1 -0
  440. package/node_modules/@typescript-eslint/scope-manager/dist/definition/CatchClauseDefinition.js +1 -0
  441. package/node_modules/@typescript-eslint/scope-manager/dist/definition/ClassNameDefinition.js +1 -0
  442. package/node_modules/@typescript-eslint/scope-manager/dist/definition/Definition.js +1 -0
  443. package/node_modules/@typescript-eslint/scope-manager/dist/definition/DefinitionBase.js +1 -0
  444. package/node_modules/@typescript-eslint/scope-manager/dist/definition/DefinitionType.js +1 -0
  445. package/node_modules/@typescript-eslint/scope-manager/dist/definition/FunctionNameDefinition.js +1 -0
  446. package/node_modules/@typescript-eslint/scope-manager/dist/definition/ImplicitGlobalVariableDefinition.js +1 -0
  447. package/node_modules/@typescript-eslint/scope-manager/dist/definition/ImportBindingDefinition.js +1 -0
  448. package/node_modules/@typescript-eslint/scope-manager/dist/definition/ParameterDefinition.js +1 -0
  449. package/node_modules/@typescript-eslint/scope-manager/dist/definition/TSEnumMemberDefinition.js +1 -0
  450. package/node_modules/@typescript-eslint/scope-manager/dist/definition/TSEnumNameDefinition.js +1 -0
  451. package/node_modules/@typescript-eslint/scope-manager/dist/definition/TSModuleNameDefinition.js +1 -0
  452. package/node_modules/@typescript-eslint/scope-manager/dist/definition/TypeDefinition.js +1 -0
  453. package/node_modules/@typescript-eslint/scope-manager/dist/definition/VariableDefinition.js +1 -0
  454. package/node_modules/@typescript-eslint/scope-manager/dist/definition/index.js +1 -0
  455. package/node_modules/@typescript-eslint/scope-manager/dist/index.js +1 -0
  456. package/node_modules/@typescript-eslint/scope-manager/dist/lib/base-config.js +1 -0
  457. package/node_modules/@typescript-eslint/scope-manager/dist/lib/decorators.js +1 -0
  458. package/node_modules/@typescript-eslint/scope-manager/dist/lib/decorators.legacy.js +1 -0
  459. package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.asynciterable.js +1 -0
  460. package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.iterable.js +1 -0
  461. package/node_modules/@typescript-eslint/scope-manager/dist/lib/dom.js +1 -0
  462. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.collection.js +1 -0
  463. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.core.js +1 -0
  464. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.generator.js +1 -0
  465. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.iterable.js +1 -0
  466. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.js +1 -0
  467. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.promise.js +1 -0
  468. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.proxy.js +1 -0
  469. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.reflect.js +1 -0
  470. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.symbol.js +1 -0
  471. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2015.symbol.wellknown.js +1 -0
  472. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2016.array.include.js +1 -0
  473. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2016.full.js +1 -0
  474. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2016.intl.js +1 -0
  475. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2016.js +1 -0
  476. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.arraybuffer.js +1 -0
  477. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.date.js +1 -0
  478. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.full.js +1 -0
  479. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.intl.js +1 -0
  480. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.js +1 -0
  481. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.object.js +1 -0
  482. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.sharedmemory.js +1 -0
  483. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.string.js +1 -0
  484. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2017.typedarrays.js +1 -0
  485. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.asyncgenerator.js +1 -0
  486. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.asynciterable.js +1 -0
  487. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.full.js +1 -0
  488. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.intl.js +1 -0
  489. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.js +1 -0
  490. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.promise.js +1 -0
  491. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2018.regexp.js +1 -0
  492. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.array.js +1 -0
  493. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.full.js +1 -0
  494. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.intl.js +1 -0
  495. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.js +1 -0
  496. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.object.js +1 -0
  497. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.string.js +1 -0
  498. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2019.symbol.js +1 -0
  499. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.bigint.js +1 -0
  500. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.date.js +1 -0
  501. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.full.js +1 -0
  502. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.intl.js +1 -0
  503. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.js +1 -0
  504. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.number.js +1 -0
  505. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.promise.js +1 -0
  506. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.sharedmemory.js +1 -0
  507. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.string.js +1 -0
  508. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2020.symbol.wellknown.js +1 -0
  509. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.full.js +1 -0
  510. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.intl.js +1 -0
  511. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.js +1 -0
  512. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.promise.js +1 -0
  513. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.string.js +1 -0
  514. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2021.weakref.js +1 -0
  515. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.array.js +1 -0
  516. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.error.js +1 -0
  517. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.full.js +1 -0
  518. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.intl.js +1 -0
  519. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.js +1 -0
  520. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.object.js +1 -0
  521. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.regexp.js +1 -0
  522. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2022.string.js +1 -0
  523. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2023.array.js +1 -0
  524. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2023.collection.js +1 -0
  525. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2023.full.js +1 -0
  526. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2023.intl.js +1 -0
  527. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2023.js +1 -0
  528. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.arraybuffer.js +1 -0
  529. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.collection.js +1 -0
  530. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.full.js +1 -0
  531. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.js +1 -0
  532. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.object.js +1 -0
  533. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.promise.js +1 -0
  534. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.regexp.js +1 -0
  535. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.sharedmemory.js +1 -0
  536. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2024.string.js +1 -0
  537. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.collection.js +1 -0
  538. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.float16.js +1 -0
  539. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.full.js +1 -0
  540. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.intl.js +1 -0
  541. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.iterator.js +1 -0
  542. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.js +1 -0
  543. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.promise.js +1 -0
  544. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es2025.regexp.js +1 -0
  545. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es5.js +1 -0
  546. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es6.js +1 -0
  547. package/node_modules/@typescript-eslint/scope-manager/dist/lib/es7.js +1 -0
  548. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.array.js +1 -0
  549. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.asynciterable.js +1 -0
  550. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.bigint.js +1 -0
  551. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.collection.js +1 -0
  552. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.date.js +1 -0
  553. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.decorators.js +1 -0
  554. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.disposable.js +1 -0
  555. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.error.js +1 -0
  556. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.float16.js +1 -0
  557. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.full.js +1 -0
  558. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.intl.js +1 -0
  559. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.iterator.js +1 -0
  560. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.js +1 -0
  561. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.object.js +1 -0
  562. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.promise.js +1 -0
  563. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.regexp.js +1 -0
  564. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.sharedmemory.js +1 -0
  565. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.string.js +1 -0
  566. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.symbol.js +1 -0
  567. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.temporal.js +1 -0
  568. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.typedarrays.js +1 -0
  569. package/node_modules/@typescript-eslint/scope-manager/dist/lib/esnext.weakref.js +1 -0
  570. package/node_modules/@typescript-eslint/scope-manager/dist/lib/index.js +1 -0
  571. package/node_modules/@typescript-eslint/scope-manager/dist/lib/lib.js +1 -0
  572. package/node_modules/@typescript-eslint/scope-manager/dist/lib/scripthost.js +1 -0
  573. package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.asynciterable.js +1 -0
  574. package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.importscripts.js +1 -0
  575. package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.iterable.js +1 -0
  576. package/node_modules/@typescript-eslint/scope-manager/dist/lib/webworker.js +1 -0
  577. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ClassVisitor.js +1 -0
  578. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ExportVisitor.js +1 -0
  579. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/ImportVisitor.js +1 -0
  580. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/PatternVisitor.js +1 -0
  581. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Reference.js +1 -0
  582. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Referencer.js +1 -0
  583. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/TypeVisitor.js +1 -0
  584. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/Visitor.js +1 -0
  585. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/VisitorBase.js +1 -0
  586. package/node_modules/@typescript-eslint/scope-manager/dist/referencer/index.js +1 -0
  587. package/node_modules/@typescript-eslint/scope-manager/dist/scope/BlockScope.js +1 -0
  588. package/node_modules/@typescript-eslint/scope-manager/dist/scope/CatchScope.js +1 -0
  589. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassFieldInitializerScope.js +1 -0
  590. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassScope.js +1 -0
  591. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ClassStaticBlockScope.js +1 -0
  592. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ConditionalTypeScope.js +1 -0
  593. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ForScope.js +1 -0
  594. package/node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionExpressionNameScope.js +1 -0
  595. package/node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionScope.js +1 -0
  596. package/node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionTypeScope.js +1 -0
  597. package/node_modules/@typescript-eslint/scope-manager/dist/scope/GlobalScope.js +1 -0
  598. package/node_modules/@typescript-eslint/scope-manager/dist/scope/MappedTypeScope.js +1 -0
  599. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ModuleScope.js +1 -0
  600. package/node_modules/@typescript-eslint/scope-manager/dist/scope/Scope.js +1 -0
  601. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeBase.js +1 -0
  602. package/node_modules/@typescript-eslint/scope-manager/dist/scope/ScopeType.js +1 -0
  603. package/node_modules/@typescript-eslint/scope-manager/dist/scope/SwitchScope.js +1 -0
  604. package/node_modules/@typescript-eslint/scope-manager/dist/scope/TSEnumScope.js +1 -0
  605. package/node_modules/@typescript-eslint/scope-manager/dist/scope/TSModuleScope.js +1 -0
  606. package/node_modules/@typescript-eslint/scope-manager/dist/scope/TypeScope.js +1 -0
  607. package/node_modules/@typescript-eslint/scope-manager/dist/scope/WithScope.js +1 -0
  608. package/node_modules/@typescript-eslint/scope-manager/dist/scope/index.js +1 -0
  609. package/node_modules/@typescript-eslint/scope-manager/dist/variable/ESLintScopeVariable.js +1 -0
  610. package/node_modules/@typescript-eslint/scope-manager/dist/variable/ImplicitLibVariable.js +1 -0
  611. package/node_modules/@typescript-eslint/scope-manager/dist/variable/Variable.js +1 -0
  612. package/node_modules/@typescript-eslint/scope-manager/dist/variable/VariableBase.js +1 -0
  613. package/node_modules/@typescript-eslint/scope-manager/dist/variable/index.js +1 -0
  614. package/node_modules/@typescript-eslint/scope-manager/package.json +8 -7
  615. package/node_modules/@typescript-eslint/tsconfig-utils/dist/compilerOptions.js +1 -0
  616. package/node_modules/@typescript-eslint/tsconfig-utils/dist/getParsedConfigFile.js +1 -0
  617. package/node_modules/@typescript-eslint/tsconfig-utils/dist/index.js +1 -0
  618. package/node_modules/@typescript-eslint/tsconfig-utils/package.json +3 -2
  619. package/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.d.ts +19 -19
  620. package/node_modules/@typescript-eslint/type-utils/dist/TypeOrValueSpecifier.js +1 -0
  621. package/node_modules/@typescript-eslint/type-utils/dist/builtinSymbolLikes.js +1 -0
  622. package/node_modules/@typescript-eslint/type-utils/dist/containsAllTypesByName.js +1 -0
  623. package/node_modules/@typescript-eslint/type-utils/dist/discriminateAnyType.js +1 -0
  624. package/node_modules/@typescript-eslint/type-utils/dist/getConstrainedTypeAtLocation.js +1 -0
  625. package/node_modules/@typescript-eslint/type-utils/dist/getContextualType.js +1 -0
  626. package/node_modules/@typescript-eslint/type-utils/dist/getDeclaration.js +1 -0
  627. package/node_modules/@typescript-eslint/type-utils/dist/getSourceFileOfNode.js +1 -0
  628. package/node_modules/@typescript-eslint/type-utils/dist/getTypeName.js +1 -0
  629. package/node_modules/@typescript-eslint/type-utils/dist/index.js +1 -0
  630. package/node_modules/@typescript-eslint/type-utils/dist/isSymbolFromDefaultLibrary.js +1 -0
  631. package/node_modules/@typescript-eslint/type-utils/dist/isTypeBrandedLiteralLike.js +1 -0
  632. package/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.d.ts +19 -19
  633. package/node_modules/@typescript-eslint/type-utils/dist/isTypeReadonly.js +1 -0
  634. package/node_modules/@typescript-eslint/type-utils/dist/isUnsafeAssignment.js +1 -0
  635. package/node_modules/@typescript-eslint/type-utils/dist/predicates.js +1 -0
  636. package/node_modules/@typescript-eslint/type-utils/dist/propertyTypes.js +1 -0
  637. package/node_modules/@typescript-eslint/type-utils/dist/requiresQuoting.js +1 -0
  638. package/node_modules/@typescript-eslint/type-utils/dist/typeFlagUtils.js +1 -0
  639. package/node_modules/@typescript-eslint/type-utils/dist/typeOrValueSpecifiers/specifierNameMatches.js +1 -0
  640. package/node_modules/@typescript-eslint/type-utils/dist/typeOrValueSpecifiers/typeDeclaredInFile.js +1 -0
  641. package/node_modules/@typescript-eslint/type-utils/dist/typeOrValueSpecifiers/typeDeclaredInLib.js +1 -0
  642. package/node_modules/@typescript-eslint/type-utils/dist/typeOrValueSpecifiers/typeDeclaredInPackageDeclarationFile.js +1 -0
  643. package/node_modules/@typescript-eslint/type-utils/package.json +9 -8
  644. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +9 -0
  645. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.js +1 -0
  646. package/node_modules/@typescript-eslint/types/dist/index.js +1 -0
  647. package/node_modules/@typescript-eslint/types/dist/lib.js +1 -0
  648. package/node_modules/@typescript-eslint/types/dist/parser-options.js +1 -0
  649. package/node_modules/@typescript-eslint/types/dist/ts-estree.js +1 -0
  650. package/node_modules/@typescript-eslint/types/package.json +3 -5
  651. package/node_modules/@typescript-eslint/typescript-estree/dist/ast-converter.js +1 -0
  652. package/node_modules/@typescript-eslint/typescript-estree/dist/check-modifiers.js +1 -0
  653. package/node_modules/@typescript-eslint/typescript-estree/dist/check-syntax-errors.js +15 -0
  654. package/node_modules/@typescript-eslint/typescript-estree/dist/clear-caches.js +1 -0
  655. package/node_modules/@typescript-eslint/typescript-estree/dist/convert-comments.js +1 -0
  656. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +25 -1
  657. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/WatchCompilerHostOfConfigFile.js +1 -0
  658. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createIsolatedProgram.js +1 -0
  659. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgram.js +1 -0
  660. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createProjectProgramError.js +1 -0
  661. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/createSourceFile.js +1 -0
  662. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/describeFilePath.js +1 -0
  663. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getScriptKind.js +1 -0
  664. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/getWatchProgramsForProjects.js +1 -0
  665. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js +1 -0
  666. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/useProvidedPrograms.js +1 -0
  667. package/node_modules/@typescript-eslint/typescript-estree/dist/create-program/validateDefaultProjectForFilesGlob.js +1 -0
  668. package/node_modules/@typescript-eslint/typescript-estree/dist/createParserServices.js +1 -0
  669. package/node_modules/@typescript-eslint/typescript-estree/dist/getImportClausePhaseModifier.js +1 -0
  670. package/node_modules/@typescript-eslint/typescript-estree/dist/getModifiers.js +1 -0
  671. package/node_modules/@typescript-eslint/typescript-estree/dist/index.js +1 -0
  672. package/node_modules/@typescript-eslint/typescript-estree/dist/jsx/xhtml-entities.js +1 -0
  673. package/node_modules/@typescript-eslint/typescript-estree/dist/node-utils.js +1 -0
  674. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/ExpiringCache.js +1 -0
  675. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/candidateTSConfigRootDirs.js +1 -0
  676. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js +1 -0
  677. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/getProjectConfigFiles.js +1 -0
  678. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/index.js +1 -0
  679. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/inferSingleRun.js +1 -0
  680. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/resolveProjectList.js +1 -0
  681. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +1 -0
  682. package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.js +1 -0
  683. package/node_modules/@typescript-eslint/typescript-estree/dist/parser.js +1 -0
  684. package/node_modules/@typescript-eslint/typescript-estree/dist/semantic-or-syntactic-errors.js +1 -0
  685. package/node_modules/@typescript-eslint/typescript-estree/dist/simple-traverse.js +1 -0
  686. package/node_modules/@typescript-eslint/typescript-estree/dist/source-files.js +1 -0
  687. package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/estree-to-ts-node-types.js +1 -0
  688. package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/index.js +1 -0
  689. package/node_modules/@typescript-eslint/typescript-estree/dist/ts-estree/ts-nodes.js +1 -0
  690. package/node_modules/@typescript-eslint/typescript-estree/dist/use-at-your-own-risk.js +1 -0
  691. package/node_modules/@typescript-eslint/typescript-estree/dist/useProgramFromProjectService.js +1 -0
  692. package/node_modules/@typescript-eslint/typescript-estree/dist/version-check.d.ts +1 -1
  693. package/node_modules/@typescript-eslint/typescript-estree/dist/version-check.js +1 -0
  694. package/node_modules/@typescript-eslint/typescript-estree/dist/version.js +1 -0
  695. package/node_modules/@typescript-eslint/typescript-estree/dist/withoutProjectParserOptions.js +1 -0
  696. package/node_modules/@typescript-eslint/typescript-estree/package.json +8 -7
  697. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/PatternMatcher.js +1 -0
  698. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/ReferenceTracker.js +1 -0
  699. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/astUtilities.js +1 -0
  700. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/index.js +1 -0
  701. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.d.ts +20 -20
  702. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/predicates.js +1 -0
  703. package/node_modules/@typescript-eslint/utils/dist/ast-utils/eslint-utils/scopeAnalysis.js +1 -0
  704. package/node_modules/@typescript-eslint/utils/dist/ast-utils/helpers.js +1 -0
  705. package/node_modules/@typescript-eslint/utils/dist/ast-utils/index.js +1 -0
  706. package/node_modules/@typescript-eslint/utils/dist/ast-utils/misc.js +1 -0
  707. package/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.d.ts +1 -1
  708. package/node_modules/@typescript-eslint/utils/dist/ast-utils/predicates.js +1 -0
  709. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/InferTypesFromRule.js +1 -0
  710. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/RuleCreator.js +1 -0
  711. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/applyDefault.js +1 -0
  712. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/deepMerge.js +1 -0
  713. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/getParserServices.js +1 -0
  714. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/index.js +1 -0
  715. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.d.ts +1 -1
  716. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/nullThrows.js +1 -0
  717. package/node_modules/@typescript-eslint/utils/dist/eslint-utils/parserSeemsToBeTSESLint.js +1 -0
  718. package/node_modules/@typescript-eslint/utils/dist/index.js +1 -0
  719. package/node_modules/@typescript-eslint/utils/dist/json-schema.js +1 -0
  720. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/AST.js +1 -0
  721. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Config.js +1 -0
  722. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/ESLint.js +1 -0
  723. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Linter.js +1 -0
  724. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Parser.js +1 -0
  725. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/ParserOptions.js +1 -0
  726. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Processor.js +1 -0
  727. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +17 -0
  728. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.js +1 -0
  729. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/RuleTester.js +1 -0
  730. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Scope.js +1 -0
  731. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/SourceCode.js +1 -0
  732. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/eslint/ESLintShared.js +1 -0
  733. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/eslint/FlatESLint.js +1 -0
  734. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/eslint/LegacyESLint.js +1 -0
  735. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/index.js +1 -0
  736. package/node_modules/@typescript-eslint/utils/dist/ts-estree.js +1 -0
  737. package/node_modules/@typescript-eslint/utils/dist/ts-utils/NoInfer.js +1 -0
  738. package/node_modules/@typescript-eslint/utils/dist/ts-utils/index.js +1 -0
  739. package/node_modules/@typescript-eslint/utils/dist/ts-utils/isArray.js +1 -0
  740. package/node_modules/@typescript-eslint/utils/package.json +6 -5
  741. package/node_modules/@typescript-eslint/visitor-keys/dist/get-keys.js +1 -0
  742. package/node_modules/@typescript-eslint/visitor-keys/dist/index.js +1 -0
  743. package/node_modules/@typescript-eslint/visitor-keys/dist/visitor-keys.js +1 -0
  744. package/node_modules/@typescript-eslint/visitor-keys/package.json +5 -4
  745. package/node_modules/astro-eslint-parser/lib/index.mjs +13 -37
  746. package/node_modules/astro-eslint-parser/package.json +7 -7
  747. package/node_modules/eslint/README.md +1 -6
  748. package/node_modules/eslint/lib/config/config-loader.js +2 -2
  749. package/node_modules/eslint/lib/config/config.js +2 -2
  750. package/node_modules/eslint/lib/eslint/eslint.js +1 -1
  751. package/node_modules/eslint/lib/languages/js/index.js +1 -1
  752. package/node_modules/eslint/lib/options.js +2 -2
  753. package/node_modules/eslint/lib/rules/accessor-pairs.js +1 -51
  754. package/node_modules/eslint/lib/rules/getter-return.js +4 -45
  755. package/node_modules/eslint/lib/rules/id-denylist.js +4 -0
  756. package/node_modules/eslint/lib/rules/id-match.js +2 -1
  757. package/node_modules/eslint/lib/rules/no-duplicate-imports.js +3 -3
  758. package/node_modules/eslint/lib/rules/no-loss-of-precision.js +7 -2
  759. package/node_modules/eslint/lib/rules/no-setter-return.js +1 -89
  760. package/node_modules/eslint/lib/rules/no-unmodified-loop-condition.js +21 -5
  761. package/node_modules/eslint/lib/rules/no-unused-labels.js +19 -0
  762. package/node_modules/eslint/lib/rules/no-unused-vars.js +115 -8
  763. package/node_modules/eslint/lib/rules/no-useless-escape.js +2 -2
  764. package/node_modules/eslint/lib/rules/no-var.js +87 -1
  765. package/node_modules/eslint/lib/rules/prefer-template.js +7 -1
  766. package/node_modules/eslint/lib/rules/utils/ast-utils.js +86 -0
  767. package/node_modules/eslint/lib/types/index.d.ts +1 -1
  768. package/node_modules/eslint/lib/types/rules.d.ts +10 -1
  769. package/node_modules/eslint/messages/config-file-missing.js +2 -2
  770. package/node_modules/eslint/package.json +9 -3
  771. package/node_modules/eslint-plugin-astro/README.md +22 -1
  772. package/node_modules/eslint-plugin-astro/lib/index.mjs +24 -19
  773. package/node_modules/eslint-plugin-astro/package.json +8 -4
  774. package/node_modules/eslint-plugin-yml/lib/index.mjs +220 -78
  775. package/node_modules/eslint-plugin-yml/package.json +5 -4
  776. package/node_modules/globals/globals.json +75 -0
  777. package/node_modules/globals/index.d.ts +77 -0
  778. package/node_modules/globals/package.json +2 -2
  779. package/node_modules/nanoid/README.md +3 -0
  780. package/node_modules/nanoid/async/index.browser.cjs +1 -0
  781. package/node_modules/nanoid/async/index.browser.js +1 -0
  782. package/node_modules/nanoid/async/index.cjs +4 -1
  783. package/node_modules/nanoid/async/index.js +4 -1
  784. package/node_modules/nanoid/async/index.native.js +4 -1
  785. package/node_modules/nanoid/index.browser.cjs +1 -0
  786. package/node_modules/nanoid/index.browser.js +1 -0
  787. package/node_modules/nanoid/index.cjs +1 -0
  788. package/node_modules/nanoid/index.js +1 -0
  789. package/node_modules/nanoid/package.json +1 -1
  790. package/node_modules/picomatch/lib/parse.js +10 -1
  791. package/node_modules/picomatch/lib/scan.js +30 -18
  792. package/node_modules/picomatch/package.json +1 -1
  793. package/node_modules/postcss/README.md +4 -1
  794. package/node_modules/postcss/lib/list.js +1 -1
  795. package/node_modules/postcss/lib/previous-map.js +14 -2
  796. package/node_modules/postcss/lib/processor.js +1 -1
  797. package/node_modules/postcss/package.json +2 -2
  798. package/node_modules/postcss-selector-parser/CHANGELOG.md +74 -65
  799. package/node_modules/postcss-selector-parser/dist/parser.js +25 -3
  800. package/node_modules/postcss-selector-parser/package.json +6 -3
  801. package/node_modules/typescript-eslint/dist/compatibility-types.js +1 -0
  802. package/node_modules/typescript-eslint/dist/config-helper.js +1 -0
  803. package/node_modules/typescript-eslint/dist/getTSConfigRootDirFromStack.js +1 -0
  804. package/node_modules/typescript-eslint/dist/globs.d.ts +123 -0
  805. package/node_modules/typescript-eslint/dist/globs.js +135 -0
  806. package/node_modules/typescript-eslint/dist/index.d.ts +12 -0
  807. package/node_modules/typescript-eslint/dist/index.js +8 -1
  808. package/node_modules/typescript-eslint/package.json +8 -6
  809. package/node_modules/vscode-languageserver-textdocument/eslint.config.js +13 -0
  810. package/node_modules/vscode-languageserver-textdocument/lib/esm/main.d.ts +20 -0
  811. package/node_modules/vscode-languageserver-textdocument/lib/esm/main.js +26 -0
  812. package/node_modules/vscode-languageserver-textdocument/lib/umd/main.d.ts +20 -0
  813. package/node_modules/vscode-languageserver-textdocument/lib/umd/main.js +26 -0
  814. package/node_modules/vscode-languageserver-textdocument/package.json +2 -2
  815. package/node_modules/vscode-uri/lib/esm/index.mjs +1 -1
  816. package/node_modules/vscode-uri/lib/esm/index.mjs.map +1 -1
  817. package/node_modules/vscode-uri/lib/umd/index.d.ts +5 -0
  818. package/node_modules/vscode-uri/lib/umd/index.js +1 -1
  819. package/node_modules/vscode-uri/lib/umd/index.js.map +1 -1
  820. package/node_modules/vscode-uri/package.json +5 -1
  821. package/package.json +12 -12
@@ -35,6 +35,7 @@ __export(index_exports, {
35
35
  hasValidationWarning: () => hasValidationWarning,
36
36
  isAsyncScript: () => isAsyncScript,
37
37
  isDeferScript: () => isDeferScript,
38
+ isHighPriorityPreload: () => isHighPriorityPreload,
38
39
  isImportStyles: () => isImportStyles,
39
40
  isMeta: () => isMeta,
40
41
  isMetaCSP: () => isMetaCSP,
@@ -98,12 +99,23 @@ function isMeta(element, adapter) {
98
99
  function isTitle(element, adapter) {
99
100
  return adapter.getTagName(element) === "title";
100
101
  }
102
+ function isHighPriorityPreload(element, adapter) {
103
+ if (adapter.getTagName(element) !== "link") {
104
+ return false;
105
+ }
106
+ const rel = adapter.getAttribute(element, "rel")?.toLowerCase();
107
+ if (rel !== "preload" && rel !== "modulepreload") {
108
+ return false;
109
+ }
110
+ const priority = adapter.getAttribute(element, "fetchpriority")?.toLowerCase();
111
+ return priority === "high";
112
+ }
101
113
  function isPreconnect(element, adapter) {
102
114
  if (adapter.getTagName(element) !== "link") {
103
115
  return false;
104
116
  }
105
117
  const rel = adapter.getAttribute(element, "rel");
106
- return rel?.toLowerCase() === "preconnect";
118
+ return rel?.toLowerCase() === "preconnect" || isHighPriorityPreload(element, adapter);
107
119
  }
108
120
  function isAsyncScript(element, adapter) {
109
121
  return adapter.getTagName(element) === "script" && adapter.hasAttribute(element, "src") && adapter.hasAttribute(element, "async");
@@ -136,8 +148,11 @@ function isSyncScript(element, adapter) {
136
148
  return false;
137
149
  }
138
150
  const type = adapter.getAttribute(element, "type");
139
- if (type && type.toLowerCase().includes("json")) {
140
- return false;
151
+ if (type) {
152
+ const normalizedType = type.toLowerCase().trim();
153
+ if (normalizedType.includes("json") || normalizedType === "speculationrules") {
154
+ return false;
155
+ }
141
156
  }
142
157
  return true;
143
158
  }
@@ -190,7 +205,12 @@ function isDeferScript(element, adapter) {
190
205
  return false;
191
206
  }
192
207
  function isPrefetchPrerender(element, adapter) {
193
- if (adapter.getTagName(element) !== "link") {
208
+ const tagName = adapter.getTagName(element);
209
+ if (tagName === "script") {
210
+ const type = adapter.getAttribute(element, "type");
211
+ return type?.toLowerCase().trim() === "speculationrules";
212
+ }
213
+ if (tagName !== "link") {
194
214
  return false;
195
215
  }
196
216
  const rel = adapter.getAttribute(element, "rel");
@@ -251,195 +271,7 @@ function getHeadWeights(head, adapter) {
251
271
  });
252
272
  }
253
273
 
254
- // src/lib/validation.js
255
- var VALID_HEAD_ELEMENTS = /* @__PURE__ */ new Set([
256
- "base",
257
- "link",
258
- "meta",
259
- "noscript",
260
- "script",
261
- "style",
262
- "template",
263
- "title"
264
- ]);
265
- function isValidElement(element, adapter) {
266
- const tagName = adapter.getTagName(element);
267
- if (!tagName || tagName === "") {
268
- return true;
269
- }
270
- return VALID_HEAD_ELEMENTS.has(tagName.toLowerCase());
271
- }
272
- function hasInvalidChildren(element, adapter) {
273
- const children = adapter.getChildren(element);
274
- return children.some((child) => !isValidElement(child, adapter));
275
- }
276
- function isDuplicateTitle(element, adapter) {
277
- if (adapter.getTagName(element) !== "title") {
278
- return false;
279
- }
280
- const parent = adapter.getParent(element);
281
- if (!parent) {
282
- return false;
283
- }
284
- let foundFirst = false;
285
- for (const child of adapter.getChildren(parent)) {
286
- if (adapter.getTagName(child) === "title") {
287
- if (child === element) {
288
- return foundFirst;
289
- }
290
- foundFirst = true;
291
- }
292
- }
293
- return false;
294
- }
295
- function isDuplicateBase(element, adapter) {
296
- if (adapter.getTagName(element) !== "base") {
297
- return false;
298
- }
299
- const siblings = adapter.getSiblings(element);
300
- return siblings.some((sibling) => adapter.getTagName(sibling) === "base");
301
- }
302
- function hasValidationWarning(element, adapter) {
303
- if (!isValidElement(element, adapter)) {
304
- return true;
305
- }
306
- if (hasInvalidChildren(element, adapter)) {
307
- return true;
308
- }
309
- if (isDuplicateTitle(element, adapter)) {
310
- return true;
311
- }
312
- if (isDuplicateBase(element, adapter)) {
313
- return true;
314
- }
315
- if (isMetaCSP(element, adapter)) {
316
- return true;
317
- }
318
- if (isInvalidHttpEquiv(element, adapter)) {
319
- return true;
320
- }
321
- if (isInvalidMetaViewport(element, adapter)) {
322
- return true;
323
- }
324
- if (isInvalidDefaultStyle(element, adapter)) {
325
- return true;
326
- }
327
- if (isInvalidContentType(element, adapter)) {
328
- return true;
329
- }
330
- if (isInvalidOriginTrial(element, adapter)) {
331
- return true;
332
- }
333
- if (isUnnecessaryPreload(element, adapter)) {
334
- return true;
335
- }
336
- if (isInvalidFontPreload(element, adapter)) {
337
- return true;
338
- }
339
- return false;
340
- }
341
- function getValidationWarnings(head, adapter) {
342
- const validationWarnings = [];
343
- const children = adapter.getChildren(head);
344
- const titleElements = children.filter((child) => adapter.getTagName(child) === "title");
345
- const titleElementCount = titleElements.length;
346
- if (titleElementCount != 1) {
347
- validationWarnings.push({
348
- ruleId: titleElementCount === 0 ? "require-title" : "no-duplicate-title",
349
- warning: `Expected exactly 1 <title> element, found ${titleElementCount}`,
350
- elements: titleElements
351
- });
352
- }
353
- const metaViewport = children.filter((child) => {
354
- if (adapter.getTagName(child) !== "meta") return false;
355
- const name = adapter.getAttribute(child, "name");
356
- return name && name.toLowerCase() === "viewport";
357
- });
358
- if (metaViewport.length != 1) {
359
- validationWarnings.push({
360
- ruleId: metaViewport.length === 0 ? "require-meta-viewport" : "valid-meta-viewport",
361
- warning: `Expected exactly 1 <meta name=viewport> element, found ${metaViewport.length}`,
362
- elements: metaViewport
363
- });
364
- }
365
- const baseElements = children.filter((child) => adapter.getTagName(child) === "base");
366
- const baseElementCount = baseElements.length;
367
- if (baseElementCount > 1) {
368
- validationWarnings.push({
369
- ruleId: "no-duplicate-base",
370
- warning: `Expected at most 1 <base> element, found ${baseElementCount}`,
371
- elements: baseElements
372
- });
373
- }
374
- children.forEach((element) => {
375
- if (isValidElement(element, adapter)) {
376
- const elementChildren = adapter.getChildren(element);
377
- elementChildren.forEach((child) => {
378
- if (!isValidElement(child, adapter)) {
379
- validationWarnings.push({
380
- ruleId: "no-invalid-head-elements",
381
- warning: `${adapter.getTagName(child).toUpperCase()} elements are not allowed in the <head>`,
382
- element
383
- });
384
- }
385
- });
386
- return;
387
- }
388
- validationWarnings.push({
389
- ruleId: "no-invalid-head-elements",
390
- warning: `${adapter.getTagName(element)} elements are not allowed in the <head>`,
391
- element
392
- });
393
- });
394
- return validationWarnings;
395
- }
396
- function getCustomValidations(element, adapter, parentElement = null) {
397
- const results = [];
398
- if (isOriginTrial(element, adapter)) {
399
- results.push(validateOriginTrial(element, adapter));
400
- }
401
- if (isMetaCSP(element, adapter)) {
402
- results.push(validateCSP(element, adapter));
403
- }
404
- if (isDefaultStyle(element, adapter)) {
405
- results.push(validateDefaultStyle(element, adapter));
406
- }
407
- if (isMetaViewport(element, adapter)) {
408
- results.push(validateMetaViewport(element, adapter));
409
- }
410
- if (isContentType(element, adapter)) {
411
- results.push(validateContentType(element, adapter));
412
- }
413
- if (isHttpEquiv(element, adapter)) {
414
- results.push(validateHttpEquiv(element, adapter));
415
- }
416
- if (isUnnecessaryPreload(element, adapter, parentElement)) {
417
- results.push(validateUnnecessaryPreload(element, adapter, parentElement));
418
- }
419
- if (isInvalidFontPreload(element, adapter)) {
420
- results.push(validateInvalidFontPreload(element, adapter));
421
- }
422
- if (results.length === 0) {
423
- return {};
424
- }
425
- if (results.length === 1) {
426
- return results[0];
427
- }
428
- const combined = {
429
- warnings: [],
430
- payload: {},
431
- ruleId: results[0].ruleId
432
- };
433
- results.forEach((result) => {
434
- if (result.warnings) {
435
- combined.warnings?.push(...result.warnings);
436
- }
437
- if (result.payload) {
438
- Object.assign(combined.payload, result.payload);
439
- }
440
- });
441
- return combined;
442
- }
274
+ // src/lib/validations/csp.js
443
275
  function validateCSP(element, adapter) {
444
276
  const warnings = [];
445
277
  let payload = null;
@@ -459,7 +291,7 @@ function validateCSP(element, adapter) {
459
291
  const content = adapter.getAttribute(element, "content");
460
292
  if (!content) {
461
293
  warnings.push("Invalid CSP. The content attribute must be set.");
462
- return { warnings, payload };
294
+ return { ruleId: "no-meta-csp", warnings, payload };
463
295
  }
464
296
  const directives = Object.fromEntries(
465
297
  content.split(/\s*;\s*/).map((directive) => {
@@ -488,14 +320,26 @@ function validateCSP(element, adapter) {
488
320
  payload
489
321
  };
490
322
  }
491
- function isInvalidOriginTrial(element, adapter) {
492
- if (!isOriginTrial(element, adapter)) {
493
- return false;
494
- }
495
- const { warnings } = validateOriginTrial(element, adapter);
496
- return (warnings?.length ?? 0) > 0;
323
+
324
+ // src/lib/validations/origin-trial.js
325
+ function isSameOrigin(a, b) {
326
+ return new URL(a).origin === new URL(b).origin;
327
+ }
328
+ function isSubdomain(tokenOrigin, pageUrl) {
329
+ const urlA = new URL(tokenOrigin);
330
+ const urlB = new URL(pageUrl);
331
+ return urlB.host.endsWith(`.${urlA.host}`);
497
332
  }
498
- function validateOriginTrial(element, adapter) {
333
+ function decodeOriginTrialToken(token) {
334
+ if (!token) throw new Error("Missing token");
335
+ const buffer = new Uint8Array([...atob(token)].map((a) => a.charCodeAt(0)));
336
+ const view = new DataView(buffer.buffer);
337
+ const length = view.getUint32(65, false);
338
+ const payload = JSON.parse(new TextDecoder().decode(buffer.slice(69, 69 + length)));
339
+ payload.expiry = new Date(payload.expiry * 1e3);
340
+ return payload;
341
+ }
342
+ function validateOriginTrial(element, adapter, pageOrigin = null) {
499
343
  const metadata = {
500
344
  ruleId: "no-invalid-origin-trial",
501
345
  payload: null,
@@ -511,9 +355,10 @@ function validateOriginTrial(element, adapter) {
511
355
  if (metadata.payload.expiry < /* @__PURE__ */ new Date()) {
512
356
  metadata.warnings?.push("Invalid origin trial token: expired");
513
357
  }
514
- if (typeof document !== "undefined" && document.location && document.location.href) {
515
- if (!isSameOrigin(metadata.payload.origin, document.location.href)) {
516
- const subdomain = isSubdomain(metadata.payload.origin, document.location.href);
358
+ const targetOrigin = pageOrigin || typeof document !== "undefined" && document.location && document.location.href;
359
+ if (targetOrigin) {
360
+ if (!isSameOrigin(metadata.payload.origin, targetOrigin)) {
361
+ const subdomain = isSubdomain(metadata.payload.origin, targetOrigin);
517
362
  if (subdomain && !metadata.payload.isSubdomain) {
518
363
  metadata.warnings?.push("Invalid origin trial token: invalid subdomain");
519
364
  } else if (!subdomain && !metadata.payload.isThirdParty) {
@@ -523,167 +368,53 @@ function validateOriginTrial(element, adapter) {
523
368
  }
524
369
  return metadata;
525
370
  }
526
- function decodeOriginTrialToken(token) {
527
- if (!token) throw new Error("Missing token");
528
- const buffer = new Uint8Array([...atob(token)].map((a) => a.charCodeAt(0)));
529
- const view = new DataView(buffer.buffer);
530
- const length = view.getUint32(65, false);
531
- const payload = JSON.parse(new TextDecoder().decode(buffer.slice(69, 69 + length)));
532
- payload.expiry = new Date(payload.expiry * 1e3);
533
- return payload;
534
- }
535
- function isSameOrigin(a, b) {
536
- return new URL(a).origin === new URL(b).origin;
537
- }
538
- function isSubdomain(a, b) {
539
- const urlA = new URL(a);
540
- const urlB = new URL(b);
541
- return urlB.host.endsWith(`.${urlA.host}`);
542
- }
371
+
372
+ // src/lib/validations/default-style.js
543
373
  function isDefaultStyle(element, adapter) {
544
374
  if (adapter.getTagName(element) !== "meta") return false;
545
375
  const httpEquiv = adapter.getAttribute(element, "http-equiv");
546
376
  return httpEquiv?.toLowerCase() === "default-style";
547
377
  }
548
- function isContentType(element, adapter) {
549
- if (adapter.getTagName(element) !== "meta") return false;
550
- if (adapter.hasAttribute(element, "charset")) return true;
551
- const httpEquiv = adapter.getAttribute(element, "http-equiv");
552
- return httpEquiv?.toLowerCase() === "content-type";
553
- }
554
- function isHttpEquiv(element, adapter) {
555
- if (adapter.getTagName(element) !== "meta") return false;
556
- return adapter.hasAttribute(element, "http-equiv");
557
- }
558
- function isMetaViewport(element, adapter) {
559
- if (adapter.getTagName(element) !== "meta") return false;
560
- const name = adapter.getAttribute(element, "name");
561
- return name?.toLowerCase() === "viewport";
562
- }
563
- function isInvalidDefaultStyle(element, adapter) {
564
- if (!isDefaultStyle(element, adapter)) {
565
- return false;
566
- }
567
- const { warnings } = validateDefaultStyle(element, adapter);
568
- return (warnings?.length ?? 0) > 0;
569
- }
570
- function isInvalidContentType(element, adapter) {
571
- if (!isContentType(element, adapter)) {
572
- return false;
573
- }
574
- const { warnings } = validateContentType(element, adapter);
575
- return (warnings?.length ?? 0) > 0;
576
- }
577
- function isInvalidHttpEquiv(element, adapter) {
578
- if (!isHttpEquiv(element, adapter)) {
579
- return false;
580
- }
581
- const { warnings } = validateHttpEquiv(element, adapter);
582
- return (warnings?.length ?? 0) > 0;
583
- }
584
- function isInvalidMetaViewport(element, adapter) {
585
- if (!isMetaViewport(element, adapter)) {
586
- return false;
587
- }
588
- const { warnings } = validateMetaViewport(element, adapter);
589
- return (warnings?.length ?? 0) > 0;
590
- }
591
- function isUnnecessaryPreload(element, adapter, parentElement = null) {
592
- const tagName = adapter.getTagName(element);
593
- if (tagName !== "link") {
594
- return false;
595
- }
596
- const rel = adapter.getAttribute(element, "rel");
597
- const relLower = rel?.toLowerCase();
598
- if (relLower !== "preload" && relLower !== "modulepreload") {
599
- return false;
600
- }
601
- const href = adapter.getAttribute(element, "href");
602
- if (!href) {
603
- return false;
604
- }
605
- const parent = parentElement || adapter.getParent(element);
606
- if (!parent) {
607
- return false;
608
- }
609
- const found = findElementWithSource(parent, href, element, adapter);
610
- return found != null;
611
- }
612
- function isInvalidFontPreload(element, adapter) {
613
- const tagName = adapter.getTagName(element);
614
- if (tagName !== "link") {
615
- return false;
616
- }
617
- const rel = adapter.getAttribute(element, "rel");
618
- if (rel?.toLowerCase() !== "preload") {
619
- return false;
620
- }
621
- const as = adapter.getAttribute(element, "as");
622
- if (as?.toLowerCase() !== "font") {
623
- return false;
624
- }
625
- return !adapter.hasAttribute(element, "crossorigin");
626
- }
627
- function validateInvalidFontPreload(element, adapter) {
628
- const warnings = ["Font preloads must have the crossorigin attribute set, even for same-origin fonts."];
629
- return {
630
- ruleId: "valid-font-preload",
631
- warnings,
632
- payload: null
633
- };
634
- }
635
- function findElementWithSource(parent, sourceUrl, excludeElement, adapter) {
636
- const children = adapter.getChildren(parent);
637
- for (const child of children) {
638
- if (child === excludeElement) {
639
- continue;
640
- }
641
- const tagName = adapter.getTagName(child);
642
- if (tagName === "link") {
643
- const rel = adapter.getAttribute(child, "rel");
644
- if (rel && /\b(preload|modulepreload)\b/i.test(rel)) {
645
- continue;
646
- }
647
- const childHref = adapter.getAttribute(child, "href");
648
- if (childHref === sourceUrl) {
649
- return child;
650
- }
651
- }
652
- if (tagName === "script") {
653
- const src = adapter.getAttribute(child, "src");
654
- if (src === sourceUrl) {
655
- return child;
656
- }
657
- }
658
- }
659
- return null;
660
- }
661
378
  function validateDefaultStyle(element, adapter) {
662
379
  const warnings = [];
663
380
  let payload = null;
664
381
  const title = adapter.getAttribute(element, "content");
665
- if (element.parentElement && element.parentElement.querySelector) {
666
- const stylesheet = element.parentElement.querySelector(
667
- `link[rel~="alternate" i][rel~="stylesheet" i][title="${title}"]`
668
- );
669
- if (!title) {
670
- warnings.push("This has no effect. The content attribute must be set to a valid stylesheet title.");
671
- } else if (!stylesheet) {
382
+ if (!title) {
383
+ warnings.push("This has no effect. The content attribute must be set to a valid stylesheet title.");
384
+ } else {
385
+ const parent = adapter.getParent(element);
386
+ let stylesheet = null;
387
+ let alternateStylesheets = [];
388
+ if (parent) {
389
+ const children = adapter.getChildren(parent);
390
+ alternateStylesheets = children.filter((child) => {
391
+ if (adapter.getTagName(child) !== "link") return false;
392
+ const rel = adapter.getAttribute(child, "rel") || "";
393
+ const rels = rel.toLowerCase().split(/\s+/);
394
+ return rels.includes("alternate") && rels.includes("stylesheet");
395
+ });
396
+ stylesheet = alternateStylesheets.find((child) => adapter.getAttribute(child, "title") === title);
397
+ }
398
+ if (!stylesheet) {
672
399
  payload = {
673
- alternateStylesheets: Array.from(
674
- element.parentElement.querySelectorAll('link[rel~="alternate" i][rel~="stylesheet" i]')
675
- )
400
+ alternateStylesheets
676
401
  };
677
402
  warnings.push(`This has no effect. No alternate stylesheet found having title="${title}".`);
678
403
  }
679
- } else if (!title) {
680
- warnings.push("This has no effect. The content attribute must be set to a valid stylesheet title.");
681
404
  }
682
405
  warnings.push(
683
406
  "Even when used correctly, the default-style method of setting a preferred stylesheet results in a flash of unstyled content. Use modern CSS features like @media rules instead."
684
407
  );
685
408
  return { ruleId: "no-default-style", warnings, payload };
686
409
  }
410
+
411
+ // src/lib/validations/content-type.js
412
+ function isContentType(element, adapter) {
413
+ if (adapter.getTagName(element) !== "meta") return false;
414
+ if (adapter.hasAttribute(element, "charset")) return true;
415
+ const httpEquiv = adapter.getAttribute(element, "http-equiv");
416
+ return httpEquiv?.toLowerCase() === "content-type";
417
+ }
687
418
  function validateContentType(element, adapter) {
688
419
  const warnings = [];
689
420
  let payload = null;
@@ -718,9 +449,9 @@ function validateContentType(element, adapter) {
718
449
  }
719
450
  }
720
451
  }
721
- if (element.ownerDocument?.documentElement?.outerHTML && element.outerHTML) {
722
- const charPos = element.ownerDocument.documentElement.outerHTML.indexOf(element.outerHTML) + element.outerHTML.length;
723
- if (charPos > 1024) {
452
+ if (typeof adapter.getCharacterPosition === "function") {
453
+ const charPos = adapter.getCharacterPosition(element);
454
+ if (charPos !== null && charPos > 1024) {
724
455
  payload = payload ?? {};
725
456
  payload.characterPosition = charPos;
726
457
  warnings.push(
@@ -735,7 +466,7 @@ function validateContentType(element, adapter) {
735
466
  const charsetPattern = /text\/html;\s*charset=(.*)/i;
736
467
  charset = adapter.getAttribute(element, "content")?.match(charsetPattern)?.[1]?.trim();
737
468
  }
738
- if (charset?.toLowerCase() != "utf-8") {
469
+ if (charset?.toLowerCase() !== "utf-8") {
739
470
  payload = payload ?? {};
740
471
  payload.charset = charset;
741
472
  warnings.push(`Documents are required to use UTF-8 encoding. Found "${charset}".`);
@@ -745,6 +476,12 @@ function validateContentType(element, adapter) {
745
476
  }
746
477
  return { ruleId: "valid-charset", warnings, payload };
747
478
  }
479
+
480
+ // src/lib/validations/http-equiv.js
481
+ function isHttpEquiv(element, adapter) {
482
+ if (adapter.getTagName(element) !== "meta") return false;
483
+ return adapter.hasAttribute(element, "http-equiv");
484
+ }
748
485
  function validateHttpEquiv(element, adapter) {
749
486
  const warnings = [];
750
487
  const type = adapter.getAttribute(element, "http-equiv")?.toLowerCase() || "";
@@ -770,9 +507,9 @@ function validateHttpEquiv(element, adapter) {
770
507
  }
771
508
  break;
772
509
  case "x-dns-prefetch-control":
773
- if (content == "on") {
510
+ if (content === "on") {
774
511
  warnings.push(`DNS prefetching is enabled by default. Setting it to "${content}" has no effect.`);
775
- } else if (content != "off") {
512
+ } else if (content !== "off") {
776
513
  warnings.push(
777
514
  `This is a non-standard way of disabling DNS prefetching, which is a performance optimization. Found content="${content}". Use content="off" if you have a legitimate security concern, otherwise remove it.`
778
515
  );
@@ -848,6 +585,13 @@ function validateHttpEquiv(element, adapter) {
848
585
  warnings
849
586
  };
850
587
  }
588
+
589
+ // src/lib/validations/viewport.js
590
+ function isMetaViewport(element, adapter) {
591
+ if (adapter.getTagName(element) !== "meta") return false;
592
+ const name = adapter.getAttribute(element, "name");
593
+ return name?.toLowerCase() === "viewport";
594
+ }
851
595
  function validateMetaViewport(element, adapter) {
852
596
  const warnings = [];
853
597
  let payload = null;
@@ -871,14 +615,14 @@ function validateMetaViewport(element, adapter) {
871
615
  warnings.push(
872
616
  "Another meta viewport element has already been declared. Having multiple viewport settings can lead to unexpected behavior."
873
617
  );
874
- return { warnings, payload };
618
+ return { ruleId: "valid-meta-viewport", warnings, payload };
875
619
  }
876
620
  }
877
621
  }
878
622
  const content = adapter.getAttribute(element, "content")?.toLowerCase();
879
623
  if (!content) {
880
624
  warnings.push("Invalid viewport. The content attribute must be set.");
881
- return { warnings, payload };
625
+ return { ruleId: "valid-meta-viewport", warnings, payload };
882
626
  }
883
627
  const directives = Object.fromEntries(
884
628
  content.split(",").map((directive) => {
@@ -890,7 +634,7 @@ function validateMetaViewport(element, adapter) {
890
634
  const width = directives["width"];
891
635
  if (Number(width) < 1 || Number(width) > 1e4) {
892
636
  warnings.push(`Invalid width "${width}". Numeric values must be between 1 and 10000.`);
893
- } else if (width != "device-width") {
637
+ } else if (width !== "device-width") {
894
638
  warnings.push(`Invalid width "${width}".`);
895
639
  }
896
640
  }
@@ -898,7 +642,7 @@ function validateMetaViewport(element, adapter) {
898
642
  const height = directives["height"];
899
643
  if (Number(height) < 1 || Number(height) > 1e4) {
900
644
  warnings.push(`Invalid height "${height}". Numeric values must be between 1 and 10000.`);
901
- } else if (height != "device-height") {
645
+ } else if (height !== "device-height") {
902
646
  warnings.push(`Invalid height "${height}".`);
903
647
  }
904
648
  }
@@ -936,7 +680,7 @@ function validateMetaViewport(element, adapter) {
936
680
  }
937
681
  if ("user-scalable" in directives) {
938
682
  const userScalable = directives["user-scalable"];
939
- if (userScalable == "no" || userScalable == "0") {
683
+ if (userScalable === "no" || userScalable === "0") {
940
684
  warnings.push(
941
685
  `Disabling zooming can cause accessibility issues to users with visual impairments. Found "user-scalable=${userScalable}".`
942
686
  );
@@ -977,10 +721,10 @@ function validateMetaViewport(element, adapter) {
977
721
  if (validDirectives.has(directive)) {
978
722
  return false;
979
723
  }
980
- if (directive == "shrink-to-fit") {
724
+ if (directive === "shrink-to-fit") {
981
725
  return false;
982
726
  }
983
- if (directive == "viewport-fit") {
727
+ if (directive === "viewport-fit") {
984
728
  return false;
985
729
  }
986
730
  return true;
@@ -989,6 +733,70 @@ function validateMetaViewport(element, adapter) {
989
733
  });
990
734
  return { ruleId: "valid-meta-viewport", warnings, payload };
991
735
  }
736
+
737
+ // src/lib/validations/preload.js
738
+ function findElementWithSource(parent, sourceUrl, excludeElement, adapter) {
739
+ const children = adapter.getChildren(parent);
740
+ for (const child of children) {
741
+ if (child === excludeElement) {
742
+ continue;
743
+ }
744
+ const tagName = adapter.getTagName(child);
745
+ if (tagName === "link") {
746
+ const rel = adapter.getAttribute(child, "rel");
747
+ if (rel && /\b(preload|modulepreload)\b/i.test(rel)) {
748
+ continue;
749
+ }
750
+ const childHref = adapter.getAttribute(child, "href");
751
+ if (childHref === sourceUrl) {
752
+ return child;
753
+ }
754
+ }
755
+ if (tagName === "script") {
756
+ const src = adapter.getAttribute(child, "src");
757
+ if (src === sourceUrl) {
758
+ return child;
759
+ }
760
+ }
761
+ }
762
+ return null;
763
+ }
764
+ function isUnnecessaryPreload(element, adapter, parentElement = null) {
765
+ const tagName = adapter.getTagName(element);
766
+ if (tagName !== "link") {
767
+ return false;
768
+ }
769
+ const rel = adapter.getAttribute(element, "rel");
770
+ const relLower = rel?.toLowerCase();
771
+ if (relLower !== "preload" && relLower !== "modulepreload") {
772
+ return false;
773
+ }
774
+ const href = adapter.getAttribute(element, "href");
775
+ if (!href) {
776
+ return false;
777
+ }
778
+ const parent = parentElement || adapter.getParent(element);
779
+ if (!parent) {
780
+ return false;
781
+ }
782
+ const found = findElementWithSource(parent, href, element, adapter);
783
+ return found !== null && found !== void 0;
784
+ }
785
+ function isInvalidFontPreload(element, adapter) {
786
+ const tagName = adapter.getTagName(element);
787
+ if (tagName !== "link") {
788
+ return false;
789
+ }
790
+ const rel = adapter.getAttribute(element, "rel");
791
+ if (rel?.toLowerCase() !== "preload") {
792
+ return false;
793
+ }
794
+ const as = adapter.getAttribute(element, "as");
795
+ if (as?.toLowerCase() !== "font") {
796
+ return false;
797
+ }
798
+ return !adapter.hasAttribute(element, "crossorigin");
799
+ }
992
800
  function validateUnnecessaryPreload(element, adapter, parentElement = null) {
993
801
  const href = adapter.getAttribute(element, "href");
994
802
  if (!href) {
@@ -1009,16 +817,193 @@ function validateUnnecessaryPreload(element, adapter, parentElement = null) {
1009
817
  ]
1010
818
  };
1011
819
  }
820
+ function validateInvalidFontPreload(element, adapter) {
821
+ const warnings = ["Font preloads must have the crossorigin attribute set, even for same-origin fonts."];
822
+ return {
823
+ ruleId: "valid-font-preload",
824
+ warnings,
825
+ payload: null
826
+ };
827
+ }
828
+
829
+ // src/lib/validation.js
830
+ var VALID_HEAD_ELEMENTS = /* @__PURE__ */ new Set([
831
+ "base",
832
+ "link",
833
+ "meta",
834
+ "noscript",
835
+ "script",
836
+ "style",
837
+ "template",
838
+ "title"
839
+ ]);
840
+ function isValidElement(element, adapter) {
841
+ const tagName = adapter.getTagName(element);
842
+ if (!tagName || tagName === "") {
843
+ return true;
844
+ }
845
+ return VALID_HEAD_ELEMENTS.has(tagName.toLowerCase());
846
+ }
847
+ function hasInvalidChildren(element, adapter) {
848
+ const children = adapter.getChildren(element);
849
+ return children.some((child) => !isValidElement(child, adapter));
850
+ }
851
+ function isDuplicateTitle(element, adapter) {
852
+ if (adapter.getTagName(element) !== "title") {
853
+ return false;
854
+ }
855
+ const parent = adapter.getParent(element);
856
+ if (!parent) {
857
+ return false;
858
+ }
859
+ let foundFirst = false;
860
+ for (const child of adapter.getChildren(parent)) {
861
+ if (adapter.getTagName(child) === "title") {
862
+ if (child === element) {
863
+ return foundFirst;
864
+ }
865
+ foundFirst = true;
866
+ }
867
+ }
868
+ return false;
869
+ }
870
+ function isDuplicateBase(element, adapter) {
871
+ if (adapter.getTagName(element) !== "base") {
872
+ return false;
873
+ }
874
+ const siblings = adapter.getSiblings(element);
875
+ return siblings.some((sibling) => adapter.getTagName(sibling) === "base");
876
+ }
877
+ function hasValidationWarning(element, adapter, pageOrigin = null) {
878
+ if (!isValidElement(element, adapter)) {
879
+ return true;
880
+ }
881
+ if (hasInvalidChildren(element, adapter)) {
882
+ return true;
883
+ }
884
+ if (isDuplicateTitle(element, adapter)) {
885
+ return true;
886
+ }
887
+ if (isDuplicateBase(element, adapter)) {
888
+ return true;
889
+ }
890
+ if (isOriginTrial(element, adapter) || isMetaCSP(element, adapter) || isDefaultStyle(element, adapter) || isMetaViewport(element, adapter) || isContentType(element, adapter) || isHttpEquiv(element, adapter) || isUnnecessaryPreload(element, adapter) || isInvalidFontPreload(element, adapter)) {
891
+ const validations = getCustomValidations(element, adapter, null, pageOrigin);
892
+ if (validations.warnings && validations.warnings.length > 0) {
893
+ return true;
894
+ }
895
+ }
896
+ return false;
897
+ }
898
+ function getValidationWarnings(head, adapter) {
899
+ const validationWarnings = [];
900
+ const children = adapter.getChildren(head);
901
+ const titleElements = children.filter((child) => adapter.getTagName(child) === "title");
902
+ const titleElementCount = titleElements.length;
903
+ if (titleElementCount !== 1) {
904
+ validationWarnings.push({
905
+ ruleId: titleElementCount === 0 ? "require-title" : "no-duplicate-title",
906
+ warning: `Expected exactly 1 <title> element, found ${titleElementCount}`,
907
+ elements: titleElements
908
+ });
909
+ }
910
+ const metaViewport = children.filter((child) => {
911
+ if (adapter.getTagName(child) !== "meta") return false;
912
+ const name = adapter.getAttribute(child, "name");
913
+ return name && name.toLowerCase() === "viewport";
914
+ });
915
+ if (metaViewport.length !== 1) {
916
+ validationWarnings.push({
917
+ ruleId: metaViewport.length === 0 ? "require-meta-viewport" : "valid-meta-viewport",
918
+ warning: `Expected exactly 1 <meta name=viewport> element, found ${metaViewport.length}`,
919
+ elements: metaViewport
920
+ });
921
+ }
922
+ const baseElements = children.filter((child) => adapter.getTagName(child) === "base");
923
+ const baseElementCount = baseElements.length;
924
+ if (baseElementCount > 1) {
925
+ validationWarnings.push({
926
+ ruleId: "no-duplicate-base",
927
+ warning: `Expected at most 1 <base> element, found ${baseElementCount}`,
928
+ elements: baseElements
929
+ });
930
+ }
931
+ children.forEach((element) => {
932
+ if (isValidElement(element, adapter)) {
933
+ const elementChildren = adapter.getChildren(element);
934
+ elementChildren.forEach((child) => {
935
+ if (!isValidElement(child, adapter)) {
936
+ validationWarnings.push({
937
+ ruleId: "no-invalid-head-elements",
938
+ warning: `${adapter.getTagName(child).toUpperCase()} elements are not allowed in the <head>`,
939
+ element
940
+ });
941
+ }
942
+ });
943
+ return;
944
+ }
945
+ validationWarnings.push({
946
+ ruleId: "no-invalid-head-elements",
947
+ warning: `${adapter.getTagName(element)} elements are not allowed in the <head>`,
948
+ element
949
+ });
950
+ });
951
+ return validationWarnings;
952
+ }
953
+ function getCustomValidations(element, adapter, parentElement = null, pageOrigin = null) {
954
+ const results = [];
955
+ if (isOriginTrial(element, adapter)) {
956
+ results.push(validateOriginTrial(element, adapter, pageOrigin));
957
+ }
958
+ if (isMetaCSP(element, adapter)) {
959
+ results.push(validateCSP(element, adapter));
960
+ }
961
+ if (isDefaultStyle(element, adapter)) {
962
+ results.push(validateDefaultStyle(element, adapter));
963
+ }
964
+ if (isMetaViewport(element, adapter)) {
965
+ results.push(validateMetaViewport(element, adapter));
966
+ }
967
+ if (isContentType(element, adapter)) {
968
+ results.push(validateContentType(element, adapter));
969
+ }
970
+ if (isHttpEquiv(element, adapter)) {
971
+ results.push(validateHttpEquiv(element, adapter));
972
+ }
973
+ if (isUnnecessaryPreload(element, adapter, parentElement)) {
974
+ results.push(validateUnnecessaryPreload(element, adapter, parentElement));
975
+ }
976
+ if (isInvalidFontPreload(element, adapter)) {
977
+ results.push(validateInvalidFontPreload(element, adapter));
978
+ }
979
+ if (results.length === 0) {
980
+ return {};
981
+ }
982
+ if (results.length === 1) {
983
+ return results[0];
984
+ }
985
+ const combined = {
986
+ warnings: [],
987
+ payload: {},
988
+ ruleId: results[0].ruleId
989
+ };
990
+ results.forEach((result) => {
991
+ if (result.warnings) {
992
+ combined.warnings?.push(...result.warnings);
993
+ }
994
+ if (result.payload) {
995
+ Object.assign(combined.payload, result.payload);
996
+ }
997
+ });
998
+ return combined;
999
+ }
1012
1000
 
1013
1001
  // src/analyzer.js
1014
1002
  function analyzeHead(headNode, adapter, options = {}) {
1015
- const {
1016
- includeValidation = true,
1017
- includeCustomValidations = true
1018
- } = options;
1003
+ const { includeValidation = true, includeCustomValidations = true, pageOrigin = null } = options;
1019
1004
  const weights = getHeadWeights(headNode, adapter);
1020
1005
  const validationWarnings = includeValidation ? getValidationWarnings(headNode, adapter) : [];
1021
- const customValidations = includeCustomValidations ? getElementValidations(headNode, adapter) : [];
1006
+ const customValidations = includeCustomValidations ? getElementValidations(headNode, adapter, pageOrigin) : [];
1022
1007
  return {
1023
1008
  weights,
1024
1009
  validationWarnings,
@@ -1026,11 +1011,11 @@ function analyzeHead(headNode, adapter, options = {}) {
1026
1011
  headElement: headNode
1027
1012
  };
1028
1013
  }
1029
- function getElementValidations(headNode, adapter) {
1014
+ function getElementValidations(headNode, adapter, pageOrigin = null) {
1030
1015
  const customValidations = [];
1031
1016
  const children = adapter.getChildren(headNode);
1032
1017
  for (const element of children) {
1033
- const validation = getCustomValidations(element, adapter, headNode);
1018
+ const validation = getCustomValidations(element, adapter, headNode, pageOrigin);
1034
1019
  if (validation && validation.warnings && validation.warnings.length > 0) {
1035
1020
  customValidations.push({
1036
1021
  ruleId: validation.ruleId,
@@ -1177,6 +1162,14 @@ var AdapterInterface = class {
1177
1162
  getLocation(node) {
1178
1163
  return null;
1179
1164
  }
1165
+ /**
1166
+ * Get character position for a node (optional, for validation)
1167
+ * @param {any} node - Element node
1168
+ * @returns {number | null}
1169
+ */
1170
+ getCharacterPosition(node) {
1171
+ return null;
1172
+ }
1180
1173
  /**
1181
1174
  * Stringify element for logging/debugging
1182
1175
  * @param {any} node - Element node
@@ -1330,10 +1323,10 @@ var BrowserAdapter = class extends AdapterInterface {
1330
1323
  }
1331
1324
  /**
1332
1325
  * Get source location for a node (optional, for linting)
1333
- *
1326
+ *
1334
1327
  * Browser DOM elements don't have source location information,
1335
1328
  * so this always returns null.
1336
- *
1329
+ *
1337
1330
  * @override
1338
1331
  * @param {any} node - Element node
1339
1332
  * @returns {null}
@@ -1341,6 +1334,22 @@ var BrowserAdapter = class extends AdapterInterface {
1341
1334
  getLocation(node) {
1342
1335
  return null;
1343
1336
  }
1337
+ /**
1338
+ * Get character position for a node (optional, for validation)
1339
+ * @override
1340
+ * @param {any} node - Element node
1341
+ * @returns {number | null}
1342
+ */
1343
+ getCharacterPosition(node) {
1344
+ if (!node || !node.ownerDocument || !node.ownerDocument.documentElement) {
1345
+ return null;
1346
+ }
1347
+ const outerHTML = node.ownerDocument.documentElement.outerHTML;
1348
+ if (outerHTML && node.outerHTML) {
1349
+ return outerHTML.indexOf(node.outerHTML) + node.outerHTML.length;
1350
+ }
1351
+ return null;
1352
+ }
1344
1353
  /**
1345
1354
  * Stringify element for logging/debugging
1346
1355
  * @override
@@ -1381,6 +1390,7 @@ var BrowserAdapter = class extends AdapterInterface {
1381
1390
  hasValidationWarning,
1382
1391
  isAsyncScript,
1383
1392
  isDeferScript,
1393
+ isHighPriorityPreload,
1384
1394
  isImportStyles,
1385
1395
  isMeta,
1386
1396
  isMetaCSP,