@askviraj/linter 1.1.2 → 1.1.3

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 (650) hide show
  1. package/node_modules/{synckit → @astrojs/compiler-binding}/LICENSE +1 -1
  2. package/node_modules/@astrojs/compiler-binding/browser.js +1 -0
  3. package/node_modules/@astrojs/compiler-binding/index.d.ts +337 -0
  4. package/node_modules/@astrojs/compiler-binding/index.js +599 -0
  5. package/node_modules/@astrojs/compiler-binding/package.json +83 -0
  6. package/node_modules/@astrojs/compiler-binding/webcontainer-fallback.cjs +23 -0
  7. package/node_modules/@astrojs/compiler-binding-linux-x64-gnu/README.md +3 -0
  8. package/node_modules/@astrojs/compiler-binding-linux-x64-gnu/astro.linux-x64-gnu.node +0 -0
  9. package/node_modules/@astrojs/compiler-binding-linux-x64-gnu/package.json +40 -0
  10. package/node_modules/{parse5 → @astrojs/compiler-rs}/LICENSE +7 -5
  11. package/node_modules/@astrojs/compiler-rs/README.md +62 -0
  12. package/node_modules/@astrojs/compiler-rs/async.d.ts +1 -0
  13. package/node_modules/@astrojs/compiler-rs/dist/async.d.mts +9 -0
  14. package/node_modules/@astrojs/compiler-rs/dist/async.mjs +1 -0
  15. package/node_modules/@astrojs/compiler-rs/dist/index.d.mts +9 -0
  16. package/node_modules/@astrojs/compiler-rs/dist/index.mjs +1 -0
  17. package/node_modules/@astrojs/compiler-rs/dist/shared.d.mts +45 -0
  18. package/node_modules/@astrojs/compiler-rs/dist/shared.mjs +1 -0
  19. package/node_modules/@astrojs/compiler-rs/dist/types.d.mts +94 -0
  20. package/node_modules/@astrojs/compiler-rs/dist/types.mjs +1 -0
  21. package/node_modules/@astrojs/compiler-rs/dist/utils.d.mts +4 -0
  22. package/node_modules/@astrojs/compiler-rs/dist/utils.mjs +1 -0
  23. package/node_modules/@astrojs/compiler-rs/package.json +55 -0
  24. package/node_modules/@astrojs/compiler-rs/types.d.ts +1 -0
  25. package/node_modules/@eslint/config-helpers/README.md +2 -2
  26. package/node_modules/@eslint/config-helpers/dist/cjs/index.cjs +27 -26
  27. package/node_modules/@eslint/config-helpers/dist/cjs/index.d.cts +13 -12
  28. package/node_modules/@eslint/config-helpers/dist/cjs/types.cts +4 -2
  29. package/node_modules/@eslint/config-helpers/dist/esm/index.d.ts +13 -12
  30. package/node_modules/@eslint/config-helpers/dist/esm/index.js +27 -26
  31. package/node_modules/@eslint/config-helpers/dist/esm/types.d.ts +2 -0
  32. package/node_modules/@eslint/config-helpers/dist/esm/types.ts +4 -2
  33. package/node_modules/@eslint/config-helpers/package.json +1 -1
  34. package/node_modules/@eslint/css/README.md +2 -2
  35. package/node_modules/@eslint/css/dist/build/rules.d.ts +75 -21
  36. package/node_modules/@eslint/css/dist/build/rules.js +15 -15
  37. package/node_modules/@eslint/css/dist/data/baseline-data.js +256 -32
  38. package/node_modules/@eslint/css/dist/index.js +1 -1
  39. package/node_modules/@eslint/css/dist/rules/font-family-fallbacks.d.ts +15 -15
  40. package/node_modules/@eslint/css/dist/rules/font-family-fallbacks.js +2 -5
  41. package/node_modules/@eslint/css/dist/rules/no-duplicate-imports.d.ts +18 -18
  42. package/node_modules/@eslint/css/dist/rules/no-duplicate-imports.js +9 -12
  43. package/node_modules/@eslint/css/dist/rules/no-duplicate-keyframe-selectors.d.ts +14 -14
  44. package/node_modules/@eslint/css/dist/rules/no-duplicate-keyframe-selectors.js +2 -3
  45. package/node_modules/@eslint/css/dist/rules/no-empty-blocks.d.ts +14 -14
  46. package/node_modules/@eslint/css/dist/rules/no-empty-blocks.js +2 -3
  47. package/node_modules/@eslint/css/dist/rules/no-important.d.ts +16 -16
  48. package/node_modules/@eslint/css/dist/rules/no-important.js +2 -3
  49. package/node_modules/@eslint/css/dist/rules/no-invalid-at-rule-placement.d.ts +16 -16
  50. package/node_modules/@eslint/css/dist/rules/no-invalid-at-rule-placement.js +2 -3
  51. package/node_modules/@eslint/css/dist/rules/no-invalid-at-rules.d.ts +21 -21
  52. package/node_modules/@eslint/css/dist/rules/no-invalid-at-rules.js +2 -3
  53. package/node_modules/@eslint/css/dist/rules/no-invalid-named-grid-areas.d.ts +16 -16
  54. package/node_modules/@eslint/css/dist/rules/no-invalid-named-grid-areas.js +2 -3
  55. package/node_modules/@eslint/css/dist/rules/no-invalid-properties.d.ts +18 -18
  56. package/node_modules/@eslint/css/dist/rules/no-invalid-properties.js +2 -3
  57. package/node_modules/@eslint/css/dist/rules/no-unmatchable-selectors.d.ts +14 -14
  58. package/node_modules/@eslint/css/dist/rules/no-unmatchable-selectors.js +2 -3
  59. package/node_modules/@eslint/css/dist/rules/prefer-logical-properties.d.ts +22 -19
  60. package/node_modules/@eslint/css/dist/rules/prefer-logical-properties.js +66 -23
  61. package/node_modules/@eslint/css/dist/rules/relative-font-units.d.ts +16 -16
  62. package/node_modules/@eslint/css/dist/rules/relative-font-units.js +13 -7
  63. package/node_modules/@eslint/css/dist/rules/selector-complexity.d.ts +17 -17
  64. package/node_modules/@eslint/css/dist/rules/selector-complexity.js +2 -3
  65. package/node_modules/@eslint/css/dist/rules/use-baseline.d.ts +22 -22
  66. package/node_modules/@eslint/css/dist/rules/use-baseline.js +2 -3
  67. package/node_modules/@eslint/css/dist/rules/use-layers.d.ts +18 -18
  68. package/node_modules/@eslint/css/dist/rules/use-layers.js +3 -4
  69. package/node_modules/@eslint/css/package.json +7 -12
  70. package/node_modules/@eslint/css-tree/README.md +2 -2
  71. package/node_modules/@eslint/css-tree/dist/csstree.esm.js +1 -1
  72. package/node_modules/@eslint/css-tree/dist/csstree.js +1 -1
  73. package/node_modules/@eslint/css-tree/dist/data.cjs +4 -1
  74. package/node_modules/@eslint/css-tree/dist/data.js +4 -1
  75. package/node_modules/@eslint/css-tree/dist/version.cjs +1 -1
  76. package/node_modules/@eslint/css-tree/dist/version.js +1 -1
  77. package/node_modules/@eslint/css-tree/package.json +3 -3
  78. package/node_modules/@eslint/json/README.md +2 -2
  79. package/node_modules/@eslint/json/dist/index.js +1 -1
  80. package/node_modules/@eslint/json/package.json +4 -9
  81. package/node_modules/@eslint/markdown/README.md +3 -3
  82. package/node_modules/@eslint/markdown/dist/build/rules.d.ts +105 -27
  83. package/node_modules/@eslint/markdown/dist/build/rules.js +21 -21
  84. package/node_modules/@eslint/markdown/dist/index.d.ts +2 -2
  85. package/node_modules/@eslint/markdown/dist/index.js +4 -4
  86. package/node_modules/@eslint/markdown/dist/processor.d.ts +4 -9
  87. package/node_modules/@eslint/markdown/dist/processor.js +12 -15
  88. package/node_modules/@eslint/markdown/dist/rules/fenced-code-language.d.ts +17 -17
  89. package/node_modules/@eslint/markdown/dist/rules/fenced-code-language.js +2 -3
  90. package/node_modules/@eslint/markdown/dist/rules/fenced-code-meta.d.ts +17 -17
  91. package/node_modules/@eslint/markdown/dist/rules/fenced-code-meta.js +2 -3
  92. package/node_modules/@eslint/markdown/dist/rules/heading-increment.d.ts +16 -16
  93. package/node_modules/@eslint/markdown/dist/rules/heading-increment.js +2 -3
  94. package/node_modules/@eslint/markdown/dist/rules/no-bare-urls.d.ts +14 -14
  95. package/node_modules/@eslint/markdown/dist/rules/no-bare-urls.js +2 -3
  96. package/node_modules/@eslint/markdown/dist/rules/no-duplicate-definitions.d.ts +17 -17
  97. package/node_modules/@eslint/markdown/dist/rules/no-duplicate-definitions.js +2 -3
  98. package/node_modules/@eslint/markdown/dist/rules/no-duplicate-headings.d.ts +15 -15
  99. package/node_modules/@eslint/markdown/dist/rules/no-duplicate-headings.js +2 -3
  100. package/node_modules/@eslint/markdown/dist/rules/no-empty-definitions.d.ts +17 -17
  101. package/node_modules/@eslint/markdown/dist/rules/no-empty-definitions.js +2 -3
  102. package/node_modules/@eslint/markdown/dist/rules/no-empty-images.d.ts +14 -14
  103. package/node_modules/@eslint/markdown/dist/rules/no-empty-images.js +2 -3
  104. package/node_modules/@eslint/markdown/dist/rules/no-empty-links.d.ts +14 -14
  105. package/node_modules/@eslint/markdown/dist/rules/no-empty-links.js +2 -3
  106. package/node_modules/@eslint/markdown/dist/rules/no-html.d.ts +15 -15
  107. package/node_modules/@eslint/markdown/dist/rules/no-html.js +2 -3
  108. package/node_modules/@eslint/markdown/dist/rules/no-invalid-label-refs.d.ts +14 -14
  109. package/node_modules/@eslint/markdown/dist/rules/no-invalid-label-refs.js +2 -3
  110. package/node_modules/@eslint/markdown/dist/rules/no-missing-atx-heading-space.d.ts +17 -17
  111. package/node_modules/@eslint/markdown/dist/rules/no-missing-atx-heading-space.js +2 -3
  112. package/node_modules/@eslint/markdown/dist/rules/no-missing-label-refs.d.ts +16 -16
  113. package/node_modules/@eslint/markdown/dist/rules/no-missing-label-refs.js +2 -3
  114. package/node_modules/@eslint/markdown/dist/rules/no-missing-link-fragments.d.ts +16 -16
  115. package/node_modules/@eslint/markdown/dist/rules/no-missing-link-fragments.js +2 -3
  116. package/node_modules/@eslint/markdown/dist/rules/no-multiple-h1.d.ts +16 -16
  117. package/node_modules/@eslint/markdown/dist/rules/no-multiple-h1.js +2 -3
  118. package/node_modules/@eslint/markdown/dist/rules/no-reference-like-urls.d.ts +15 -15
  119. package/node_modules/@eslint/markdown/dist/rules/no-reference-like-urls.js +2 -3
  120. package/node_modules/@eslint/markdown/dist/rules/no-reversed-media-syntax.d.ts +15 -15
  121. package/node_modules/@eslint/markdown/dist/rules/no-reversed-media-syntax.js +2 -3
  122. package/node_modules/@eslint/markdown/dist/rules/no-space-in-emphasis.d.ts +17 -17
  123. package/node_modules/@eslint/markdown/dist/rules/no-space-in-emphasis.js +2 -3
  124. package/node_modules/@eslint/markdown/dist/rules/no-unused-definitions.d.ts +17 -17
  125. package/node_modules/@eslint/markdown/dist/rules/no-unused-definitions.js +2 -3
  126. package/node_modules/@eslint/markdown/dist/rules/require-alt-text.d.ts +14 -14
  127. package/node_modules/@eslint/markdown/dist/rules/require-alt-text.js +2 -3
  128. package/node_modules/@eslint/markdown/dist/rules/table-column-count.d.ts +17 -17
  129. package/node_modules/@eslint/markdown/dist/rules/table-column-count.js +2 -3
  130. package/node_modules/@eslint/markdown/package.json +5 -10
  131. package/node_modules/@eslint-community/eslint-utils/index.js +1 -1
  132. package/node_modules/@eslint-community/eslint-utils/index.js.map +1 -1
  133. package/node_modules/@eslint-community/eslint-utils/index.mjs +1 -1
  134. package/node_modules/@eslint-community/eslint-utils/index.mjs.map +1 -1
  135. package/node_modules/@eslint-community/eslint-utils/package.json +12 -7
  136. package/node_modules/@html-eslint/core/dist/index.js +1 -0
  137. package/node_modules/@html-eslint/core/dist/index.js.map +1 -1
  138. package/node_modules/@html-eslint/core/dist/index.mjs +1 -0
  139. package/node_modules/@html-eslint/core/dist/index.mjs.map +1 -1
  140. package/node_modules/@html-eslint/core/package.json +3 -3
  141. package/node_modules/@html-eslint/eslint-plugin/lib/rules/require-content.js +20 -1
  142. package/node_modules/@html-eslint/eslint-plugin/lib/rules/require-input-label.js +110 -8
  143. package/node_modules/@html-eslint/eslint-plugin/lib/rules/utils/node.js +13 -0
  144. package/node_modules/@html-eslint/eslint-plugin/package.json +7 -7
  145. package/node_modules/@html-eslint/eslint-plugin/types/rules/require-content.d.ts.map +1 -1
  146. package/node_modules/@html-eslint/eslint-plugin/types/rules/require-input-label.d.ts.map +1 -1
  147. package/node_modules/@html-eslint/eslint-plugin/types/rules/utils/node.d.ts +7 -0
  148. package/node_modules/@html-eslint/eslint-plugin/types/rules/utils/node.d.ts.map +1 -1
  149. package/node_modules/@html-eslint/parser/lib/parser.js +0 -1
  150. package/node_modules/@html-eslint/parser/package.json +4 -4
  151. package/node_modules/@html-eslint/parser/types/parser.d.ts.map +1 -1
  152. package/node_modules/@html-eslint/template-parser/package.json +3 -3
  153. package/node_modules/@html-eslint/template-syntax-parser/package.json +3 -3
  154. package/node_modules/@html-eslint/types/package.json +2 -2
  155. package/node_modules/@rviscomi/capo.js/README.md +4 -4
  156. package/node_modules/@rviscomi/capo.js/dist/adapters/adapter.cjs +7 -2
  157. package/node_modules/@rviscomi/capo.js/dist/adapters/browser.cjs +31 -3
  158. package/node_modules/@rviscomi/capo.js/dist/adapters/index.cjs +36 -4
  159. package/node_modules/@rviscomi/capo.js/dist/adapters/test-suite.cjs +6 -1
  160. package/node_modules/@rviscomi/capo.js/dist/analyzer.cjs +53 -24
  161. package/node_modules/@rviscomi/capo.js/dist/chrome/README.md +53 -0
  162. package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/capo.html +1 -1
  163. package/node_modules/@rviscomi/capo.js/dist/chrome/capo.js +3 -0
  164. package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/chrome.js +56 -18
  165. package/node_modules/@rviscomi/capo.js/dist/chrome/manifest.json +26 -0
  166. package/node_modules/@rviscomi/capo.js/dist/chrome/options/options.js +1 -0
  167. package/node_modules/@rviscomi/capo.js/dist/chrome.zip +0 -0
  168. package/node_modules/@rviscomi/capo.js/dist/firefox/README.md +53 -0
  169. package/node_modules/@rviscomi/capo.js/dist/firefox/background.js +7 -0
  170. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.css +59 -0
  171. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.html +12 -0
  172. package/node_modules/@rviscomi/capo.js/dist/firefox/capo.js +3 -0
  173. package/node_modules/@rviscomi/capo.js/dist/firefox/chrome.js +120 -0
  174. package/node_modules/@rviscomi/capo.js/dist/firefox/images/icon128.png +0 -0
  175. package/node_modules/@rviscomi/capo.js/dist/firefox/manifest.json +39 -0
  176. package/node_modules/@rviscomi/capo.js/dist/firefox/options/options.css +81 -0
  177. package/node_modules/@rviscomi/capo.js/dist/firefox/options/options.html +43 -0
  178. package/node_modules/@rviscomi/capo.js/dist/firefox/options/options.js +1 -0
  179. package/node_modules/@rviscomi/capo.js/dist/firefox/styles/open-props.css +291 -0
  180. package/node_modules/@rviscomi/capo.js/dist/firefox.zip +0 -0
  181. package/node_modules/@rviscomi/capo.js/dist/index.cjs +93 -33
  182. package/node_modules/@rviscomi/capo.js/dist/lib/colors.cjs +1 -0
  183. package/node_modules/@rviscomi/capo.js/dist/lib/io.cjs +137 -28
  184. package/node_modules/@rviscomi/capo.js/dist/lib/options.cjs +61 -0
  185. package/node_modules/@rviscomi/capo.js/dist/lib/rules.cjs +28 -13
  186. package/node_modules/@rviscomi/capo.js/dist/lib/validation.cjs +31 -16
  187. package/node_modules/@rviscomi/capo.js/dist/source.zip +0 -0
  188. package/node_modules/@rviscomi/capo.js/dist/types/adapters/adapter.d.ts +105 -0
  189. package/node_modules/@rviscomi/capo.js/dist/types/adapters/browser.d.ts +107 -0
  190. package/node_modules/@rviscomi/capo.js/dist/types/adapters/index.d.ts +7 -0
  191. package/node_modules/@rviscomi/capo.js/dist/types/adapters/test-suite.d.ts +52 -0
  192. package/node_modules/@rviscomi/capo.js/dist/types/analyzer.d.ts +195 -0
  193. package/node_modules/@rviscomi/capo.js/dist/types/index.d.ts +29 -0
  194. package/node_modules/@rviscomi/capo.js/dist/types/lib/colors.d.ts +20 -0
  195. package/node_modules/@rviscomi/capo.js/dist/types/lib/io.d.ts +166 -0
  196. package/node_modules/@rviscomi/capo.js/dist/types/lib/options.d.ts +114 -0
  197. package/node_modules/@rviscomi/capo.js/dist/types/lib/rules.d.ts +111 -0
  198. package/node_modules/@rviscomi/capo.js/dist/types/lib/validation.d.ts +61 -0
  199. package/node_modules/@rviscomi/capo.js/dist/types/src/adapters/adapter.d.ts +105 -0
  200. package/node_modules/@rviscomi/capo.js/dist/types/src/adapters/browser.d.ts +107 -0
  201. package/node_modules/@rviscomi/capo.js/dist/types/src/adapters/index.d.ts +7 -0
  202. package/node_modules/@rviscomi/capo.js/dist/types/src/adapters/test-suite.d.ts +52 -0
  203. package/node_modules/@rviscomi/capo.js/dist/types/src/analyzer.d.ts +195 -0
  204. package/node_modules/@rviscomi/capo.js/dist/types/src/index.d.ts +13 -0
  205. package/node_modules/@rviscomi/capo.js/dist/types/src/lib/colors.d.ts +20 -0
  206. package/node_modules/@rviscomi/capo.js/dist/types/src/lib/io.d.ts +166 -0
  207. package/node_modules/@rviscomi/capo.js/dist/types/src/lib/options.d.ts +114 -0
  208. package/node_modules/@rviscomi/capo.js/dist/types/src/lib/rules.d.ts +111 -0
  209. package/node_modules/@rviscomi/capo.js/dist/types/src/lib/validation.d.ts +61 -0
  210. package/node_modules/@rviscomi/capo.js/package.json +34 -16
  211. package/node_modules/@rviscomi/capo.js/src/adapters/adapter.js +16 -5
  212. package/node_modules/@rviscomi/capo.js/src/adapters/browser.js +30 -4
  213. package/node_modules/@rviscomi/capo.js/src/adapters/test-suite.js +11 -10
  214. package/node_modules/@rviscomi/capo.js/src/analyzer.js +47 -25
  215. package/node_modules/@rviscomi/capo.js/src/extension/README.md +53 -0
  216. package/node_modules/@rviscomi/capo.js/src/extension/background.js +7 -0
  217. package/node_modules/@rviscomi/capo.js/src/extension/capo.css +59 -0
  218. package/node_modules/@rviscomi/capo.js/src/extension/capo.html +12 -0
  219. package/node_modules/@rviscomi/capo.js/src/extension/capo.js +93 -0
  220. package/node_modules/@rviscomi/capo.js/src/extension/chrome.js +120 -0
  221. package/node_modules/@rviscomi/capo.js/src/extension/images/icon128.png +0 -0
  222. package/node_modules/@rviscomi/capo.js/src/extension/images/icon256.png +0 -0
  223. package/node_modules/@rviscomi/capo.js/{crx → src/extension}/manifest.json +1 -1
  224. package/node_modules/@rviscomi/capo.js/src/extension/options/options.css +81 -0
  225. package/node_modules/@rviscomi/capo.js/src/extension/options/options.html +43 -0
  226. package/node_modules/@rviscomi/capo.js/src/extension/options.js +87 -0
  227. package/node_modules/@rviscomi/capo.js/src/extension/styles/open-props.css +291 -0
  228. package/node_modules/@rviscomi/capo.js/src/index.js +10 -0
  229. package/node_modules/@rviscomi/capo.js/src/lib/colors.js +14 -0
  230. package/node_modules/@rviscomi/capo.js/src/lib/io.js +171 -32
  231. package/node_modules/@rviscomi/capo.js/src/lib/options.js +82 -1
  232. package/node_modules/@rviscomi/capo.js/src/lib/rules.js +120 -43
  233. package/node_modules/@rviscomi/capo.js/src/lib/validation.js +211 -86
  234. package/node_modules/@rviscomi/capo.js/src/web/capo.js +5 -8
  235. package/node_modules/@types/hast/README.md +2 -2
  236. package/node_modules/@types/hast/index.d.ts +642 -0
  237. package/node_modules/@types/hast/package.json +9 -3
  238. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/all.d.ts +0 -4
  239. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/eslintrc/all.js +0 -4
  240. package/node_modules/@typescript-eslint/eslint-plugin/dist/configs/flat/all.js +0 -4
  241. package/node_modules/@typescript-eslint/eslint-plugin/dist/index.d.ts +0 -4
  242. package/node_modules/@typescript-eslint/eslint-plugin/dist/index.js +47 -0
  243. package/node_modules/@typescript-eslint/eslint-plugin/dist/raw-plugin.d.ts +0 -4
  244. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/ban-ts-comment.js +4 -4
  245. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.d.ts +1 -1
  246. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/method-signature-style.js +23 -10
  247. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-base-to-string.js +1 -1
  248. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-loop-func.js +16 -2
  249. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-misused-promises.js +41 -3
  250. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-restricted-imports.js +12 -0
  251. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.d.ts +1 -1
  252. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-shadow.js +5 -4
  253. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-this-alias.js +1 -1
  254. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-parameter-property-assignment.js +1 -1
  255. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-template-expression.js +2 -2
  256. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unnecessary-type-assertion.js +5 -1
  257. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/no-unused-vars.js +1 -1
  258. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/prefer-string-starts-ends-with.js +2 -1
  259. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/require-array-sort-compare.js +1 -1
  260. package/node_modules/@typescript-eslint/eslint-plugin/dist/rules/unbound-method.js +36 -9
  261. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/index.js +11 -2
  262. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/legacy.js +11 -2
  263. package/node_modules/@typescript-eslint/eslint-plugin/node_modules/ignore/package.json +1 -1
  264. package/node_modules/@typescript-eslint/eslint-plugin/package.json +22 -11
  265. package/node_modules/@typescript-eslint/parser/dist/index.js +47 -0
  266. package/node_modules/@typescript-eslint/parser/dist/parser.js +11 -6
  267. package/node_modules/@typescript-eslint/parser/package.json +9 -7
  268. package/node_modules/@typescript-eslint/project-service/package.json +7 -5
  269. package/node_modules/@typescript-eslint/scope-manager/dist/scope/FunctionScope.js +2 -2
  270. package/node_modules/@typescript-eslint/scope-manager/dist/scope/index.d.ts +1 -0
  271. package/node_modules/@typescript-eslint/scope-manager/dist/scope/index.js +1 -0
  272. package/node_modules/@typescript-eslint/scope-manager/package.json +8 -6
  273. package/node_modules/@typescript-eslint/tsconfig-utils/package.json +5 -3
  274. package/node_modules/@typescript-eslint/type-utils/package.json +9 -7
  275. package/node_modules/@typescript-eslint/types/dist/generated/ast-spec.d.ts +10 -0
  276. package/node_modules/@typescript-eslint/types/dist/parser-options.d.ts +13 -0
  277. package/node_modules/@typescript-eslint/types/package.json +5 -3
  278. package/node_modules/@typescript-eslint/typescript-estree/dist/check-syntax-errors.js +22 -6
  279. package/node_modules/@typescript-eslint/typescript-estree/dist/convert.js +5 -4
  280. package/node_modules/@typescript-eslint/typescript-estree/dist/getImportClausePhaseModifier.d.ts +4 -0
  281. package/node_modules/@typescript-eslint/typescript-estree/dist/getImportClausePhaseModifier.js +56 -0
  282. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/createParseSettings.js +1 -1
  283. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.d.ts +1 -1
  284. package/node_modules/@typescript-eslint/typescript-estree/dist/parseSettings/warnAboutTSVersion.js +27 -18
  285. package/node_modules/@typescript-eslint/typescript-estree/dist/parser-options.d.ts +8 -0
  286. package/node_modules/@typescript-eslint/typescript-estree/package.json +9 -7
  287. package/node_modules/@typescript-eslint/utils/dist/ts-eslint/Rule.d.ts +1 -1
  288. package/node_modules/@typescript-eslint/utils/package.json +8 -6
  289. package/node_modules/@typescript-eslint/visitor-keys/package.json +6 -4
  290. package/node_modules/acorn/CHANGELOG.md +12 -0
  291. package/node_modules/acorn/README.md +5 -0
  292. package/node_modules/acorn/dist/acorn.d.mts +8 -0
  293. package/node_modules/acorn/dist/acorn.d.ts +8 -0
  294. package/node_modules/acorn/dist/acorn.js +16 -7
  295. package/node_modules/acorn/dist/acorn.mjs +16 -7
  296. package/node_modules/acorn/package.json +1 -1
  297. package/node_modules/astro-eslint-parser/lib/index.d.mts +113 -18
  298. package/node_modules/astro-eslint-parser/lib/index.mjs +871 -1172
  299. package/node_modules/astro-eslint-parser/package.json +7 -9
  300. package/node_modules/brace-expansion/README.md +11 -0
  301. package/node_modules/brace-expansion/dist/commonjs/index.d.ts +2 -0
  302. package/node_modules/brace-expansion/dist/commonjs/index.d.ts.map +1 -1
  303. package/node_modules/brace-expansion/dist/commonjs/index.js +162 -84
  304. package/node_modules/brace-expansion/dist/commonjs/index.js.map +1 -1
  305. package/node_modules/brace-expansion/dist/esm/index.d.ts +2 -0
  306. package/node_modules/brace-expansion/dist/esm/index.d.ts.map +1 -1
  307. package/node_modules/brace-expansion/dist/esm/index.js +161 -83
  308. package/node_modules/brace-expansion/dist/esm/index.js.map +1 -1
  309. package/node_modules/brace-expansion/package.json +2 -2
  310. package/node_modules/eslint/README.md +2 -2
  311. package/node_modules/eslint/lib/cli-engine/formatters/html.js +1 -1
  312. package/node_modules/eslint/lib/languages/js/index.js +1 -1
  313. package/node_modules/eslint/lib/linter/code-path-analysis/debug-helpers.js +1 -1
  314. package/node_modules/eslint/lib/linter/vfile.js +1 -1
  315. package/node_modules/eslint/lib/rules/class-methods-use-this.js +6 -5
  316. package/node_modules/eslint/lib/rules/complexity.js +1 -1
  317. package/node_modules/eslint/lib/rules/eqeqeq.js +26 -6
  318. package/node_modules/eslint/lib/rules/func-name-matching.js +3 -3
  319. package/node_modules/eslint/lib/rules/generator-star-spacing.js +4 -6
  320. package/node_modules/eslint/lib/rules/indent.js +4 -6
  321. package/node_modules/eslint/lib/rules/key-spacing.js +5 -7
  322. package/node_modules/eslint/lib/rules/max-len.js +1 -1
  323. package/node_modules/eslint/lib/rules/max-nested-callbacks.js +11 -1
  324. package/node_modules/eslint/lib/rules/no-compare-neg-zero.js +91 -8
  325. package/node_modules/eslint/lib/rules/no-control-regex.js +3 -0
  326. package/node_modules/eslint/lib/rules/no-implicit-coercion.js +22 -8
  327. package/node_modules/eslint/lib/rules/no-invalid-regexp.js +3 -1
  328. package/node_modules/eslint/lib/rules/no-mixed-spaces-and-tabs.js +5 -7
  329. package/node_modules/eslint/lib/rules/no-promise-executor-return.js +5 -7
  330. package/node_modules/eslint/lib/rules/no-script-url.js +4 -6
  331. package/node_modules/eslint/lib/rules/no-shadow.js +14 -20
  332. package/node_modules/eslint/lib/rules/no-unreachable-loop.js +8 -4
  333. package/node_modules/eslint/lib/rules/prefer-numeric-literals.js +14 -6
  334. package/node_modules/eslint/lib/rules/prefer-object-has-own.js +4 -6
  335. package/node_modules/eslint/lib/rules/prefer-object-spread.js +9 -1
  336. package/node_modules/eslint/lib/rules/prefer-template.js +1 -1
  337. package/node_modules/eslint/lib/rules/preserve-caught-error.js +268 -116
  338. package/node_modules/eslint/lib/rules/quotes.js +1 -1
  339. package/node_modules/eslint/lib/rules/radix.js +58 -57
  340. package/node_modules/eslint/lib/rules/use-isnan.js +20 -12
  341. package/node_modules/eslint/lib/rules/utils/ast-utils.js +1 -1
  342. package/node_modules/eslint/lib/shared/serialization.js +1 -1
  343. package/node_modules/eslint/lib/shared/translate-cli-options.js +3 -3
  344. package/node_modules/eslint/lib/types/config-api.d.ts +8 -1
  345. package/node_modules/eslint/lib/types/index.d.ts +3 -6
  346. package/node_modules/eslint/lib/types/rules.d.ts +17 -9
  347. package/node_modules/eslint/package.json +7 -7
  348. package/node_modules/eslint-plugin-astro/README.md +10 -2
  349. package/node_modules/eslint-plugin-astro/lib/index.d.mts +0 -1
  350. package/node_modules/eslint-plugin-astro/lib/index.mjs +76 -637
  351. package/node_modules/eslint-plugin-astro/package.json +11 -11
  352. package/node_modules/eslint-plugin-toml/README.md +2 -0
  353. package/node_modules/eslint-plugin-toml/lib/index.d.mts +6 -5
  354. package/node_modules/eslint-plugin-toml/lib/index.mjs +32 -3
  355. package/node_modules/eslint-plugin-toml/package.json +7 -7
  356. package/node_modules/eslint-plugin-yml/lib/index.mjs +49 -19
  357. package/node_modules/eslint-plugin-yml/package.json +2 -2
  358. package/node_modules/flatted/golang/pkg/flatted/flatted.go +16 -14
  359. package/node_modules/flatted/package.json +10 -5
  360. package/node_modules/flatted/types/index.d.ts +1 -1
  361. package/node_modules/globals/globals.json +105 -33
  362. package/node_modules/globals/index.d.ts +105 -33
  363. package/node_modules/globals/package.json +2 -2
  364. package/node_modules/mdn-data/css/properties.json +64 -16
  365. package/node_modules/mdn-data/css/properties.schema.json +1 -7
  366. package/node_modules/mdn-data/css/syntaxes.json +1 -1
  367. package/node_modules/mdn-data/l10n/css.json +3 -62
  368. package/node_modules/mdn-data/package.json +1 -1
  369. package/node_modules/minimatch/package.json +9 -9
  370. package/node_modules/nanoid/non-secure/index.cjs +2 -2
  371. package/node_modules/nanoid/non-secure/index.js +2 -2
  372. package/node_modules/nanoid/package.json +1 -1
  373. package/node_modules/picomatch/README.md +15 -21
  374. package/node_modules/picomatch/lib/parse.js +39 -9
  375. package/node_modules/picomatch/lib/picomatch.js +14 -2
  376. package/node_modules/picomatch/package.json +3 -2
  377. package/node_modules/postcss/README.md +1 -2
  378. package/node_modules/postcss/lib/container.js +81 -34
  379. package/node_modules/postcss/lib/fromJSON.js +65 -26
  380. package/node_modules/postcss/lib/input.js +7 -1
  381. package/node_modules/postcss/lib/lazy-result.js +77 -14
  382. package/node_modules/postcss/lib/list.js +1 -0
  383. package/node_modules/postcss/lib/node.d.ts +2 -2
  384. package/node_modules/postcss/lib/node.js +90 -52
  385. package/node_modules/postcss/lib/postcss.d.ts +4 -1
  386. package/node_modules/postcss/lib/previous-map.js +6 -3
  387. package/node_modules/postcss/lib/processor.js +1 -1
  388. package/node_modules/postcss/lib/root.js +16 -1
  389. package/node_modules/postcss/lib/stringifier.js +112 -25
  390. package/node_modules/postcss/lib/warning.js +10 -0
  391. package/node_modules/postcss/package.json +2 -2
  392. package/node_modules/typescript-eslint/dist/index.js +47 -0
  393. package/node_modules/typescript-eslint/package.json +14 -6
  394. package/node_modules/yaml-eslint-parser/lib/chunk-CfYAbeIz.mjs +13 -0
  395. package/node_modules/yaml-eslint-parser/lib/index.d.mts +2 -2
  396. package/node_modules/yaml-eslint-parser/lib/index.mjs +164 -157
  397. package/node_modules/yaml-eslint-parser/package.json +17 -18
  398. package/package.json +23 -23
  399. package/node_modules/@astrojs/compiler/LICENSE +0 -53
  400. package/node_modules/@astrojs/compiler/README.md +0 -72
  401. package/node_modules/@astrojs/compiler/dist/astro.wasm +0 -0
  402. package/node_modules/@astrojs/compiler/dist/browser/index.cjs +0 -2
  403. package/node_modules/@astrojs/compiler/dist/browser/index.d.ts +0 -11
  404. package/node_modules/@astrojs/compiler/dist/browser/index.js +0 -1
  405. package/node_modules/@astrojs/compiler/dist/browser/utils.cjs +0 -3
  406. package/node_modules/@astrojs/compiler/dist/browser/utils.d.ts +0 -29
  407. package/node_modules/@astrojs/compiler/dist/browser/utils.js +0 -3
  408. package/node_modules/@astrojs/compiler/dist/browser/wasm_exec.cjs +0 -2
  409. package/node_modules/@astrojs/compiler/dist/browser/wasm_exec.d.ts +0 -37
  410. package/node_modules/@astrojs/compiler/dist/browser/wasm_exec.js +0 -1
  411. package/node_modules/@astrojs/compiler/dist/chunk-QR6QDSEV.js +0 -2
  412. package/node_modules/@astrojs/compiler/dist/chunk-W5DTLHV4.js +0 -1
  413. package/node_modules/@astrojs/compiler/dist/node/index.cjs +0 -1
  414. package/node_modules/@astrojs/compiler/dist/node/index.d.ts +0 -12
  415. package/node_modules/@astrojs/compiler/dist/node/index.js +0 -1
  416. package/node_modules/@astrojs/compiler/dist/node/sync.cjs +0 -1
  417. package/node_modules/@astrojs/compiler/dist/node/sync.d.ts +0 -16
  418. package/node_modules/@astrojs/compiler/dist/node/sync.js +0 -1
  419. package/node_modules/@astrojs/compiler/dist/node/utils.cjs +0 -3
  420. package/node_modules/@astrojs/compiler/dist/node/utils.d.ts +0 -29
  421. package/node_modules/@astrojs/compiler/dist/node/utils.js +0 -3
  422. package/node_modules/@astrojs/compiler/dist/node/wasm_exec.cjs +0 -1
  423. package/node_modules/@astrojs/compiler/dist/node/wasm_exec.d.ts +0 -37
  424. package/node_modules/@astrojs/compiler/dist/node/wasm_exec.js +0 -1
  425. package/node_modules/@astrojs/compiler/dist/shared/ast.cjs +0 -1
  426. package/node_modules/@astrojs/compiler/dist/shared/ast.d.ts +0 -74
  427. package/node_modules/@astrojs/compiler/dist/shared/ast.js +0 -0
  428. package/node_modules/@astrojs/compiler/dist/shared/diagnostics.cjs +0 -1
  429. package/node_modules/@astrojs/compiler/dist/shared/diagnostics.d.ts +0 -18
  430. package/node_modules/@astrojs/compiler/dist/shared/diagnostics.js +0 -1
  431. package/node_modules/@astrojs/compiler/dist/shared/types.cjs +0 -1
  432. package/node_modules/@astrojs/compiler/dist/shared/types.d.ts +0 -153
  433. package/node_modules/@astrojs/compiler/dist/shared/types.js +0 -1
  434. package/node_modules/@astrojs/compiler/package.json +0 -58
  435. package/node_modules/@astrojs/compiler/sync.d.ts +0 -1
  436. package/node_modules/@astrojs/compiler/types.d.ts +0 -1
  437. package/node_modules/@astrojs/compiler/utils.d.ts +0 -1
  438. package/node_modules/@pkgr/core/index.d.cts +0 -3
  439. package/node_modules/@pkgr/core/lib/constants.d.ts +0 -6
  440. package/node_modules/@pkgr/core/lib/constants.js +0 -9
  441. package/node_modules/@pkgr/core/lib/constants.js.map +0 -1
  442. package/node_modules/@pkgr/core/lib/helpers.d.ts +0 -19
  443. package/node_modules/@pkgr/core/lib/helpers.js +0 -67
  444. package/node_modules/@pkgr/core/lib/helpers.js.map +0 -1
  445. package/node_modules/@pkgr/core/lib/index.cjs +0 -91
  446. package/node_modules/@pkgr/core/lib/index.d.ts +0 -2
  447. package/node_modules/@pkgr/core/lib/index.js +0 -3
  448. package/node_modules/@pkgr/core/lib/index.js.map +0 -1
  449. package/node_modules/@pkgr/core/package.json +0 -38
  450. package/node_modules/@rviscomi/capo.js/crx/README.md +0 -10
  451. package/node_modules/@rviscomi/capo.js/crx/capo.js +0 -3
  452. package/node_modules/@rviscomi/capo.js/crx/options/options.js +0 -1
  453. package/node_modules/@rviscomi/capo.js/docs/.vscode/extensions.json +0 -4
  454. package/node_modules/@rviscomi/capo.js/docs/.vscode/launch.json +0 -11
  455. package/node_modules/@rviscomi/capo.js/docs/README.md +0 -51
  456. package/node_modules/@rviscomi/capo.js/docs/astro.config.mjs +0 -82
  457. package/node_modules/@rviscomi/capo.js/docs/package-lock.json +0 -7439
  458. package/node_modules/@rviscomi/capo.js/docs/package.json +0 -21
  459. package/node_modules/@rviscomi/capo.js/docs/public/capo-social-alt.webp +0 -0
  460. package/node_modules/@rviscomi/capo.js/docs/public/capo-social.png +0 -0
  461. package/node_modules/@rviscomi/capo.js/docs/public/capo-social.webp +0 -0
  462. package/node_modules/@rviscomi/capo.js/docs/public/favicon.svg +0 -13
  463. package/node_modules/@rviscomi/capo.js/docs/src/assets/bookmarklet-setup.png +0 -0
  464. package/node_modules/@rviscomi/capo.js/docs/src/assets/bookmarklet.png +0 -0
  465. package/node_modules/@rviscomi/capo.js/docs/src/assets/capo-chrome.png +0 -0
  466. package/node_modules/@rviscomi/capo.js/docs/src/assets/capo-extension.png +0 -0
  467. package/node_modules/@rviscomi/capo.js/docs/src/assets/capo800.png +0 -0
  468. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-console-expanded.png +0 -0
  469. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-console-interactive.png +0 -0
  470. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-console.png +0 -0
  471. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-hover-validation.png +0 -0
  472. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-menu.png +0 -0
  473. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-options-dark.png +0 -0
  474. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-options-light.png +0 -0
  475. package/node_modules/@rviscomi/capo.js/docs/src/assets/crx-store.png +0 -0
  476. package/node_modules/@rviscomi/capo.js/docs/src/assets/custom-palette.png +0 -0
  477. package/node_modules/@rviscomi/capo.js/docs/src/assets/developer-mode.png +0 -0
  478. package/node_modules/@rviscomi/capo.js/docs/src/assets/devtools-console.png +0 -0
  479. package/node_modules/@rviscomi/capo.js/docs/src/assets/devtools-snippet.png +0 -0
  480. package/node_modules/@rviscomi/capo.js/docs/src/assets/devtools-sources.png +0 -0
  481. package/node_modules/@rviscomi/capo.js/docs/src/assets/houston.webp +0 -0
  482. package/node_modules/@rviscomi/capo.js/docs/src/assets/load-unpacked.png +0 -0
  483. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-areas.png +0 -0
  484. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-base.png +0 -0
  485. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-crx-stripes.png +0 -0
  486. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-csp.png +0 -0
  487. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-invalid-element.png +0 -0
  488. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-origin-trial.png +0 -0
  489. package/node_modules/@rviscomi/capo.js/docs/src/assets/validation-title.png +0 -0
  490. package/node_modules/@rviscomi/capo.js/docs/src/components/CapoClient.astro +0 -165
  491. package/node_modules/@rviscomi/capo.js/docs/src/components/CapoOptions.astro +0 -10
  492. package/node_modules/@rviscomi/capo.js/docs/src/components/CapoPalette.astro +0 -26
  493. package/node_modules/@rviscomi/capo.js/docs/src/components/InlineCapoIcon.astro +0 -15
  494. package/node_modules/@rviscomi/capo.js/docs/src/components/InlineCapoWeightBars.astro +0 -39
  495. package/node_modules/@rviscomi/capo.js/docs/src/components/VirtualConsole.astro +0 -11
  496. package/node_modules/@rviscomi/capo.js/docs/src/content/config.ts +0 -7
  497. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/developer/contributing.mdx +0 -8
  498. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/developer/crx-local.mdx +0 -28
  499. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/developer/custom-adapters.mdx +0 -273
  500. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/index.mdx +0 -108
  501. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/migration-v2.mdx +0 -62
  502. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/actionability.mdx +0 -6
  503. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/assessment-mode.mdx +0 -29
  504. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/config.mdx +0 -195
  505. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/demo.mdx +0 -9
  506. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/extension.mdx +0 -116
  507. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/performance.mdx +0 -6
  508. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/quick-start.mdx +0 -26
  509. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/rules.mdx +0 -202
  510. package/node_modules/@rviscomi/capo.js/docs/src/content/docs/user/validation.mdx +0 -197
  511. package/node_modules/@rviscomi/capo.js/docs/src/env.d.ts +0 -2
  512. package/node_modules/@rviscomi/capo.js/docs/src/lib/VirtualConsole.js +0 -190
  513. package/node_modules/@rviscomi/capo.js/docs/src/lib/capo.js +0 -1533
  514. package/node_modules/@rviscomi/capo.js/docs/src/styles/custom.css +0 -7
  515. package/node_modules/@rviscomi/capo.js/docs/src/styles/virtual-console.css +0 -131
  516. package/node_modules/@rviscomi/capo.js/docs/tests/VirtualConsole.test.js +0 -108
  517. package/node_modules/@rviscomi/capo.js/docs/tsconfig.json +0 -3
  518. package/node_modules/@rviscomi/capo.js/src/crx/capo.js +0 -62
  519. package/node_modules/@rviscomi/capo.js/src/crx/options.js +0 -69
  520. package/node_modules/astrojs-compiler-sync/LICENSE +0 -53
  521. package/node_modules/astrojs-compiler-sync/README.md +0 -3
  522. package/node_modules/astrojs-compiler-sync/browser/index.d.ts +0 -6
  523. package/node_modules/astrojs-compiler-sync/browser/index.js +0 -76
  524. package/node_modules/astrojs-compiler-sync/browser/wasm_exec.js +0 -665
  525. package/node_modules/astrojs-compiler-sync/lib/astrojs-compiler-worker.js +0 -5
  526. package/node_modules/astrojs-compiler-sync/lib/compiler-sync.cjs +0 -31
  527. package/node_modules/astrojs-compiler-sync/lib/index.cjs +0 -30
  528. package/node_modules/astrojs-compiler-sync/lib/index.d.cts +0 -3
  529. package/node_modules/astrojs-compiler-sync/lib/index.d.ts +0 -14
  530. package/node_modules/astrojs-compiler-sync/lib/index.js +0 -18
  531. package/node_modules/astrojs-compiler-sync/package.json +0 -100
  532. package/node_modules/entities/LICENSE +0 -11
  533. package/node_modules/entities/dist/decode-codepoint.d.ts +0 -8
  534. package/node_modules/entities/dist/decode-codepoint.d.ts.map +0 -1
  535. package/node_modules/entities/dist/decode-codepoint.js +0 -46
  536. package/node_modules/entities/dist/decode-codepoint.js.map +0 -1
  537. package/node_modules/entities/dist/decode.d.ts +0 -194
  538. package/node_modules/entities/dist/decode.d.ts.map +0 -1
  539. package/node_modules/entities/dist/decode.js +0 -544
  540. package/node_modules/entities/dist/decode.js.map +0 -1
  541. package/node_modules/entities/dist/encode.d.ts +0 -24
  542. package/node_modules/entities/dist/encode.d.ts.map +0 -1
  543. package/node_modules/entities/dist/encode.js +0 -90
  544. package/node_modules/entities/dist/encode.js.map +0 -1
  545. package/node_modules/entities/dist/escape.d.ts +0 -48
  546. package/node_modules/entities/dist/escape.d.ts.map +0 -1
  547. package/node_modules/entities/dist/escape.js +0 -132
  548. package/node_modules/entities/dist/escape.js.map +0 -1
  549. package/node_modules/entities/dist/generated/decode-data-html.d.ts +0 -3
  550. package/node_modules/entities/dist/generated/decode-data-html.d.ts.map +0 -1
  551. package/node_modules/entities/dist/generated/decode-data-html.js +0 -5
  552. package/node_modules/entities/dist/generated/decode-data-html.js.map +0 -1
  553. package/node_modules/entities/dist/generated/decode-data-xml.d.ts +0 -3
  554. package/node_modules/entities/dist/generated/decode-data-xml.d.ts.map +0 -1
  555. package/node_modules/entities/dist/generated/decode-data-xml.js +0 -5
  556. package/node_modules/entities/dist/generated/decode-data-xml.js.map +0 -1
  557. package/node_modules/entities/dist/generated/encode-html.d.ts +0 -5
  558. package/node_modules/entities/dist/generated/encode-html.d.ts.map +0 -1
  559. package/node_modules/entities/dist/generated/encode-html.js +0 -12
  560. package/node_modules/entities/dist/generated/encode-html.js.map +0 -1
  561. package/node_modules/entities/dist/index.d.ts +0 -89
  562. package/node_modules/entities/dist/index.d.ts.map +0 -1
  563. package/node_modules/entities/dist/index.js +0 -91
  564. package/node_modules/entities/dist/index.js.map +0 -1
  565. package/node_modules/entities/dist/internal/bin-trie-flags.d.ts +0 -17
  566. package/node_modules/entities/dist/internal/bin-trie-flags.d.ts.map +0 -1
  567. package/node_modules/entities/dist/internal/bin-trie-flags.js +0 -18
  568. package/node_modules/entities/dist/internal/bin-trie-flags.js.map +0 -1
  569. package/node_modules/entities/dist/internal/decode-shared.d.ts +0 -7
  570. package/node_modules/entities/dist/internal/decode-shared.d.ts.map +0 -1
  571. package/node_modules/entities/dist/internal/decode-shared.js +0 -17
  572. package/node_modules/entities/dist/internal/decode-shared.js.map +0 -1
  573. package/node_modules/entities/dist/internal/encode-shared.d.ts +0 -33
  574. package/node_modules/entities/dist/internal/encode-shared.d.ts.map +0 -1
  575. package/node_modules/entities/dist/internal/encode-shared.js +0 -93
  576. package/node_modules/entities/dist/internal/encode-shared.js.map +0 -1
  577. package/node_modules/entities/package.json +0 -83
  578. package/node_modules/entities/readme.md +0 -131
  579. package/node_modules/entities/src/decode-codepoint.ts +0 -50
  580. package/node_modules/entities/src/decode.ts +0 -671
  581. package/node_modules/entities/src/encode.ts +0 -95
  582. package/node_modules/entities/src/escape.ts +0 -160
  583. package/node_modules/entities/src/generated/decode-data-html.ts +0 -7
  584. package/node_modules/entities/src/generated/decode-data-xml.ts +0 -7
  585. package/node_modules/entities/src/generated/encode-html.ts +0 -18
  586. package/node_modules/entities/src/index.ts +0 -162
  587. package/node_modules/entities/src/internal/bin-trie-flags.ts +0 -16
  588. package/node_modules/entities/src/internal/decode-shared.ts +0 -18
  589. package/node_modules/entities/src/internal/encode-shared.ts +0 -123
  590. package/node_modules/parse5/README.md +0 -38
  591. package/node_modules/parse5/dist/common/doctype.d.ts +0 -4
  592. package/node_modules/parse5/dist/common/doctype.js +0 -114
  593. package/node_modules/parse5/dist/common/error-codes.d.ts +0 -67
  594. package/node_modules/parse5/dist/common/error-codes.js +0 -63
  595. package/node_modules/parse5/dist/common/foreign-content.d.ts +0 -9
  596. package/node_modules/parse5/dist/common/foreign-content.js +0 -228
  597. package/node_modules/parse5/dist/common/html.d.ts +0 -289
  598. package/node_modules/parse5/dist/common/html.js +0 -523
  599. package/node_modules/parse5/dist/common/token.d.ts +0 -84
  600. package/node_modules/parse5/dist/common/token.js +0 -20
  601. package/node_modules/parse5/dist/common/unicode.d.ts +0 -42
  602. package/node_modules/parse5/dist/common/unicode.js +0 -62
  603. package/node_modules/parse5/dist/index.d.ts +0 -71
  604. package/node_modules/parse5/dist/index.js +0 -42
  605. package/node_modules/parse5/dist/parser/formatting-element-list.d.ts +0 -36
  606. package/node_modules/parse5/dist/parser/formatting-element-list.js +0 -110
  607. package/node_modules/parse5/dist/parser/index.d.ts +0 -221
  608. package/node_modules/parse5/dist/parser/index.js +0 -3245
  609. package/node_modules/parse5/dist/parser/open-element-stack.d.ts +0 -53
  610. package/node_modules/parse5/dist/parser/open-element-stack.js +0 -324
  611. package/node_modules/parse5/dist/serializer/index.d.ts +0 -60
  612. package/node_modules/parse5/dist/serializer/index.js +0 -168
  613. package/node_modules/parse5/dist/tokenizer/index.d.ts +0 -247
  614. package/node_modules/parse5/dist/tokenizer/index.js +0 -2712
  615. package/node_modules/parse5/dist/tokenizer/preprocessor.d.ts +0 -36
  616. package/node_modules/parse5/dist/tokenizer/preprocessor.js +0 -196
  617. package/node_modules/parse5/dist/tree-adapters/default.d.ts +0 -84
  618. package/node_modules/parse5/dist/tree-adapters/default.js +0 -173
  619. package/node_modules/parse5/dist/tree-adapters/interface.d.ts +0 -255
  620. package/node_modules/parse5/dist/tree-adapters/interface.js +0 -1
  621. package/node_modules/parse5/package.json +0 -53
  622. package/node_modules/synckit/README.md +0 -256
  623. package/node_modules/synckit/lib/common.d.ts +0 -5
  624. package/node_modules/synckit/lib/common.js +0 -22
  625. package/node_modules/synckit/lib/common.js.map +0 -1
  626. package/node_modules/synckit/lib/constants.d.ts +0 -38
  627. package/node_modules/synckit/lib/constants.js +0 -54
  628. package/node_modules/synckit/lib/constants.js.map +0 -1
  629. package/node_modules/synckit/lib/helpers.d.ts +0 -27
  630. package/node_modules/synckit/lib/helpers.js +0 -411
  631. package/node_modules/synckit/lib/helpers.js.map +0 -1
  632. package/node_modules/synckit/lib/index.cjs +0 -588
  633. package/node_modules/synckit/lib/index.d.cts +0 -138
  634. package/node_modules/synckit/lib/index.d.ts +0 -7
  635. package/node_modules/synckit/lib/index.js +0 -68
  636. package/node_modules/synckit/lib/index.js.map +0 -1
  637. package/node_modules/synckit/lib/types.d.ts +0 -48
  638. package/node_modules/synckit/lib/types.js +0 -2
  639. package/node_modules/synckit/lib/types.js.map +0 -1
  640. package/node_modules/synckit/package.json +0 -45
  641. package/node_modules/yaml-eslint-parser/lib/chunk-15K8U1wQ.mjs +0 -18
  642. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/background.js +0 -0
  643. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/capo.css +0 -0
  644. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/images/icon128.png +0 -0
  645. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/images/icon256.png +0 -0
  646. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/options/options.css +0 -0
  647. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/options/options.html +0 -0
  648. /package/node_modules/@rviscomi/capo.js/{crx → dist/chrome}/styles/open-props.css +0 -0
  649. /package/node_modules/@rviscomi/capo.js/{docs/src/assets/capo256.png → dist/firefox/images/icon256.png} +0 -0
  650. /package/node_modules/eslint-plugin-toml/lib/{chunk-CfYAbeIz.mjs → rolldown-runtime-D7D4PA-g.mjs} +0 -0
@@ -0,0 +1,291 @@
1
+ /* https://github.com/argyleink/open-props */
2
+ :where(html) {
3
+ --font-sans: system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;
4
+ --font-serif: ui-serif,serif;
5
+ --font-mono: Dank Mono,Operator Mono,Inconsolata,Fira Mono,ui-monospace,SF Mono,Monaco,Droid Sans Mono,Source Code Pro,monospace;
6
+ --font-weight-1: 100;
7
+ --font-weight-2: 200;
8
+ --font-weight-3: 300;
9
+ --font-weight-4: 400;
10
+ --font-weight-5: 500;
11
+ --font-weight-6: 600;
12
+ --font-weight-7: 700;
13
+ --font-weight-8: 800;
14
+ --font-weight-9: 900;
15
+ --font-lineheight-00: .95;
16
+ --font-lineheight-0: 1.1;
17
+ --font-lineheight-1: 1.25;
18
+ --font-lineheight-2: 1.375;
19
+ --font-lineheight-3: 1.5;
20
+ --font-lineheight-4: 1.75;
21
+ --font-lineheight-5: 2;
22
+ --font-letterspacing-0: -.05em;
23
+ --font-letterspacing-1: .025em;
24
+ --font-letterspacing-2: .050em;
25
+ --font-letterspacing-3: .075em;
26
+ --font-letterspacing-4: .150em;
27
+ --font-letterspacing-5: .500em;
28
+ --font-letterspacing-6: .750em;
29
+ --font-letterspacing-7: 1em;
30
+ --font-size-00: .5rem;
31
+ --font-size-0: .75rem;
32
+ --font-size-1: 1rem;
33
+ --font-size-2: 1.1rem;
34
+ --font-size-3: 1.25rem;
35
+ --font-size-4: 1.5rem;
36
+ --font-size-5: 2rem;
37
+ --font-size-6: 2.5rem;
38
+ --font-size-7: 3rem;
39
+ --font-size-8: 3.5rem;
40
+ --font-size-fluid-0: clamp(.75rem, 2vw, 1rem);
41
+ --font-size-fluid-1: clamp(1rem, 4vw, 1.5rem);
42
+ --font-size-fluid-2: clamp(1.5rem, 6vw, 2.5rem);
43
+ --font-size-fluid-3: clamp(2rem, 9vw, 3.5rem);
44
+ --gray-0: #f8f9fa;
45
+ --gray-1: #f1f3f5;
46
+ --gray-2: #e9ecef;
47
+ --gray-3: #dee2e6;
48
+ --gray-4: #ced4da;
49
+ --gray-5: #adb5bd;
50
+ --gray-6: #868e96;
51
+ --gray-7: #495057;
52
+ --gray-8: #343a40;
53
+ --gray-9: #212529;
54
+ --gray-10: #16191d;
55
+ --gray-11: #0d0f12;
56
+ --gray-12: #030507;
57
+ --stone-0: #f8fafb;
58
+ --stone-1: #f2f4f6;
59
+ --stone-2: #ebedef;
60
+ --stone-3: #e0e4e5;
61
+ --stone-4: #d1d6d8;
62
+ --stone-5: #b1b6b9;
63
+ --stone-6: #979b9d;
64
+ --stone-7: #7e8282;
65
+ --stone-8: #666968;
66
+ --stone-9: #50514f;
67
+ --stone-10: #3a3a37;
68
+ --stone-11: #252521;
69
+ --stone-12: #121210;
70
+ --red-0: #fff5f5;
71
+ --red-1: #ffe3e3;
72
+ --red-2: #ffc9c9;
73
+ --red-3: #ffa8a8;
74
+ --red-4: #ff8787;
75
+ --red-5: #ff6b6b;
76
+ --red-6: #fa5252;
77
+ --red-7: #f03e3e;
78
+ --red-8: #e03131;
79
+ --red-9: #c92a2a;
80
+ --red-10: #b02525;
81
+ --red-11: #962020;
82
+ --red-12: #7d1a1a;
83
+ --pink-0: #fff0f6;
84
+ --pink-1: #ffdeeb;
85
+ --pink-2: #fcc2d7;
86
+ --pink-3: #faa2c1;
87
+ --pink-4: #f783ac;
88
+ --pink-5: #f06595;
89
+ --pink-6: #e64980;
90
+ --pink-7: #d6336c;
91
+ --pink-8: #c2255c;
92
+ --pink-9: #a61e4d;
93
+ --pink-10: #8c1941;
94
+ --pink-11: #731536;
95
+ --pink-12: #59102a;
96
+ --purple-0: #f8f0fc;
97
+ --purple-1: #f3d9fa;
98
+ --purple-2: #eebefa;
99
+ --purple-3: #e599f7;
100
+ --purple-4: #da77f2;
101
+ --purple-5: #cc5de8;
102
+ --purple-6: #be4bdb;
103
+ --purple-7: #ae3ec9;
104
+ --purple-8: #9c36b5;
105
+ --purple-9: #862e9c;
106
+ --purple-10: #702682;
107
+ --purple-11: #5a1e69;
108
+ --purple-12: #44174f;
109
+ --violet-0: #f3f0ff;
110
+ --violet-1: #e5dbff;
111
+ --violet-2: #d0bfff;
112
+ --violet-3: #b197fc;
113
+ --violet-4: #9775fa;
114
+ --violet-5: #845ef7;
115
+ --violet-6: #7950f2;
116
+ --violet-7: #7048e8;
117
+ --violet-8: #6741d9;
118
+ --violet-9: #5f3dc4;
119
+ --violet-10: #5235ab;
120
+ --violet-11: #462d91;
121
+ --violet-12: #3a2578;
122
+ --indigo-0: #edf2ff;
123
+ --indigo-1: #dbe4ff;
124
+ --indigo-2: #bac8ff;
125
+ --indigo-3: #91a7ff;
126
+ --indigo-4: #748ffc;
127
+ --indigo-5: #5c7cfa;
128
+ --indigo-6: #4c6ef5;
129
+ --indigo-7: #4263eb;
130
+ --indigo-8: #3b5bdb;
131
+ --indigo-9: #364fc7;
132
+ --indigo-10: #2f44ad;
133
+ --indigo-11: #283a94;
134
+ --indigo-12: #21307a;
135
+ --blue-0: #e7f5ff;
136
+ --blue-1: #d0ebff;
137
+ --blue-2: #a5d8ff;
138
+ --blue-3: #74c0fc;
139
+ --blue-4: #4dabf7;
140
+ --blue-5: #339af0;
141
+ --blue-6: #228be6;
142
+ --blue-7: #1c7ed6;
143
+ --blue-8: #1971c2;
144
+ --blue-9: #1864ab;
145
+ --blue-10: #145591;
146
+ --blue-11: #114678;
147
+ --blue-12: #0d375e;
148
+ --cyan-0: #e3fafc;
149
+ --cyan-1: #c5f6fa;
150
+ --cyan-2: #99e9f2;
151
+ --cyan-3: #66d9e8;
152
+ --cyan-4: #3bc9db;
153
+ --cyan-5: #22b8cf;
154
+ --cyan-6: #15aabf;
155
+ --cyan-7: #1098ad;
156
+ --cyan-8: #0c8599;
157
+ --cyan-9: #0b7285;
158
+ --cyan-10: #095c6b;
159
+ --cyan-11: #074652;
160
+ --cyan-12: #053038;
161
+ --teal-0: #e6fcf5;
162
+ --teal-1: #c3fae8;
163
+ --teal-2: #96f2d7;
164
+ --teal-3: #63e6be;
165
+ --teal-4: #38d9a9;
166
+ --teal-5: #20c997;
167
+ --teal-6: #12b886;
168
+ --teal-7: #0ca678;
169
+ --teal-8: #099268;
170
+ --teal-9: #087f5b;
171
+ --teal-10: #066649;
172
+ --teal-11: #054d37;
173
+ --teal-12: #033325;
174
+ --green-0: #ebfbee;
175
+ --green-1: #d3f9d8;
176
+ --green-2: #b2f2bb;
177
+ --green-3: #8ce99a;
178
+ --green-4: #69db7c;
179
+ --green-5: #51cf66;
180
+ --green-6: #40c057;
181
+ --green-7: #37b24d;
182
+ --green-8: #2f9e44;
183
+ --green-9: #2b8a3e;
184
+ --green-10: #237032;
185
+ --green-11: #1b5727;
186
+ --green-12: #133d1b;
187
+ --lime-0: #f4fce3;
188
+ --lime-1: #e9fac8;
189
+ --lime-2: #d8f5a2;
190
+ --lime-3: #c0eb75;
191
+ --lime-4: #a9e34b;
192
+ --lime-5: #94d82d;
193
+ --lime-6: #82c91e;
194
+ --lime-7: #74b816;
195
+ --lime-8: #66a80f;
196
+ --lime-9: #5c940d;
197
+ --lime-10: #4c7a0b;
198
+ --lime-11: #3c6109;
199
+ --lime-12: #2c4706;
200
+ --yellow-0: #fff9db;
201
+ --yellow-1: #fff3bf;
202
+ --yellow-2: #ffec99;
203
+ --yellow-3: #ffe066;
204
+ --yellow-4: #ffd43b;
205
+ --yellow-5: #fcc419;
206
+ --yellow-6: #fab005;
207
+ --yellow-7: #f59f00;
208
+ --yellow-8: #f08c00;
209
+ --yellow-9: #e67700;
210
+ --yellow-10: #b35c00;
211
+ --yellow-11: #804200;
212
+ --yellow-12: #663500;
213
+ --orange-0: #fff4e6;
214
+ --orange-1: #ffe8cc;
215
+ --orange-2: #ffd8a8;
216
+ --orange-3: #ffc078;
217
+ --orange-4: #ffa94d;
218
+ --orange-5: #ff922b;
219
+ --orange-6: #fd7e14;
220
+ --orange-7: #f76707;
221
+ --orange-8: #e8590c;
222
+ --orange-9: #d9480f;
223
+ --orange-10: #bf400d;
224
+ --orange-11: #99330b;
225
+ --orange-12: #802b09;
226
+ --choco-0: #fff8dc;
227
+ --choco-1: #fce1bc;
228
+ --choco-2: #f7ca9e;
229
+ --choco-3: #f1b280;
230
+ --choco-4: #e99b62;
231
+ --choco-5: #df8545;
232
+ --choco-6: #d46e25;
233
+ --choco-7: #bd5f1b;
234
+ --choco-8: #a45117;
235
+ --choco-9: #8a4513;
236
+ --choco-10: #703a13;
237
+ --choco-11: #572f12;
238
+ --choco-12: #3d210d;
239
+ --brown-0: #faf4eb;
240
+ --brown-1: #ede0d1;
241
+ --brown-2: #e0cab7;
242
+ --brown-3: #d3b79e;
243
+ --brown-4: #c5a285;
244
+ --brown-5: #b78f6d;
245
+ --brown-6: #a87c56;
246
+ --brown-7: #956b47;
247
+ --brown-8: #825b3a;
248
+ --brown-9: #6f4b2d;
249
+ --brown-10: #5e3a21;
250
+ --brown-11: #4e2b15;
251
+ --brown-12: #422412;
252
+ --sand-0: #f8fafb;
253
+ --sand-1: #e6e4dc;
254
+ --sand-2: #d5cfbd;
255
+ --sand-3: #c2b9a0;
256
+ --sand-4: #aea58c;
257
+ --sand-5: #9a9178;
258
+ --sand-6: #867c65;
259
+ --sand-7: #736a53;
260
+ --sand-8: #5f5746;
261
+ --sand-9: #4b4639;
262
+ --sand-10: #38352d;
263
+ --sand-11: #252521;
264
+ --sand-12: #121210;
265
+ --camo-0: #f9fbe7;
266
+ --camo-1: #e8ed9c;
267
+ --camo-2: #d2df4e;
268
+ --camo-3: #c2ce34;
269
+ --camo-4: #b5bb2e;
270
+ --camo-5: #a7a827;
271
+ --camo-6: #999621;
272
+ --camo-7: #8c851c;
273
+ --camo-8: #7e7416;
274
+ --camo-9: #6d6414;
275
+ --camo-10: #5d5411;
276
+ --camo-11: #4d460e;
277
+ --camo-12: #36300a;
278
+ --jungle-0: #ecfeb0;
279
+ --jungle-1: #def39a;
280
+ --jungle-2: #d0e884;
281
+ --jungle-3: #c2dd6e;
282
+ --jungle-4: #b5d15b;
283
+ --jungle-5: #a8c648;
284
+ --jungle-6: #9bbb36;
285
+ --jungle-7: #8fb024;
286
+ --jungle-8: #84a513;
287
+ --jungle-9: #7a9908;
288
+ --jungle-10: #658006;
289
+ --jungle-11: #516605;
290
+ --jungle-12: #3d4d04;
291
+ }
@@ -15,6 +15,16 @@ export {
15
15
  getWeightCategory
16
16
  } from './analyzer.js';
17
17
 
18
+ /**
19
+ * @typedef {import('./analyzer.js').AnalysisResult} AnalysisResult
20
+ * @typedef {import('./analyzer.js').WeightInfo} WeightInfo
21
+ * @typedef {import('./analyzer.js').ValidationWarning} ValidationWarning
22
+ * @typedef {import('./analyzer.js').CustomValidation} CustomValidation
23
+ * @typedef {import('./analyzer.js').OrderingViolation} OrderingViolation
24
+ * @typedef {import('./analyzer.js').AnalysisResultWithOrdering} AnalysisResultWithOrdering
25
+ * @typedef {import('./analyzer.js').AnalyzeHeadOptions} AnalyzeHeadOptions
26
+ */
27
+
18
28
  // Rules API
19
29
  export {
20
30
  ElementWeights,
@@ -3,6 +3,11 @@ const Hues = {
3
3
  BLUE: 200
4
4
  };
5
5
 
6
+ /**
7
+ * Generate color swatches for a given hue
8
+ * @param {number} hue
9
+ * @returns {string[]}
10
+ */
6
11
  export function generateSwatches(hue) {
7
12
  return [
8
13
  `oklch(5% .1 ${hue})`,
@@ -19,6 +24,7 @@ export function generateSwatches(hue) {
19
24
  ];
20
25
  }
21
26
 
27
+ /** @type {string[]} */
22
28
  export const DEFAULT = [
23
29
  '#9e0142',
24
30
  '#d53e4f',
@@ -33,15 +39,23 @@ export const DEFAULT = [
33
39
  '#cccccc'
34
40
  ];
35
41
 
42
+ /** @type {string[]} */
36
43
  export const PINK = generateSwatches(Hues.PINK);
44
+ /** @type {string[]} */
37
45
  export const BLUE = generateSwatches(Hues.BLUE);
38
46
 
47
+ /** @type {Record<string, string[]>} */
39
48
  export const Palettes = {
40
49
  DEFAULT: DEFAULT,
41
50
  PINK: PINK,
42
51
  BLUE: BLUE
43
52
  };
44
53
 
54
+ /**
55
+ * Get striped background gradient for invalid element visualization
56
+ * @param {string} elementColor
57
+ * @returns {string}
58
+ */
45
59
  export function getInvalidBackgroundColor(elementColor) {
46
60
  let invalidColor = '#cccccc';
47
61
  if (elementColor == invalidColor) {
@@ -1,39 +1,103 @@
1
1
  import { getInvalidBackgroundColor } from "./colors.js";
2
2
 
3
+ /**
4
+ * @typedef {import('./options.js').Options} Options
5
+ * @typedef {import('../analyzer.js').AnalysisResult} AnalysisResult
6
+ *
7
+ * @typedef {Object} ConsoleOutput
8
+ * @property {(...args: any[]) => void} log
9
+ * @property {(...args: any[]) => void} warn
10
+ * @property {(...args: any[]) => void} error
11
+ * @property {(...args: any[]) => void} groupCollapsed
12
+ * @property {() => void} groupEnd
13
+ *
14
+ * @typedef {Object} HeadWeightInfo
15
+ * @property {any} [element]
16
+ * @property {number} weight
17
+ * @property {boolean} [isValid]
18
+ * @property {Record<string, any>} [customValidations]
19
+ *
20
+ * @typedef {Object} ElementVisualization
21
+ * @property {string} visual
22
+ * @property {string} style
23
+ *
24
+ * @typedef {Object} HeadVisualization
25
+ * @property {string} visual
26
+ * @property {string[]} styles
27
+ */
28
+
3
29
  export class IO {
4
- constructor(document, options, output = window.console) {
30
+ /**
31
+ * @param {Document|null} document
32
+ * @param {Options} options
33
+ * @param {ConsoleOutput|any} [output=window.console]
34
+ */
35
+ constructor(document, options, output = typeof window !== 'undefined' ? window.console : console) {
5
36
  this.document = document;
6
37
  this.options = options;
7
38
  this.console = output;
8
39
  this.isStaticHead = false;
40
+ /** @type {any} */
9
41
  this.head = null;
10
42
  }
11
43
 
44
+ /**
45
+ * @param {string} html
46
+ * @returns {string}
47
+ */
48
+ static formatStaticHeadHTML(html) {
49
+ if (/<head[\s>]/i.test(html)) {
50
+ return html.replace(/(\<\/?)(head)/gi, "$1static-head");
51
+ }
52
+ return `<static-head>${html}</static-head>`;
53
+ }
54
+
55
+ /**
56
+ * @param {any} head
57
+ */
58
+ initFromStaticHead(head) {
59
+ this.head = head;
60
+ this.isStaticHead = true;
61
+ }
62
+
63
+ /**
64
+ * @param {string} html
65
+ */
66
+ initFromHTML(html) {
67
+ const formattedHtml = IO.formatStaticHeadHTML(html.trim());
68
+ const parser = new (this.document?.defaultView?.DOMParser || DOMParser)();
69
+ const staticDoc = parser.parseFromString(formattedHtml, "text/html");
70
+ this.initFromStaticHead(staticDoc.querySelector("static-head") || staticDoc.head);
71
+ }
72
+
73
+ /**
74
+ * @returns {Promise<void>}
75
+ */
12
76
  async init() {
13
77
  if (this.head) {
14
78
  return;
15
79
  }
16
80
 
17
81
  if (this.options.prefersDynamicAssessment()) {
18
- this.head = this.document.querySelector("head");
82
+ this.head = this.document?.querySelector("head") || null;
19
83
  return;
20
84
  }
21
85
 
22
86
  try {
23
87
  let html = await this.getStaticHTML();
24
- html = html.replace(/(\<\/?)(head)/gi, "$1static-head");
25
- const staticDoc = this.document.implementation.createHTMLDocument("New Document");
26
- staticDoc.documentElement.innerHTML = html;
27
- this.head = staticDoc.querySelector("static-head");
88
+ html = IO.formatStaticHeadHTML(html);
89
+ const parser = new (this.document?.defaultView?.DOMParser || DOMParser)();
90
+ const staticDoc = parser.parseFromString(html, "text/html");
91
+ const staticHead = staticDoc.querySelector("static-head");
28
92
 
29
- if (this.head) {
30
- this.isStaticHead = true;
93
+ if (staticHead) {
94
+ this.initFromStaticHead(staticHead);
31
95
  } else {
32
- this.head = this.document.head;
96
+ this.head = this.document?.head || null;
33
97
  }
34
98
  } catch (e) {
35
99
  this.console.error(`${this.options.loggingPrefix}An exception occurred while getting the static <head>:`, e);
36
- this.head = this.document.head;
100
+ this.head = this.document?.head || null;
37
101
  }
38
102
 
39
103
  if (!this.isStaticHead) {
@@ -44,29 +108,48 @@ export class IO {
44
108
  }
45
109
  }
46
110
 
111
+ /**
112
+ * @returns {Promise<string>}
113
+ */
47
114
  async getStaticHTML() {
48
- const url = this.document.location.href;
115
+ const url = this.document?.location.href || '';
49
116
  const response = await fetch(url);
50
117
  return await response.text();
51
118
  }
52
119
 
120
+ /**
121
+ * @returns {any}
122
+ */
53
123
  getHead() {
54
124
  return this.head;
55
125
  }
56
126
 
127
+ /**
128
+ * @param {any} element
129
+ * @returns {string}
130
+ */
57
131
  stringifyElement(element) {
58
- return element.getAttributeNames().reduce((id, attr) => {
132
+ return element.getAttributeNames().reduce((/** @type {string} */ id, /** @type {string} */ attr) => {
59
133
  return (id += `[${CSS.escape(attr)}=${JSON.stringify(element.getAttribute(attr))}]`);
60
134
  }, element.nodeName);
61
135
  }
62
136
 
137
+ /**
138
+ * @param {any} element
139
+ * @returns {any}
140
+ */
63
141
  getLoggableElement(element) {
64
142
  if (!this.isStaticHead) {
65
143
  return element;
66
144
  }
67
145
 
146
+ const head = this.document?.head || this.head;
147
+ if (!head) {
148
+ return element;
149
+ }
150
+
68
151
  const selector = this.stringifyElement(element);
69
- const candidates = Array.from(this.document.head.querySelectorAll(selector));
152
+ const candidates = Array.from(head.querySelectorAll(selector));
70
153
  if (candidates.length == 0) {
71
154
  return element;
72
155
  }
@@ -75,14 +158,18 @@ export class IO {
75
158
  }
76
159
 
77
160
  // The way the static elements are parsed makes their innerHTML different.
78
- // Recreate the element in DOM and compare its innerHTML with those of the candidates.
79
- // This ensures a consistent parsing and positive string matches.
80
- const candidateWrapper = this.document.createElement("div");
81
- const elementWrapper = this.document.createElement("div");
82
- elementWrapper.innerHTML = element.innerHTML;
161
+ // Compare child nodes using isEqualNode to avoid unsafe innerHTML assignment.
162
+ // This ensures a consistent parsing and positive matches.
83
163
  const candidate = candidates.find((c) => {
84
- candidateWrapper.innerHTML = c.innerHTML;
85
- return candidateWrapper.innerHTML == elementWrapper.innerHTML;
164
+ if (c.childNodes.length !== element.childNodes.length) {
165
+ return false;
166
+ }
167
+ for (let i = 0; i < c.childNodes.length; i++) {
168
+ if (!c.childNodes[i].isEqualNode(element.childNodes[i])) {
169
+ return false;
170
+ }
171
+ }
172
+ return true;
86
173
  });
87
174
  if (candidate) {
88
175
  return candidate;
@@ -91,10 +178,14 @@ export class IO {
91
178
  return element;
92
179
  }
93
180
 
94
- // Note: AI-generated function.
181
+ /**
182
+ * Create an element from a CSS selector
183
+ * @param {string} selector
184
+ * @returns {any}
185
+ */
95
186
  createElementFromSelector(selector) {
96
- // Extract the tag name from the selector
97
- const tagName = selector.match(/^[A-Za-z]+/)[0];
187
+ const match = selector.match(/^[A-Za-z]+/);
188
+ const tagName = match ? match[0] : null;
98
189
 
99
190
  if (!tagName) {
100
191
  return;
@@ -121,14 +212,20 @@ export class IO {
121
212
  return element;
122
213
  }
123
214
 
215
+ /**
216
+ * @param {AnalysisResult} result
217
+ * @returns {HeadWeightInfo[]}
218
+ */
124
219
  logAnalysis(result) {
125
220
  const headElement = this.getHead();
126
221
  const headWeights = result.weights.map(w => {
127
222
  const customValidation = result.customValidations.find(v => v.element === w.element);
223
+ const validationWarning = result.validationWarnings.find(v => v.element === w.element || (v.elements && v.elements.includes(w.element)));
224
+ const isElementValid = !customValidation && !validationWarning;
128
225
  return {
129
226
  element: w.element,
130
227
  weight: w.weight,
131
- isValid: !customValidation,
228
+ isValid: isElementValid,
132
229
  customValidations: customValidation || {}
133
230
  };
134
231
  });
@@ -156,16 +253,36 @@ export class IO {
156
253
  return headWeights;
157
254
  }
158
255
 
159
- logElementFromSelector({ weight, selector, innerHTML, isValid, customValidations = {} }) {
160
- weight = +weight;
161
- const viz = this.getElementVisualization(weight, isValid);
256
+ /**
257
+ * @param {Object} params
258
+ * @param {number|string} params.weight
259
+ * @param {string} params.selector
260
+ * @param {string} params.html
261
+ * @param {boolean} [params.isValid]
262
+ * @param {Record<string, any>} [params.customValidations]
263
+ */
264
+ logElementFromSelector({ weight, selector, html, isValid, customValidations = {} }) {
265
+ const numWeight = +weight;
266
+ const viz = this.getElementVisualization(numWeight, isValid);
162
267
  let element = this.createElementFromSelector(selector);
163
- element.innerHTML = innerHTML;
268
+ const parser = new (this.document?.defaultView?.DOMParser || DOMParser)();
269
+ const doc = parser.parseFromString(html || "", "text/html");
270
+ const nodes = [...doc.head.childNodes, ...doc.body.childNodes];
271
+ nodes.forEach((child) => element.appendChild(child.cloneNode(true)));
164
272
  element = this.getLoggableElement(element);
165
273
 
166
- this.logElement({ viz, weight, element, isValid, customValidations });
274
+ this.logElement({ viz, weight: numWeight, element, isValid, customValidations });
167
275
  }
168
276
 
277
+ /**
278
+ * @param {Object} params
279
+ * @param {ElementVisualization} params.viz
280
+ * @param {number} params.weight
281
+ * @param {any} params.element
282
+ * @param {boolean} [params.isValid]
283
+ * @param {Record<string, any>} [params.customValidations]
284
+ * @param {boolean} [params.omitPrefix]
285
+ */
169
286
  logElement({ viz, weight, element, isValid, customValidations = {}, omitPrefix = false }) {
170
287
  if (!omitPrefix) {
171
288
  viz.visual = `${this.options.loggingPrefix}${viz.visual}`;
@@ -180,7 +297,7 @@ export class IO {
180
297
  }
181
298
 
182
299
  const { payload, warnings } = customValidations;
183
- if (payload) {
300
+ if (payload && Object.keys(payload).length > 0) {
184
301
  if (typeof payload.expiry == "string") {
185
302
  // Deserialize origin trial expiration dates.
186
303
  payload.expiry = new Date(payload.expiry);
@@ -191,7 +308,7 @@ export class IO {
191
308
  if (warnings?.length) {
192
309
  // Element-specific warnings.
193
310
  loggingLevel = "warn";
194
- args.push("\n" + warnings.map((warning) => ` ❌ ${warning}`).join("\n"));
311
+ args.push("\n" + warnings.map((/** @type {string} */ warning) => ` ❌ ${warning}`).join("\n"));
195
312
  } else if (!isValid && (this.options.prefersDynamicAssessment() || this.isStaticHead)) {
196
313
  // General warnings.
197
314
  loggingLevel = "warn";
@@ -201,6 +318,9 @@ export class IO {
201
318
  this.console[loggingLevel](...args);
202
319
  }
203
320
 
321
+ /**
322
+ * @param {Array<import('../analyzer.js').ValidationWarning>} warnings
323
+ */
204
324
  logValidationWarnings(warnings) {
205
325
  if (!this.options.isValidationEnabled()) {
206
326
  return;
@@ -212,19 +332,28 @@ export class IO {
212
332
  });
213
333
  }
214
334
 
335
+ /**
336
+ * @param {number} weight
337
+ * @returns {string}
338
+ */
215
339
  getColor(weight) {
216
340
  return this.options.palette[10 - weight];
217
341
  }
218
342
 
343
+ /**
344
+ * @param {HeadWeightInfo[]} elements
345
+ * @returns {HeadVisualization}
346
+ */
219
347
  getHeadVisualization(elements) {
220
348
  let visual = "";
349
+ /** @type {string[]} */
221
350
  const styles = [];
222
351
 
223
352
  elements.forEach(({ weight, isValid }) => {
224
353
  visual += "%c ";
225
354
 
226
355
  const color = this.getColor(weight);
227
- let style = `padding: 5px; margin: 0 -1px; `;
356
+ let style = `padding: 5px; margin: 4px -1px 0; display: inline-block; `;
228
357
 
229
358
  if (isValid) {
230
359
  style += `background-color: ${color};`;
@@ -238,6 +367,11 @@ export class IO {
238
367
  return { visual, styles };
239
368
  }
240
369
 
370
+ /**
371
+ * @param {number} weight
372
+ * @param {boolean} [isValid=true]
373
+ * @returns {ElementVisualization}
374
+ */
241
375
  getElementVisualization(weight, isValid = true) {
242
376
  const visual = `%c${new Array(weight + 1).fill("█").join("")}`;
243
377
  const color = this.getColor(weight);
@@ -246,6 +380,11 @@ export class IO {
246
380
  return { visual, style };
247
381
  }
248
382
 
383
+ /**
384
+ * @param {string} groupName
385
+ * @param {any} headElement
386
+ * @param {HeadWeightInfo[]} headWeights
387
+ */
249
388
  visualizeHead(groupName, headElement, headWeights) {
250
389
  const headViz = this.getHeadVisualization(headWeights);
251
390