@alexlit/lint-kit 167.3.0 → 168.0.0

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 (219) hide show
  1. package/package.json +1 -1
  2. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/LICENSE +21 -0
  3. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/README.md +54 -0
  4. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/base.d.ts +23 -0
  5. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/base.js +25 -0
  6. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/flat/base.d.ts +35 -0
  7. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/flat/base.js +35 -0
  8. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/flat/recommended.d.ts +1194 -0
  9. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/flat/recommended.js +39 -0
  10. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/recommended.d.ts +29 -0
  11. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/configs/recommended.js +29 -0
  12. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/index.d.ts +2532 -0
  13. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/index.js +62 -0
  14. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/key-format-style.d.ts +2 -0
  15. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/key-format-style.js +247 -0
  16. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-component.d.ts +2 -0
  17. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-component.js +85 -0
  18. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-place-attr.d.ts +2 -0
  19. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-place-attr.js +41 -0
  20. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-places-prop.d.ts +2 -0
  21. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-i18n-places-prop.js +36 -0
  22. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-modulo-syntax.d.ts +2 -0
  23. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-modulo-syntax.js +94 -0
  24. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-tc.d.ts +2 -0
  25. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-tc.js +42 -0
  26. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-v-t.d.ts +2 -0
  27. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-deprecated-v-t.js +33 -0
  28. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-duplicate-keys-in-locale.d.ts +2 -0
  29. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-duplicate-keys-in-locale.js +271 -0
  30. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-dynamic-keys.d.ts +2 -0
  31. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-dynamic-keys.js +105 -0
  32. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-html-messages.d.ts +2 -0
  33. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-html-messages.js +137 -0
  34. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-i18n-t-path-prop.d.ts +2 -0
  35. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-i18n-t-path-prop.js +44 -0
  36. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-missing-keys-in-other-locales.d.ts +2 -0
  37. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-missing-keys-in-other-locales.js +264 -0
  38. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-missing-keys.d.ts +2 -0
  39. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-missing-keys.js +111 -0
  40. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-raw-text.d.ts +2 -0
  41. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-raw-text.js +575 -0
  42. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-unknown-locale.d.ts +2 -0
  43. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-unknown-locale.js +198 -0
  44. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-unused-keys.d.ts +2 -0
  45. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-unused-keys.js +456 -0
  46. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-v-html.d.ts +2 -0
  47. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/no-v-html.js +50 -0
  48. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/prefer-linked-key-with-paren.d.ts +2 -0
  49. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/prefer-linked-key-with-paren.js +108 -0
  50. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/prefer-sfc-lang-attr.d.ts +2 -0
  51. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/prefer-sfc-lang-attr.js +58 -0
  52. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/sfc-locale-attr.d.ts +2 -0
  53. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/sfc-locale-attr.js +65 -0
  54. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/valid-message-syntax.d.ts +2 -0
  55. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/rules/valid-message-syntax.js +186 -0
  56. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/eslint.d.ts +216 -0
  57. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/eslint.js +2 -0
  58. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/i18n.d.ts +5 -0
  59. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/i18n.js +2 -0
  60. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/index.d.ts +6 -0
  61. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/index.js +22 -0
  62. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/nodes.d.ts +7 -0
  63. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/nodes.js +2 -0
  64. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/settings.d.ts +8 -0
  65. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/settings.js +2 -0
  66. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/types.d.ts +38 -0
  67. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/types.js +2 -0
  68. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/vue-parser-services.d.ts +32 -0
  69. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/types/vue-parser-services.js +2 -0
  70. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/cache-function.d.ts +2 -0
  71. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/cache-function.js +11 -0
  72. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/cache-loader.d.ts +10 -0
  73. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/cache-loader.js +27 -0
  74. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/casing.d.ts +10 -0
  75. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/casing.js +101 -0
  76. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/collect-keys.d.ts +13 -0
  77. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/collect-keys.js +160 -0
  78. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/collect-linked-keys.d.ts +2 -0
  79. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/collect-linked-keys.js +49 -0
  80. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/compat.d.ts +3 -0
  81. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/compat.js +35 -0
  82. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/default-timeouts.d.ts +6 -0
  83. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/default-timeouts.js +10 -0
  84. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/get-cwd.d.ts +2 -0
  85. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/get-cwd.js +9 -0
  86. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/glob-utils.d.ts +15 -0
  87. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/glob-utils.js +154 -0
  88. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/ignored-paths.d.ts +43 -0
  89. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/ignored-paths.js +234 -0
  90. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/index.d.ts +25 -0
  91. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/index.js +446 -0
  92. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/key-path.d.ts +2 -0
  93. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/key-path.js +27 -0
  94. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/locale-messages.d.ts +54 -0
  95. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/locale-messages.js +187 -0
  96. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/parser-v9.d.ts +8 -0
  97. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/parser-v9.js +40 -0
  98. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/parser.d.ts +5 -0
  99. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/parser.js +18 -0
  100. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/traverser.d.ts +6 -0
  101. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/traverser.js +31 -0
  102. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/utils.d.ts +28 -0
  103. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/message-compiler/utils.js +279 -0
  104. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/build-parser-using-flat-config.d.ts +2 -0
  105. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/build-parser-using-flat-config.js +11 -0
  106. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/build-parser-using-legacy-config.d.ts +2 -0
  107. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/build-parser-using-legacy-config.js +46 -0
  108. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/index.d.ts +4 -0
  109. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/index.js +18 -0
  110. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/parse-by-parser.d.ts +3 -0
  111. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/parse-by-parser.js +42 -0
  112. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/should-use-flat-config.d.ts +2 -0
  113. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/should-use-flat-config.js +54 -0
  114. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/worker.d.ts +1 -0
  115. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parser-config-resolver/worker.js +32 -0
  116. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parsers/index.d.ts +4 -0
  117. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/parsers/index.js +32 -0
  118. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/path-utils.d.ts +2 -0
  119. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/path-utils.js +21 -0
  120. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/regexp.d.ts +1 -0
  121. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/regexp.js +16 -0
  122. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/resource-loader.d.ts +10 -0
  123. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/resource-loader.js +32 -0
  124. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/rule.d.ts +9 -0
  125. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/dist/utils/rule.js +75 -0
  126. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/globals.json +3345 -0
  127. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/index.d.ts +3452 -0
  128. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/index.js +2 -0
  129. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/license +9 -0
  130. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/package.json +117 -0
  131. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/node_modules/globals/readme.md +42 -0
  132. package/packages/config-eslint/node_modules/@intlify/eslint-plugin-vue-i18n/package.json +147 -0
  133. package/packages/config-eslint/node_modules/glob/LICENSE +15 -0
  134. package/packages/config-eslint/node_modules/glob/README.md +1265 -0
  135. package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.d.ts +388 -0
  136. package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.d.ts.map +1 -0
  137. package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.js +247 -0
  138. package/packages/config-eslint/node_modules/glob/dist/commonjs/glob.js.map +1 -0
  139. package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.d.ts +14 -0
  140. package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.d.ts.map +1 -0
  141. package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.js +27 -0
  142. package/packages/config-eslint/node_modules/glob/dist/commonjs/has-magic.js.map +1 -0
  143. package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.d.ts +24 -0
  144. package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.d.ts.map +1 -0
  145. package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.js +119 -0
  146. package/packages/config-eslint/node_modules/glob/dist/commonjs/ignore.js.map +1 -0
  147. package/packages/config-eslint/node_modules/glob/dist/commonjs/index.d.ts +97 -0
  148. package/packages/config-eslint/node_modules/glob/dist/commonjs/index.d.ts.map +1 -0
  149. package/packages/config-eslint/node_modules/glob/dist/commonjs/index.js +68 -0
  150. package/packages/config-eslint/node_modules/glob/dist/commonjs/index.js.map +1 -0
  151. package/packages/config-eslint/node_modules/glob/dist/commonjs/package.json +3 -0
  152. package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.d.ts +76 -0
  153. package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.d.ts.map +1 -0
  154. package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.js +219 -0
  155. package/packages/config-eslint/node_modules/glob/dist/commonjs/pattern.js.map +1 -0
  156. package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.d.ts +59 -0
  157. package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.d.ts.map +1 -0
  158. package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.js +301 -0
  159. package/packages/config-eslint/node_modules/glob/dist/commonjs/processor.js.map +1 -0
  160. package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.d.ts +97 -0
  161. package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.d.ts.map +1 -0
  162. package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.js +387 -0
  163. package/packages/config-eslint/node_modules/glob/dist/commonjs/walker.js.map +1 -0
  164. package/packages/config-eslint/node_modules/glob/dist/esm/bin.d.mts +3 -0
  165. package/packages/config-eslint/node_modules/glob/dist/esm/bin.d.mts.map +1 -0
  166. package/packages/config-eslint/node_modules/glob/dist/esm/bin.mjs +346 -0
  167. package/packages/config-eslint/node_modules/glob/dist/esm/bin.mjs.map +1 -0
  168. package/packages/config-eslint/node_modules/glob/dist/esm/glob.d.ts +388 -0
  169. package/packages/config-eslint/node_modules/glob/dist/esm/glob.d.ts.map +1 -0
  170. package/packages/config-eslint/node_modules/glob/dist/esm/glob.js +243 -0
  171. package/packages/config-eslint/node_modules/glob/dist/esm/glob.js.map +1 -0
  172. package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.d.ts +14 -0
  173. package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.d.ts.map +1 -0
  174. package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.js +23 -0
  175. package/packages/config-eslint/node_modules/glob/dist/esm/has-magic.js.map +1 -0
  176. package/packages/config-eslint/node_modules/glob/dist/esm/ignore.d.ts +24 -0
  177. package/packages/config-eslint/node_modules/glob/dist/esm/ignore.d.ts.map +1 -0
  178. package/packages/config-eslint/node_modules/glob/dist/esm/ignore.js +115 -0
  179. package/packages/config-eslint/node_modules/glob/dist/esm/ignore.js.map +1 -0
  180. package/packages/config-eslint/node_modules/glob/dist/esm/index.d.ts +97 -0
  181. package/packages/config-eslint/node_modules/glob/dist/esm/index.d.ts.map +1 -0
  182. package/packages/config-eslint/node_modules/glob/dist/esm/index.js +55 -0
  183. package/packages/config-eslint/node_modules/glob/dist/esm/index.js.map +1 -0
  184. package/packages/config-eslint/node_modules/glob/dist/esm/package.json +3 -0
  185. package/packages/config-eslint/node_modules/glob/dist/esm/pattern.d.ts +76 -0
  186. package/packages/config-eslint/node_modules/glob/dist/esm/pattern.d.ts.map +1 -0
  187. package/packages/config-eslint/node_modules/glob/dist/esm/pattern.js +215 -0
  188. package/packages/config-eslint/node_modules/glob/dist/esm/pattern.js.map +1 -0
  189. package/packages/config-eslint/node_modules/glob/dist/esm/processor.d.ts +59 -0
  190. package/packages/config-eslint/node_modules/glob/dist/esm/processor.d.ts.map +1 -0
  191. package/packages/config-eslint/node_modules/glob/dist/esm/processor.js +294 -0
  192. package/packages/config-eslint/node_modules/glob/dist/esm/processor.js.map +1 -0
  193. package/packages/config-eslint/node_modules/glob/dist/esm/walker.d.ts +97 -0
  194. package/packages/config-eslint/node_modules/glob/dist/esm/walker.d.ts.map +1 -0
  195. package/packages/config-eslint/node_modules/glob/dist/esm/walker.js +381 -0
  196. package/packages/config-eslint/node_modules/glob/dist/esm/walker.js.map +1 -0
  197. package/packages/config-eslint/node_modules/glob/package.json +99 -0
  198. package/packages/config-eslint/node_modules/ignore/LICENSE-MIT +21 -0
  199. package/packages/config-eslint/node_modules/ignore/README.md +452 -0
  200. package/packages/config-eslint/node_modules/ignore/index.d.ts +81 -0
  201. package/packages/config-eslint/node_modules/ignore/index.js +784 -0
  202. package/packages/config-eslint/node_modules/ignore/legacy.js +681 -0
  203. package/packages/config-eslint/node_modules/ignore/package.json +87 -0
  204. package/packages/config-eslint/node_modules/synckit/LICENSE +21 -0
  205. package/packages/config-eslint/node_modules/synckit/README.md +245 -0
  206. package/packages/config-eslint/node_modules/synckit/index.d.cts +3 -0
  207. package/packages/config-eslint/node_modules/synckit/lib/index.cjs +590 -0
  208. package/packages/config-eslint/node_modules/synckit/lib/index.d.ts +43 -0
  209. package/packages/config-eslint/node_modules/synckit/lib/index.js +476 -0
  210. package/packages/config-eslint/node_modules/synckit/lib/index.js.map +1 -0
  211. package/packages/config-eslint/node_modules/synckit/lib/types.d.ts +40 -0
  212. package/packages/config-eslint/node_modules/synckit/lib/types.js +2 -0
  213. package/packages/config-eslint/node_modules/synckit/lib/types.js.map +1 -0
  214. package/packages/config-eslint/node_modules/synckit/package.json +46 -0
  215. package/packages/config-eslint/package.json +9 -9
  216. package/packages/config-eslint/plugins/unicorn.js +2 -0
  217. package/packages/config-eslint/plugins/vue.js +1 -0
  218. package/packages/config-prettier/package.json +3 -3
  219. package/packages/config-stylelint/package.json +2 -2
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ const base_1 = __importDefault(require("./configs/base"));
6
+ const recommended_1 = __importDefault(require("./configs/recommended"));
7
+ const base_2 = __importDefault(require("./configs/flat/base"));
8
+ const recommended_2 = __importDefault(require("./configs/flat/recommended"));
9
+ const key_format_style_1 = __importDefault(require("./rules/key-format-style"));
10
+ const no_deprecated_i18n_component_1 = __importDefault(require("./rules/no-deprecated-i18n-component"));
11
+ const no_deprecated_i18n_place_attr_1 = __importDefault(require("./rules/no-deprecated-i18n-place-attr"));
12
+ const no_deprecated_i18n_places_prop_1 = __importDefault(require("./rules/no-deprecated-i18n-places-prop"));
13
+ const no_deprecated_modulo_syntax_1 = __importDefault(require("./rules/no-deprecated-modulo-syntax"));
14
+ const no_deprecated_tc_1 = __importDefault(require("./rules/no-deprecated-tc"));
15
+ const no_deprecated_v_t_1 = __importDefault(require("./rules/no-deprecated-v-t"));
16
+ const no_duplicate_keys_in_locale_1 = __importDefault(require("./rules/no-duplicate-keys-in-locale"));
17
+ const no_dynamic_keys_1 = __importDefault(require("./rules/no-dynamic-keys"));
18
+ const no_html_messages_1 = __importDefault(require("./rules/no-html-messages"));
19
+ const no_i18n_t_path_prop_1 = __importDefault(require("./rules/no-i18n-t-path-prop"));
20
+ const no_missing_keys_in_other_locales_1 = __importDefault(require("./rules/no-missing-keys-in-other-locales"));
21
+ const no_missing_keys_1 = __importDefault(require("./rules/no-missing-keys"));
22
+ const no_raw_text_1 = __importDefault(require("./rules/no-raw-text"));
23
+ const no_unknown_locale_1 = __importDefault(require("./rules/no-unknown-locale"));
24
+ const no_unused_keys_1 = __importDefault(require("./rules/no-unused-keys"));
25
+ const no_v_html_1 = __importDefault(require("./rules/no-v-html"));
26
+ const prefer_linked_key_with_paren_1 = __importDefault(require("./rules/prefer-linked-key-with-paren"));
27
+ const prefer_sfc_lang_attr_1 = __importDefault(require("./rules/prefer-sfc-lang-attr"));
28
+ const sfc_locale_attr_1 = __importDefault(require("./rules/sfc-locale-attr"));
29
+ const valid_message_syntax_1 = __importDefault(require("./rules/valid-message-syntax"));
30
+ module.exports = {
31
+ configs: {
32
+ 'base-legacy': base_1.default,
33
+ 'recommended-legacy': recommended_1.default,
34
+ base: base_2.default,
35
+ recommended: recommended_2.default,
36
+ 'flat/base': base_2.default,
37
+ 'flat/recommended': recommended_2.default
38
+ },
39
+ rules: {
40
+ 'key-format-style': key_format_style_1.default,
41
+ 'no-deprecated-i18n-component': no_deprecated_i18n_component_1.default,
42
+ 'no-deprecated-i18n-place-attr': no_deprecated_i18n_place_attr_1.default,
43
+ 'no-deprecated-i18n-places-prop': no_deprecated_i18n_places_prop_1.default,
44
+ 'no-deprecated-modulo-syntax': no_deprecated_modulo_syntax_1.default,
45
+ 'no-deprecated-tc': no_deprecated_tc_1.default,
46
+ 'no-deprecated-v-t': no_deprecated_v_t_1.default,
47
+ 'no-duplicate-keys-in-locale': no_duplicate_keys_in_locale_1.default,
48
+ 'no-dynamic-keys': no_dynamic_keys_1.default,
49
+ 'no-html-messages': no_html_messages_1.default,
50
+ 'no-i18n-t-path-prop': no_i18n_t_path_prop_1.default,
51
+ 'no-missing-keys-in-other-locales': no_missing_keys_in_other_locales_1.default,
52
+ 'no-missing-keys': no_missing_keys_1.default,
53
+ 'no-raw-text': no_raw_text_1.default,
54
+ 'no-unknown-locale': no_unknown_locale_1.default,
55
+ 'no-unused-keys': no_unused_keys_1.default,
56
+ 'no-v-html': no_v_html_1.default,
57
+ 'prefer-linked-key-with-paren': prefer_linked_key_with_paren_1.default,
58
+ 'prefer-sfc-lang-attr': prefer_sfc_lang_attr_1.default,
59
+ 'sfc-locale-attr': sfc_locale_attr_1.default,
60
+ 'valid-message-syntax': valid_message_syntax_1.default
61
+ }
62
+ };
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,247 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ const path_1 = require("path");
6
+ const index_1 = require("../utils/index");
7
+ const debug_1 = __importDefault(require("debug"));
8
+ const casing_1 = require("../utils/casing");
9
+ const rule_1 = require("../utils/rule");
10
+ const compat_1 = require("../utils/compat");
11
+ const debug = (0, debug_1.default)('eslint-plugin-vue-i18n:key-format-style');
12
+ const allowedCaseOptions = [
13
+ 'camelCase',
14
+ 'kebab-case',
15
+ 'lowercase',
16
+ 'snake_case',
17
+ 'SCREAMING_SNAKE_CASE'
18
+ ];
19
+ function create(context) {
20
+ var _a, _b, _c;
21
+ const filename = (0, compat_1.getFilename)(context);
22
+ const sourceCode = (0, compat_1.getSourceCode)(context);
23
+ const expectCasing = (_a = context.options[0]) !== null && _a !== void 0 ? _a : 'camelCase';
24
+ const checker = (0, casing_1.getCasingChecker)(expectCasing);
25
+ const allowArray = (_b = context.options[1]) === null || _b === void 0 ? void 0 : _b.allowArray;
26
+ const splitByDotsOption = (_c = context.options[1]) === null || _c === void 0 ? void 0 : _c.splitByDots;
27
+ function reportUnknown(reportNode) {
28
+ context.report({
29
+ message: `Unexpected object key. Use ${expectCasing} string key instead`,
30
+ loc: reportNode.loc
31
+ });
32
+ }
33
+ function verifyKeyForString(key, reportNode) {
34
+ for (const target of splitByDotsOption && key.includes('.')
35
+ ? splitByDots(key, reportNode)
36
+ : [{ key, loc: reportNode.loc }]) {
37
+ if (!checker(target.key)) {
38
+ context.report({
39
+ message: `"{{key}}" is not {{expectCasing}}`,
40
+ loc: target.loc,
41
+ data: {
42
+ key: target.key,
43
+ expectCasing
44
+ }
45
+ });
46
+ }
47
+ }
48
+ }
49
+ function verifyKeyForNumber(key, reportNode) {
50
+ if (!allowArray) {
51
+ context.report({
52
+ message: `Unexpected array element`,
53
+ loc: reportNode.loc
54
+ });
55
+ }
56
+ }
57
+ function splitByDots(key, reportNode) {
58
+ const result = [];
59
+ let startIndex = 0;
60
+ let index;
61
+ while ((index = key.indexOf('.', startIndex)) >= 0) {
62
+ const getLoc = buildGetLocation(startIndex, index);
63
+ result.push({
64
+ key: key.slice(startIndex, index),
65
+ get loc() {
66
+ return getLoc();
67
+ }
68
+ });
69
+ startIndex = index + 1;
70
+ }
71
+ const getLoc = buildGetLocation(startIndex, key.length);
72
+ result.push({
73
+ key: key.slice(startIndex, index),
74
+ get loc() {
75
+ return getLoc();
76
+ }
77
+ });
78
+ return result;
79
+ function buildGetLocation(start, end) {
80
+ const offset = reportNode.type === 'JSONLiteral' ||
81
+ (reportNode.type === 'YAMLScalar' &&
82
+ (reportNode.style === 'double-quoted' ||
83
+ reportNode.style === 'single-quoted'))
84
+ ? reportNode.range[0] + 1
85
+ : reportNode.range[0];
86
+ let cachedLoc;
87
+ return () => {
88
+ if (cachedLoc) {
89
+ return cachedLoc;
90
+ }
91
+ return (cachedLoc = {
92
+ start: sourceCode.getLocFromIndex(offset + start),
93
+ end: sourceCode.getLocFromIndex(offset + end)
94
+ });
95
+ };
96
+ }
97
+ }
98
+ function createVisitorForJson(targetLocaleMessage) {
99
+ let keyStack = {
100
+ inLocale: targetLocaleMessage.isResolvedLocaleByFileName()
101
+ };
102
+ return {
103
+ JSONProperty(node) {
104
+ const { inLocale } = keyStack;
105
+ keyStack = {
106
+ node,
107
+ inLocale: true,
108
+ upper: keyStack
109
+ };
110
+ if (!inLocale) {
111
+ return;
112
+ }
113
+ const key = node.key.type === 'JSONLiteral' ? `${node.key.value}` : node.key.name;
114
+ verifyKeyForString(key, node.key);
115
+ },
116
+ 'JSONProperty:exit'() {
117
+ keyStack = keyStack.upper;
118
+ },
119
+ 'JSONArrayExpression > *'(node) {
120
+ const key = node.parent.elements.indexOf(node);
121
+ verifyKeyForNumber(key, node);
122
+ }
123
+ };
124
+ }
125
+ function createVisitorForYaml(targetLocaleMessage) {
126
+ const yamlKeyNodes = new Set();
127
+ let keyStack = {
128
+ inLocale: targetLocaleMessage.isResolvedLocaleByFileName()
129
+ };
130
+ function withinKey(node) {
131
+ for (const keyNode of yamlKeyNodes) {
132
+ if (keyNode.range[0] <= node.range[0] &&
133
+ node.range[0] < keyNode.range[1]) {
134
+ return true;
135
+ }
136
+ }
137
+ return false;
138
+ }
139
+ return {
140
+ YAMLPair(node) {
141
+ const { inLocale } = keyStack;
142
+ keyStack = {
143
+ node,
144
+ inLocale: true,
145
+ upper: keyStack
146
+ };
147
+ if (!inLocale) {
148
+ return;
149
+ }
150
+ if (node.key != null) {
151
+ if (withinKey(node)) {
152
+ return;
153
+ }
154
+ yamlKeyNodes.add(node.key);
155
+ }
156
+ if (node.key == null) {
157
+ reportUnknown(node);
158
+ }
159
+ else if (node.key.type === 'YAMLScalar') {
160
+ const keyValue = node.key.value;
161
+ const key = typeof keyValue === 'string' ? keyValue : String(keyValue);
162
+ verifyKeyForString(key, node.key);
163
+ }
164
+ else {
165
+ reportUnknown(node);
166
+ }
167
+ },
168
+ 'YAMLPair:exit'() {
169
+ keyStack = keyStack.upper;
170
+ },
171
+ 'YAMLSequence > *'(node) {
172
+ if (withinKey(node)) {
173
+ return;
174
+ }
175
+ const key = node.parent.entries.indexOf(node);
176
+ verifyKeyForNumber(key, node);
177
+ }
178
+ };
179
+ }
180
+ if ((0, path_1.extname)(filename) === '.vue') {
181
+ return (0, index_1.defineCustomBlocksVisitor)(context, ctx => {
182
+ const localeMessages = (0, index_1.getLocaleMessages)(context);
183
+ const targetLocaleMessage = localeMessages.findBlockLocaleMessage(ctx.parserServices.customBlock);
184
+ if (!targetLocaleMessage) {
185
+ return {};
186
+ }
187
+ return createVisitorForJson(targetLocaleMessage);
188
+ }, ctx => {
189
+ const localeMessages = (0, index_1.getLocaleMessages)(context);
190
+ const targetLocaleMessage = localeMessages.findBlockLocaleMessage(ctx.parserServices.customBlock);
191
+ if (!targetLocaleMessage) {
192
+ return {};
193
+ }
194
+ return createVisitorForYaml(targetLocaleMessage);
195
+ });
196
+ }
197
+ else if (sourceCode.parserServices.isJSON ||
198
+ sourceCode.parserServices.isYAML) {
199
+ const localeMessages = (0, index_1.getLocaleMessages)(context);
200
+ const targetLocaleMessage = localeMessages.findExistLocaleMessage(filename);
201
+ if (!targetLocaleMessage) {
202
+ debug(`ignore ${filename} in key-format-style`);
203
+ return {};
204
+ }
205
+ if (sourceCode.parserServices.isJSON) {
206
+ return createVisitorForJson(targetLocaleMessage);
207
+ }
208
+ else if (sourceCode.parserServices.isYAML) {
209
+ return createVisitorForYaml(targetLocaleMessage);
210
+ }
211
+ return {};
212
+ }
213
+ else {
214
+ debug(`ignore ${filename} in key-format-style`);
215
+ return {};
216
+ }
217
+ }
218
+ module.exports = (0, rule_1.createRule)({
219
+ meta: {
220
+ type: 'layout',
221
+ docs: {
222
+ description: 'enforce specific casing for localization keys',
223
+ category: 'Best Practices',
224
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/key-format-style.html',
225
+ recommended: false
226
+ },
227
+ fixable: null,
228
+ schema: [
229
+ {
230
+ enum: [...allowedCaseOptions]
231
+ },
232
+ {
233
+ type: 'object',
234
+ properties: {
235
+ allowArray: {
236
+ type: 'boolean'
237
+ },
238
+ splitByDots: {
239
+ type: 'boolean'
240
+ }
241
+ },
242
+ additionalProperties: false
243
+ }
244
+ ]
245
+ },
246
+ create
247
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ const index_1 = require("../utils/index");
3
+ const rule_1 = require("../utils/rule");
4
+ const compat_1 = require("../utils/compat");
5
+ function create(context) {
6
+ return (0, index_1.defineTemplateBodyVisitor)(context, {
7
+ VElement(node) {
8
+ if (node.name !== 'i18n') {
9
+ return;
10
+ }
11
+ const sourceCode = (0, compat_1.getSourceCode)(context);
12
+ const tokenStore = sourceCode.parserServices.getTemplateBodyTokenStore();
13
+ const tagNameToken = tokenStore.getFirstToken(node.startTag);
14
+ context.report({
15
+ node: tagNameToken,
16
+ messageId: 'deprecated',
17
+ *fix(fixer) {
18
+ yield fixer.replaceText(tagNameToken, '<i18n-t');
19
+ let hasTag = false;
20
+ for (const attr of node.startTag.attributes) {
21
+ if (attr.directive) {
22
+ if (attr.key.name.name !== 'bind') {
23
+ continue;
24
+ }
25
+ if (!attr.key.argument ||
26
+ attr.key.argument.type !== 'VIdentifier') {
27
+ continue;
28
+ }
29
+ if (attr.key.argument.name === 'path') {
30
+ yield fixer.replaceText(attr.key.argument, 'keypath');
31
+ }
32
+ else if (attr.key.argument.name === 'tag') {
33
+ hasTag = true;
34
+ if (attr.value &&
35
+ attr.value.expression &&
36
+ attr.value.expression.type === 'Literal' &&
37
+ typeof attr.value.expression.value === 'boolean') {
38
+ if (attr.value.expression.value) {
39
+ yield fixer.replaceText(attr, 'tag="span"');
40
+ }
41
+ else {
42
+ yield fixer.remove(attr);
43
+ }
44
+ }
45
+ }
46
+ }
47
+ else {
48
+ if (attr.key.name === 'path') {
49
+ yield fixer.replaceText(attr.key, 'keypath');
50
+ }
51
+ else if (attr.key.name === 'tag') {
52
+ hasTag = true;
53
+ }
54
+ }
55
+ }
56
+ if (!hasTag) {
57
+ yield fixer.insertTextAfter((node.startTag.attributes.length > 0 &&
58
+ node.startTag.attributes[node.startTag.attributes.length - 1]) ||
59
+ tagNameToken, ' tag="span"');
60
+ }
61
+ if (node.endTag) {
62
+ yield fixer.replaceText(tokenStore.getFirstToken(node.endTag), '</i18n-t');
63
+ }
64
+ }
65
+ });
66
+ }
67
+ });
68
+ }
69
+ module.exports = (0, rule_1.createRule)({
70
+ meta: {
71
+ type: 'problem',
72
+ docs: {
73
+ description: 'disallow using deprecated `<i18n>` components (in Vue I18n 9.0.0+)',
74
+ category: 'Recommended',
75
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-component.html',
76
+ recommended: true
77
+ },
78
+ fixable: 'code',
79
+ schema: [],
80
+ messages: {
81
+ deprecated: 'Deprecated <i18n> component was found. For VueI18n v9.0, use <i18n-t> component instead.'
82
+ }
83
+ },
84
+ create
85
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ const index_1 = require("../utils/index");
3
+ const rule_1 = require("../utils/rule");
4
+ function create(context) {
5
+ return (0, index_1.defineTemplateBodyVisitor)(context, {
6
+ VElement(node) {
7
+ if (node.name !== 'i18n' && node.name !== 'i18n-t') {
8
+ return;
9
+ }
10
+ for (const child of node.children) {
11
+ if (child.type !== 'VElement') {
12
+ continue;
13
+ }
14
+ const placeAttr = (0, index_1.getAttribute)(child, 'place') || (0, index_1.getDirective)(child, 'bind', 'place');
15
+ if (placeAttr) {
16
+ context.report({
17
+ node: placeAttr.key,
18
+ messageId: 'deprecated'
19
+ });
20
+ }
21
+ }
22
+ }
23
+ });
24
+ }
25
+ module.exports = (0, rule_1.createRule)({
26
+ meta: {
27
+ type: 'problem',
28
+ docs: {
29
+ description: 'disallow using deprecated `place` attribute (Removed in Vue I18n 9.0.0+)',
30
+ category: 'Recommended',
31
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-place-attr.html',
32
+ recommended: true
33
+ },
34
+ fixable: null,
35
+ schema: [],
36
+ messages: {
37
+ deprecated: 'Deprecated `place` attribute was found. Use v-slot instead.'
38
+ }
39
+ },
40
+ create
41
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ const index_1 = require("../utils/index");
3
+ const rule_1 = require("../utils/rule");
4
+ function create(context) {
5
+ return (0, index_1.defineTemplateBodyVisitor)(context, {
6
+ VElement(node) {
7
+ if (node.name !== 'i18n' && node.name !== 'i18n-t') {
8
+ return;
9
+ }
10
+ const placesProp = (0, index_1.getAttribute)(node, 'places') || (0, index_1.getDirective)(node, 'bind', 'places');
11
+ if (placesProp) {
12
+ context.report({
13
+ node: placesProp.key,
14
+ messageId: 'deprecated'
15
+ });
16
+ }
17
+ }
18
+ });
19
+ }
20
+ module.exports = (0, rule_1.createRule)({
21
+ meta: {
22
+ type: 'problem',
23
+ docs: {
24
+ description: 'disallow using deprecated `places` prop (Removed in Vue I18n 9.0.0+)',
25
+ category: 'Recommended',
26
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-i18n-places-prop.html',
27
+ recommended: true
28
+ },
29
+ fixable: null,
30
+ schema: [],
31
+ messages: {
32
+ deprecated: 'Deprecated `places` prop was found. Use v-slot instead.'
33
+ }
34
+ },
35
+ create
36
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ const node_path_1 = require("node:path");
6
+ const debug_1 = __importDefault(require("debug"));
7
+ const index_1 = require("../utils/index");
8
+ const utils_1 = require("../utils/message-compiler/utils");
9
+ const parser_v9_1 = require("../utils/message-compiler/parser-v9");
10
+ const traverser_1 = require("../utils/message-compiler/traverser");
11
+ const rule_1 = require("../utils/rule");
12
+ const compat_1 = require("../utils/compat");
13
+ const debug = (0, debug_1.default)('eslint-plugin-vue-i18n:no-deprecated-modulo-syntax');
14
+ function create(context) {
15
+ const filename = (0, compat_1.getFilename)(context);
16
+ const sourceCode = (0, compat_1.getSourceCode)(context);
17
+ const messageSyntaxVersions = (0, utils_1.getMessageSyntaxVersions)(context);
18
+ function verifyForV9(message, reportNode, getReportOffset) {
19
+ const { ast, errors } = (0, parser_v9_1.parse)(message);
20
+ if (errors.length) {
21
+ return;
22
+ }
23
+ (0, traverser_1.traverseNode)(ast, node => {
24
+ if (node.type !== utils_1.NodeTypes.Named || !node.modulo) {
25
+ return;
26
+ }
27
+ let range = null;
28
+ const start = getReportOffset(node.loc.start.offset);
29
+ const end = getReportOffset(node.loc.end.offset);
30
+ if (start != null && end != null) {
31
+ range = [start - 1, end];
32
+ }
33
+ context.report({
34
+ loc: range
35
+ ? {
36
+ start: sourceCode.getLocFromIndex(range[0]),
37
+ end: sourceCode.getLocFromIndex(range[1])
38
+ }
39
+ : reportNode.loc,
40
+ message: 'The modulo interpolation must be enforced to named interpolation.',
41
+ fix(fixer) {
42
+ return range ? fixer.removeRange([range[0], range[0] + 1]) : null;
43
+ }
44
+ });
45
+ });
46
+ }
47
+ function verifyMessage(message, reportNode, getReportOffset) {
48
+ if (messageSyntaxVersions.reportIfMissingSetting()) {
49
+ return;
50
+ }
51
+ if (messageSyntaxVersions.v9) {
52
+ verifyForV9(message, reportNode, getReportOffset);
53
+ }
54
+ }
55
+ const createVisitorForJson = (0, rule_1.defineCreateVisitorForJson)(verifyMessage);
56
+ const createVisitorForYaml = (0, rule_1.defineCreateVisitorForYaml)(verifyMessage);
57
+ if ((0, node_path_1.extname)(filename) === '.vue') {
58
+ return (0, index_1.defineCustomBlocksVisitor)(context, createVisitorForJson, createVisitorForYaml);
59
+ }
60
+ else if (sourceCode.parserServices.isJSON ||
61
+ sourceCode.parserServices.isYAML) {
62
+ const localeMessages = (0, index_1.getLocaleMessages)(context);
63
+ const targetLocaleMessage = localeMessages.findExistLocaleMessage(filename);
64
+ if (!targetLocaleMessage) {
65
+ debug(`ignore ${filename} in no-deprecated-modulo-syntax`);
66
+ return {};
67
+ }
68
+ if (sourceCode.parserServices.isJSON) {
69
+ return createVisitorForJson(context);
70
+ }
71
+ else if (sourceCode.parserServices.isYAML) {
72
+ return createVisitorForYaml(context);
73
+ }
74
+ return {};
75
+ }
76
+ else {
77
+ debug(`ignore ${filename} in no-deprecated-modulo-syntax`);
78
+ return {};
79
+ }
80
+ }
81
+ module.exports = (0, rule_1.createRule)({
82
+ meta: {
83
+ type: 'problem',
84
+ docs: {
85
+ description: 'enforce modulo interpolation to be named interpolation',
86
+ category: 'Recommended',
87
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-modulo-syntax.html',
88
+ recommended: true
89
+ },
90
+ fixable: 'code',
91
+ schema: []
92
+ },
93
+ create
94
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ const index_1 = require("../utils/index");
3
+ const rule_1 = require("../utils/rule");
4
+ function checkCallExpression(context, node) {
5
+ const funcName = (node.callee.type === 'MemberExpression' &&
6
+ node.callee.property.type === 'Identifier' &&
7
+ node.callee.property.name) ||
8
+ (node.callee.type === 'Identifier' && node.callee.name) ||
9
+ '';
10
+ if (/^(\$tc|tc)$/.test(funcName)) {
11
+ context.report({
12
+ node,
13
+ message: `'${funcName}' is used, but it is deprecated. Use 't' or '$t' instead.`
14
+ });
15
+ return;
16
+ }
17
+ }
18
+ function create(context) {
19
+ return (0, index_1.defineTemplateBodyVisitor)(context, {
20
+ CallExpression(node) {
21
+ checkCallExpression(context, node);
22
+ }
23
+ }, {
24
+ CallExpression(node) {
25
+ checkCallExpression(context, node);
26
+ }
27
+ });
28
+ }
29
+ module.exports = (0, rule_1.createRule)({
30
+ meta: {
31
+ type: 'problem',
32
+ docs: {
33
+ description: 'disallow using deprecated `tc` or `$tc` (Deprecated in Vue I18n 10.0.0, removed fully in Vue I18n 11.0.0)',
34
+ category: 'Recommended',
35
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-tc.html',
36
+ recommended: true
37
+ },
38
+ fixable: null,
39
+ schema: []
40
+ },
41
+ create
42
+ });
@@ -0,0 +1,2 @@
1
+ declare const _default: import("../types").RuleModule;
2
+ export = _default;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ const index_1 = require("../utils/index");
3
+ const rule_1 = require("../utils/rule");
4
+ function checkDirective(context, node) {
5
+ context.report({
6
+ node,
7
+ message: `'v-t' custom directive is used, but it is deprecated. Use 't' or '$t' instead.`
8
+ });
9
+ }
10
+ function create(context) {
11
+ return (0, index_1.defineTemplateBodyVisitor)(context, {
12
+ "VAttribute[directive=true][key.name='t']"(node) {
13
+ checkDirective(context, node);
14
+ },
15
+ "VAttribute[directive=true][key.name.name='t']"(node) {
16
+ checkDirective(context, node);
17
+ }
18
+ });
19
+ }
20
+ module.exports = (0, rule_1.createRule)({
21
+ meta: {
22
+ type: 'problem',
23
+ docs: {
24
+ description: 'disallow using deprecated `v-t` custom directive (Deprecated in Vue I18n 11.0.0, removed fully in Vue I18n 12.0.0)',
25
+ category: 'Recommended',
26
+ url: 'https://eslint-plugin-vue-i18n.intlify.dev/rules/no-deprecated-v-t.html',
27
+ recommended: true
28
+ },
29
+ fixable: null,
30
+ schema: []
31
+ },
32
+ create
33
+ });