@vcollab/yaml-language-server-tag-validation 1.22.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 (865) hide show
  1. package/CHANGELOG.md +712 -0
  2. package/CONTRIBUTING.md +8 -0
  3. package/DCO +37 -0
  4. package/Dockerfile +11 -0
  5. package/LICENSE +21 -0
  6. package/README.md +475 -0
  7. package/bin/yaml-language-server +27 -0
  8. package/docs/scalaruri-custom-tags.md +269 -0
  9. package/l10n/bundle.l10n.de.json +62 -0
  10. package/l10n/bundle.l10n.fr.json +62 -0
  11. package/l10n/bundle.l10n.ja.json +62 -0
  12. package/l10n/bundle.l10n.json +61 -0
  13. package/l10n/bundle.l10n.ko.json +62 -0
  14. package/l10n/bundle.l10n.zh-cn.json +62 -0
  15. package/l10n/bundle.l10n.zh-tw.json +62 -0
  16. package/lib/esm/commands.d.ts +3 -0
  17. package/lib/esm/commands.js +9 -0
  18. package/lib/esm/commands.js.map +1 -0
  19. package/lib/esm/index.d.ts +3 -0
  20. package/lib/esm/index.js +4 -0
  21. package/lib/esm/index.js.map +1 -0
  22. package/lib/esm/languageserver/commandExecutor.d.ts +10 -0
  23. package/lib/esm/languageserver/commandExecutor.js +21 -0
  24. package/lib/esm/languageserver/commandExecutor.js.map +1 -0
  25. package/lib/esm/languageserver/handlers/languageHandlers.d.ts +61 -0
  26. package/lib/esm/languageserver/handlers/languageHandlers.js +236 -0
  27. package/lib/esm/languageserver/handlers/languageHandlers.js.map +1 -0
  28. package/lib/esm/languageserver/handlers/notificationHandlers.d.ts +29 -0
  29. package/lib/esm/languageserver/handlers/notificationHandlers.js +46 -0
  30. package/lib/esm/languageserver/handlers/notificationHandlers.js.map +1 -0
  31. package/lib/esm/languageserver/handlers/requestHandlers.d.ts +9 -0
  32. package/lib/esm/languageserver/handlers/requestHandlers.js +23 -0
  33. package/lib/esm/languageserver/handlers/requestHandlers.js.map +1 -0
  34. package/lib/esm/languageserver/handlers/schemaSelectionHandlers.d.ts +13 -0
  35. package/lib/esm/languageserver/handlers/schemaSelectionHandlers.js +72 -0
  36. package/lib/esm/languageserver/handlers/schemaSelectionHandlers.js.map +1 -0
  37. package/lib/esm/languageserver/handlers/settingsHandlers.d.ts +42 -0
  38. package/lib/esm/languageserver/handlers/settingsHandlers.js +316 -0
  39. package/lib/esm/languageserver/handlers/settingsHandlers.js.map +1 -0
  40. package/lib/esm/languageserver/handlers/validationHandlers.d.ts +15 -0
  41. package/lib/esm/languageserver/handlers/validationHandlers.js +108 -0
  42. package/lib/esm/languageserver/handlers/validationHandlers.js.map +1 -0
  43. package/lib/esm/languageserver/handlers/workspaceHandlers.d.ts +9 -0
  44. package/lib/esm/languageserver/handlers/workspaceHandlers.js +17 -0
  45. package/lib/esm/languageserver/handlers/workspaceHandlers.js.map +1 -0
  46. package/lib/esm/languageserver/telemetry.d.ts +9 -0
  47. package/lib/esm/languageserver/telemetry.js +20 -0
  48. package/lib/esm/languageserver/telemetry.js.map +1 -0
  49. package/lib/esm/languageservice/jsonASTTypes.d.ts +49 -0
  50. package/lib/esm/languageservice/jsonASTTypes.js +6 -0
  51. package/lib/esm/languageservice/jsonASTTypes.js.map +1 -0
  52. package/lib/esm/languageservice/jsonSchema.d.ts +103 -0
  53. package/lib/esm/languageservice/jsonSchema.js +12 -0
  54. package/lib/esm/languageservice/jsonSchema.js.map +1 -0
  55. package/lib/esm/languageservice/parser/ast-converter.d.ts +11 -0
  56. package/lib/esm/languageservice/parser/ast-converter.js +176 -0
  57. package/lib/esm/languageservice/parser/ast-converter.js.map +1 -0
  58. package/lib/esm/languageservice/parser/astNodeUtils.d.ts +4 -0
  59. package/lib/esm/languageservice/parser/astNodeUtils.js +48 -0
  60. package/lib/esm/languageservice/parser/astNodeUtils.js.map +1 -0
  61. package/lib/esm/languageservice/parser/custom-tag-provider.d.ts +7 -0
  62. package/lib/esm/languageservice/parser/custom-tag-provider.js +58 -0
  63. package/lib/esm/languageservice/parser/custom-tag-provider.js.map +1 -0
  64. package/lib/esm/languageservice/parser/isKubernetes.d.ts +4 -0
  65. package/lib/esm/languageservice/parser/isKubernetes.js +17 -0
  66. package/lib/esm/languageservice/parser/isKubernetes.js.map +1 -0
  67. package/lib/esm/languageservice/parser/jsonDocument.d.ts +83 -0
  68. package/lib/esm/languageservice/parser/jsonDocument.js +171 -0
  69. package/lib/esm/languageservice/parser/jsonDocument.js.map +1 -0
  70. package/lib/esm/languageservice/parser/scalar-type.d.ts +8 -0
  71. package/lib/esm/languageservice/parser/scalar-type.js +17 -0
  72. package/lib/esm/languageservice/parser/scalar-type.js.map +1 -0
  73. package/lib/esm/languageservice/parser/schemaValidation/baseValidator.d.ts +124 -0
  74. package/lib/esm/languageservice/parser/schemaValidation/baseValidator.js +1254 -0
  75. package/lib/esm/languageservice/parser/schemaValidation/baseValidator.js.map +1 -0
  76. package/lib/esm/languageservice/parser/schemaValidation/draft04Validator.d.ts +17 -0
  77. package/lib/esm/languageservice/parser/schemaValidation/draft04Validator.js +30 -0
  78. package/lib/esm/languageservice/parser/schemaValidation/draft04Validator.js.map +1 -0
  79. package/lib/esm/languageservice/parser/schemaValidation/draft07Validator.d.ts +15 -0
  80. package/lib/esm/languageservice/parser/schemaValidation/draft07Validator.js +28 -0
  81. package/lib/esm/languageservice/parser/schemaValidation/draft07Validator.js.map +1 -0
  82. package/lib/esm/languageservice/parser/schemaValidation/draft2019Validator.d.ts +28 -0
  83. package/lib/esm/languageservice/parser/schemaValidation/draft2019Validator.js +224 -0
  84. package/lib/esm/languageservice/parser/schemaValidation/draft2019Validator.js.map +1 -0
  85. package/lib/esm/languageservice/parser/schemaValidation/draft2020Validator.d.ts +17 -0
  86. package/lib/esm/languageservice/parser/schemaValidation/draft2020Validator.js +126 -0
  87. package/lib/esm/languageservice/parser/schemaValidation/draft2020Validator.js.map +1 -0
  88. package/lib/esm/languageservice/parser/schemaValidation/validatorFactory.d.ts +3 -0
  89. package/lib/esm/languageservice/parser/schemaValidation/validatorFactory.js +24 -0
  90. package/lib/esm/languageservice/parser/schemaValidation/validatorFactory.js.map +1 -0
  91. package/lib/esm/languageservice/parser/yaml-documents.d.ts +71 -0
  92. package/lib/esm/languageservice/parser/yaml-documents.js +258 -0
  93. package/lib/esm/languageservice/parser/yaml-documents.js.map +1 -0
  94. package/lib/esm/languageservice/parser/yamlParser07.d.ts +15 -0
  95. package/lib/esm/languageservice/parser/yamlParser07.js +50 -0
  96. package/lib/esm/languageservice/parser/yamlParser07.js.map +1 -0
  97. package/lib/esm/languageservice/services/crdUtil.d.ts +23 -0
  98. package/lib/esm/languageservice/services/crdUtil.js +74 -0
  99. package/lib/esm/languageservice/services/crdUtil.js.map +1 -0
  100. package/lib/esm/languageservice/services/documentSymbols.d.ts +12 -0
  101. package/lib/esm/languageservice/services/documentSymbols.js +67 -0
  102. package/lib/esm/languageservice/services/documentSymbols.js.map +1 -0
  103. package/lib/esm/languageservice/services/modelineUtil.d.ts +9 -0
  104. package/lib/esm/languageservice/services/modelineUtil.js +29 -0
  105. package/lib/esm/languageservice/services/modelineUtil.js.map +1 -0
  106. package/lib/esm/languageservice/services/schemaRequestHandler.d.ts +12 -0
  107. package/lib/esm/languageservice/services/schemaRequestHandler.js +84 -0
  108. package/lib/esm/languageservice/services/schemaRequestHandler.js.map +1 -0
  109. package/lib/esm/languageservice/services/validation/map-key-order.d.ts +7 -0
  110. package/lib/esm/languageservice/services/validation/map-key-order.js +35 -0
  111. package/lib/esm/languageservice/services/validation/map-key-order.js.map +1 -0
  112. package/lib/esm/languageservice/services/validation/types.d.ts +6 -0
  113. package/lib/esm/languageservice/services/validation/types.js +6 -0
  114. package/lib/esm/languageservice/services/validation/types.js.map +1 -0
  115. package/lib/esm/languageservice/services/validation/unused-anchors.d.ts +8 -0
  116. package/lib/esm/languageservice/services/validation/unused-anchors.js +91 -0
  117. package/lib/esm/languageservice/services/validation/unused-anchors.js.map +1 -0
  118. package/lib/esm/languageservice/services/validation/yaml-style.d.ts +12 -0
  119. package/lib/esm/languageservice/services/validation/yaml-style.js +28 -0
  120. package/lib/esm/languageservice/services/validation/yaml-style.js.map +1 -0
  121. package/lib/esm/languageservice/services/yamlCodeActions.d.ts +25 -0
  122. package/lib/esm/languageservice/services/yamlCodeActions.js +342 -0
  123. package/lib/esm/languageservice/services/yamlCodeActions.js.map +1 -0
  124. package/lib/esm/languageservice/services/yamlCodeLens.d.ts +11 -0
  125. package/lib/esm/languageservice/services/yamlCodeLens.js +46 -0
  126. package/lib/esm/languageservice/services/yamlCodeLens.js.map +1 -0
  127. package/lib/esm/languageservice/services/yamlCommands.d.ts +3 -0
  128. package/lib/esm/languageservice/services/yamlCommands.js +46 -0
  129. package/lib/esm/languageservice/services/yamlCommands.js.map +1 -0
  130. package/lib/esm/languageservice/services/yamlCompletion.d.ts +77 -0
  131. package/lib/esm/languageservice/services/yamlCompletion.js +1501 -0
  132. package/lib/esm/languageservice/services/yamlCompletion.js.map +1 -0
  133. package/lib/esm/languageservice/services/yamlDefinition.d.ts +9 -0
  134. package/lib/esm/languageservice/services/yamlDefinition.js +37 -0
  135. package/lib/esm/languageservice/services/yamlDefinition.js.map +1 -0
  136. package/lib/esm/languageservice/services/yamlFolding.d.ts +4 -0
  137. package/lib/esm/languageservice/services/yamlFolding.js +62 -0
  138. package/lib/esm/languageservice/services/yamlFolding.js.map +1 -0
  139. package/lib/esm/languageservice/services/yamlFormatter.d.ts +8 -0
  140. package/lib/esm/languageservice/services/yamlFormatter.js +46 -0
  141. package/lib/esm/languageservice/services/yamlFormatter.js.map +1 -0
  142. package/lib/esm/languageservice/services/yamlHover.d.ts +47 -0
  143. package/lib/esm/languageservice/services/yamlHover.js +366 -0
  144. package/lib/esm/languageservice/services/yamlHover.js.map +1 -0
  145. package/lib/esm/languageservice/services/yamlLinks.d.ts +8 -0
  146. package/lib/esm/languageservice/services/yamlLinks.js +27 -0
  147. package/lib/esm/languageservice/services/yamlLinks.js.map +1 -0
  148. package/lib/esm/languageservice/services/yamlOnTypeFormatting.d.ts +4 -0
  149. package/lib/esm/languageservice/services/yamlOnTypeFormatting.js +43 -0
  150. package/lib/esm/languageservice/services/yamlOnTypeFormatting.js.map +1 -0
  151. package/lib/esm/languageservice/services/yamlRename.d.ts +18 -0
  152. package/lib/esm/languageservice/services/yamlRename.js +184 -0
  153. package/lib/esm/languageservice/services/yamlRename.js.map +1 -0
  154. package/lib/esm/languageservice/services/yamlSchemaService.d.ts +99 -0
  155. package/lib/esm/languageservice/services/yamlSchemaService.js +1110 -0
  156. package/lib/esm/languageservice/services/yamlSchemaService.js.map +1 -0
  157. package/lib/esm/languageservice/services/yamlSelectionRanges.d.ts +3 -0
  158. package/lib/esm/languageservice/services/yamlSelectionRanges.js +130 -0
  159. package/lib/esm/languageservice/services/yamlSelectionRanges.js.map +1 -0
  160. package/lib/esm/languageservice/services/yamlValidation.d.ts +26 -0
  161. package/lib/esm/languageservice/services/yamlValidation.js +135 -0
  162. package/lib/esm/languageservice/services/yamlValidation.js.map +1 -0
  163. package/lib/esm/languageservice/telemetry.d.ts +16 -0
  164. package/lib/esm/languageservice/telemetry.js +6 -0
  165. package/lib/esm/languageservice/telemetry.js.map +1 -0
  166. package/lib/esm/languageservice/utils/arrUtils.d.ts +6 -0
  167. package/lib/esm/languageservice/utils/arrUtils.js +81 -0
  168. package/lib/esm/languageservice/utils/arrUtils.js.map +1 -0
  169. package/lib/esm/languageservice/utils/block-string-rewriter.d.ts +8 -0
  170. package/lib/esm/languageservice/utils/block-string-rewriter.js +215 -0
  171. package/lib/esm/languageservice/utils/block-string-rewriter.js.map +1 -0
  172. package/lib/esm/languageservice/utils/charCode.d.ts +415 -0
  173. package/lib/esm/languageservice/utils/charCode.js +6 -0
  174. package/lib/esm/languageservice/utils/charCode.js.map +1 -0
  175. package/lib/esm/languageservice/utils/diagnostic-filter.d.ts +50 -0
  176. package/lib/esm/languageservice/utils/diagnostic-filter.js +82 -0
  177. package/lib/esm/languageservice/utils/diagnostic-filter.js.map +1 -0
  178. package/lib/esm/languageservice/utils/documentPositionCalculator.d.ts +5 -0
  179. package/lib/esm/languageservice/utils/documentPositionCalculator.js +56 -0
  180. package/lib/esm/languageservice/utils/documentPositionCalculator.js.map +1 -0
  181. package/lib/esm/languageservice/utils/filePatternAssociation.d.ts +8 -0
  182. package/lib/esm/languageservice/utils/filePatternAssociation.js +23 -0
  183. package/lib/esm/languageservice/utils/filePatternAssociation.js.map +1 -0
  184. package/lib/esm/languageservice/utils/flow-style-rewriter.d.ts +6 -0
  185. package/lib/esm/languageservice/utils/flow-style-rewriter.js +53 -0
  186. package/lib/esm/languageservice/utils/flow-style-rewriter.js.map +1 -0
  187. package/lib/esm/languageservice/utils/indentationGuesser.d.ts +15 -0
  188. package/lib/esm/languageservice/utils/indentationGuesser.js +176 -0
  189. package/lib/esm/languageservice/utils/indentationGuesser.js.map +1 -0
  190. package/lib/esm/languageservice/utils/json.d.ts +11 -0
  191. package/lib/esm/languageservice/utils/json.js +79 -0
  192. package/lib/esm/languageservice/utils/json.js.map +1 -0
  193. package/lib/esm/languageservice/utils/math.d.ts +1 -0
  194. package/lib/esm/languageservice/utils/math.js +9 -0
  195. package/lib/esm/languageservice/utils/math.js.map +1 -0
  196. package/lib/esm/languageservice/utils/objects.d.ts +16 -0
  197. package/lib/esm/languageservice/utils/objects.js +92 -0
  198. package/lib/esm/languageservice/utils/objects.js.map +1 -0
  199. package/lib/esm/languageservice/utils/parseUtils.d.ts +17 -0
  200. package/lib/esm/languageservice/utils/parseUtils.js +2 -0
  201. package/lib/esm/languageservice/utils/parseUtils.js.map +1 -0
  202. package/lib/esm/languageservice/utils/paths.d.ts +5 -0
  203. package/lib/esm/languageservice/utils/paths.js +42 -0
  204. package/lib/esm/languageservice/utils/paths.js.map +1 -0
  205. package/lib/esm/languageservice/utils/schemaUrls.d.ts +14 -0
  206. package/lib/esm/languageservice/utils/schemaUrls.js +59 -0
  207. package/lib/esm/languageservice/utils/schemaUrls.js.map +1 -0
  208. package/lib/esm/languageservice/utils/schemaUtils.d.ts +19 -0
  209. package/lib/esm/languageservice/utils/schemaUtils.js +62 -0
  210. package/lib/esm/languageservice/utils/schemaUtils.js.map +1 -0
  211. package/lib/esm/languageservice/utils/strings.d.ts +10 -0
  212. package/lib/esm/languageservice/utils/strings.js +79 -0
  213. package/lib/esm/languageservice/utils/strings.js.map +1 -0
  214. package/lib/esm/languageservice/utils/textBuffer.d.ts +12 -0
  215. package/lib/esm/languageservice/utils/textBuffer.js +45 -0
  216. package/lib/esm/languageservice/utils/textBuffer.js.map +1 -0
  217. package/lib/esm/languageservice/utils/yamlAstUtils.d.ts +13 -0
  218. package/lib/esm/languageservice/utils/yamlAstUtils.js +108 -0
  219. package/lib/esm/languageservice/utils/yamlAstUtils.js.map +1 -0
  220. package/lib/esm/languageservice/utils/yamlScalar.d.ts +1 -0
  221. package/lib/esm/languageservice/utils/yamlScalar.js +69 -0
  222. package/lib/esm/languageservice/utils/yamlScalar.js.map +1 -0
  223. package/lib/esm/languageservice/yamlLanguageService.d.ts +135 -0
  224. package/lib/esm/languageservice/yamlLanguageService.js +101 -0
  225. package/lib/esm/languageservice/yamlLanguageService.js.map +1 -0
  226. package/lib/esm/languageservice/yamlTypes.d.ts +18 -0
  227. package/lib/esm/languageservice/yamlTypes.js +6 -0
  228. package/lib/esm/languageservice/yamlTypes.js.map +1 -0
  229. package/lib/esm/nodeTranslationSetup.d.ts +9 -0
  230. package/lib/esm/nodeTranslationSetup.js +34 -0
  231. package/lib/esm/nodeTranslationSetup.js.map +1 -0
  232. package/lib/esm/requestTypes.d.ts +63 -0
  233. package/lib/esm/requestTypes.js +46 -0
  234. package/lib/esm/requestTypes.js.map +1 -0
  235. package/lib/esm/server.d.ts +1 -0
  236. package/lib/esm/server.js +55 -0
  237. package/lib/esm/server.js.map +1 -0
  238. package/lib/esm/webworker/yamlServerMain.d.ts +1 -0
  239. package/lib/esm/webworker/yamlServerMain.js +40 -0
  240. package/lib/esm/webworker/yamlServerMain.js.map +1 -0
  241. package/lib/esm/yamlServerInit.d.ts +23 -0
  242. package/lib/esm/yamlServerInit.js +123 -0
  243. package/lib/esm/yamlServerInit.js.map +1 -0
  244. package/lib/esm/yamlSettings.d.ts +112 -0
  245. package/lib/esm/yamlSettings.js +69 -0
  246. package/lib/esm/yamlSettings.js.map +1 -0
  247. package/lib/umd/commands.d.ts +3 -0
  248. package/lib/umd/commands.js +22 -0
  249. package/lib/umd/commands.js.map +1 -0
  250. package/lib/umd/index.d.ts +3 -0
  251. package/lib/umd/index.js +32 -0
  252. package/lib/umd/index.js.map +1 -0
  253. package/lib/umd/languageserver/commandExecutor.d.ts +10 -0
  254. package/lib/umd/languageserver/commandExecutor.js +35 -0
  255. package/lib/umd/languageserver/commandExecutor.js.map +1 -0
  256. package/lib/umd/languageserver/handlers/languageHandlers.d.ts +61 -0
  257. package/lib/umd/languageserver/handlers/languageHandlers.js +250 -0
  258. package/lib/umd/languageserver/handlers/languageHandlers.js.map +1 -0
  259. package/lib/umd/languageserver/handlers/notificationHandlers.d.ts +29 -0
  260. package/lib/umd/languageserver/handlers/notificationHandlers.js +60 -0
  261. package/lib/umd/languageserver/handlers/notificationHandlers.js.map +1 -0
  262. package/lib/umd/languageserver/handlers/requestHandlers.d.ts +9 -0
  263. package/lib/umd/languageserver/handlers/requestHandlers.js +37 -0
  264. package/lib/umd/languageserver/handlers/requestHandlers.js.map +1 -0
  265. package/lib/umd/languageserver/handlers/schemaSelectionHandlers.d.ts +13 -0
  266. package/lib/umd/languageserver/handlers/schemaSelectionHandlers.js +86 -0
  267. package/lib/umd/languageserver/handlers/schemaSelectionHandlers.js.map +1 -0
  268. package/lib/umd/languageserver/handlers/settingsHandlers.d.ts +42 -0
  269. package/lib/umd/languageserver/handlers/settingsHandlers.js +330 -0
  270. package/lib/umd/languageserver/handlers/settingsHandlers.js.map +1 -0
  271. package/lib/umd/languageserver/handlers/validationHandlers.d.ts +15 -0
  272. package/lib/umd/languageserver/handlers/validationHandlers.js +122 -0
  273. package/lib/umd/languageserver/handlers/validationHandlers.js.map +1 -0
  274. package/lib/umd/languageserver/handlers/workspaceHandlers.d.ts +9 -0
  275. package/lib/umd/languageserver/handlers/workspaceHandlers.js +31 -0
  276. package/lib/umd/languageserver/handlers/workspaceHandlers.js.map +1 -0
  277. package/lib/umd/languageserver/telemetry.d.ts +9 -0
  278. package/lib/umd/languageserver/telemetry.js +34 -0
  279. package/lib/umd/languageserver/telemetry.js.map +1 -0
  280. package/lib/umd/languageservice/jsonASTTypes.d.ts +49 -0
  281. package/lib/umd/languageservice/jsonASTTypes.js +17 -0
  282. package/lib/umd/languageservice/jsonASTTypes.js.map +1 -0
  283. package/lib/umd/languageservice/jsonSchema.d.ts +103 -0
  284. package/lib/umd/languageservice/jsonSchema.js +25 -0
  285. package/lib/umd/languageservice/jsonSchema.js.map +1 -0
  286. package/lib/umd/languageservice/parser/ast-converter.d.ts +11 -0
  287. package/lib/umd/languageservice/parser/ast-converter.js +191 -0
  288. package/lib/umd/languageservice/parser/ast-converter.js.map +1 -0
  289. package/lib/umd/languageservice/parser/astNodeUtils.d.ts +4 -0
  290. package/lib/umd/languageservice/parser/astNodeUtils.js +64 -0
  291. package/lib/umd/languageservice/parser/astNodeUtils.js.map +1 -0
  292. package/lib/umd/languageservice/parser/custom-tag-provider.d.ts +7 -0
  293. package/lib/umd/languageservice/parser/custom-tag-provider.js +72 -0
  294. package/lib/umd/languageservice/parser/custom-tag-provider.js.map +1 -0
  295. package/lib/umd/languageservice/parser/isKubernetes.d.ts +4 -0
  296. package/lib/umd/languageservice/parser/isKubernetes.js +32 -0
  297. package/lib/umd/languageservice/parser/isKubernetes.js.map +1 -0
  298. package/lib/umd/languageservice/parser/jsonDocument.d.ts +83 -0
  299. package/lib/umd/languageservice/parser/jsonDocument.js +193 -0
  300. package/lib/umd/languageservice/parser/jsonDocument.js.map +1 -0
  301. package/lib/umd/languageservice/parser/scalar-type.d.ts +8 -0
  302. package/lib/umd/languageservice/parser/scalar-type.js +31 -0
  303. package/lib/umd/languageservice/parser/scalar-type.js.map +1 -0
  304. package/lib/umd/languageservice/parser/schemaValidation/baseValidator.d.ts +124 -0
  305. package/lib/umd/languageservice/parser/schemaValidation/baseValidator.js +1270 -0
  306. package/lib/umd/languageservice/parser/schemaValidation/baseValidator.js.map +1 -0
  307. package/lib/umd/languageservice/parser/schemaValidation/draft04Validator.d.ts +17 -0
  308. package/lib/umd/languageservice/parser/schemaValidation/draft04Validator.js +44 -0
  309. package/lib/umd/languageservice/parser/schemaValidation/draft04Validator.js.map +1 -0
  310. package/lib/umd/languageservice/parser/schemaValidation/draft07Validator.d.ts +15 -0
  311. package/lib/umd/languageservice/parser/schemaValidation/draft07Validator.js +42 -0
  312. package/lib/umd/languageservice/parser/schemaValidation/draft07Validator.js.map +1 -0
  313. package/lib/umd/languageservice/parser/schemaValidation/draft2019Validator.d.ts +28 -0
  314. package/lib/umd/languageservice/parser/schemaValidation/draft2019Validator.js +238 -0
  315. package/lib/umd/languageservice/parser/schemaValidation/draft2019Validator.js.map +1 -0
  316. package/lib/umd/languageservice/parser/schemaValidation/draft2020Validator.d.ts +17 -0
  317. package/lib/umd/languageservice/parser/schemaValidation/draft2020Validator.js +140 -0
  318. package/lib/umd/languageservice/parser/schemaValidation/draft2020Validator.js.map +1 -0
  319. package/lib/umd/languageservice/parser/schemaValidation/validatorFactory.d.ts +3 -0
  320. package/lib/umd/languageservice/parser/schemaValidation/validatorFactory.js +38 -0
  321. package/lib/umd/languageservice/parser/schemaValidation/validatorFactory.js.map +1 -0
  322. package/lib/umd/languageservice/parser/yaml-documents.d.ts +71 -0
  323. package/lib/umd/languageservice/parser/yaml-documents.js +274 -0
  324. package/lib/umd/languageservice/parser/yaml-documents.js.map +1 -0
  325. package/lib/umd/languageservice/parser/yamlParser07.d.ts +15 -0
  326. package/lib/umd/languageservice/parser/yamlParser07.js +65 -0
  327. package/lib/umd/languageservice/parser/yamlParser07.js.map +1 -0
  328. package/lib/umd/languageservice/services/crdUtil.d.ts +23 -0
  329. package/lib/umd/languageservice/services/crdUtil.js +89 -0
  330. package/lib/umd/languageservice/services/crdUtil.js.map +1 -0
  331. package/lib/umd/languageservice/services/documentSymbols.d.ts +12 -0
  332. package/lib/umd/languageservice/services/documentSymbols.js +81 -0
  333. package/lib/umd/languageservice/services/documentSymbols.js.map +1 -0
  334. package/lib/umd/languageservice/services/modelineUtil.d.ts +9 -0
  335. package/lib/umd/languageservice/services/modelineUtil.js +44 -0
  336. package/lib/umd/languageservice/services/modelineUtil.js.map +1 -0
  337. package/lib/umd/languageservice/services/schemaRequestHandler.d.ts +12 -0
  338. package/lib/umd/languageservice/services/schemaRequestHandler.js +98 -0
  339. package/lib/umd/languageservice/services/schemaRequestHandler.js.map +1 -0
  340. package/lib/umd/languageservice/services/validation/map-key-order.d.ts +7 -0
  341. package/lib/umd/languageservice/services/validation/map-key-order.js +49 -0
  342. package/lib/umd/languageservice/services/validation/map-key-order.js.map +1 -0
  343. package/lib/umd/languageservice/services/validation/types.d.ts +6 -0
  344. package/lib/umd/languageservice/services/validation/types.js +17 -0
  345. package/lib/umd/languageservice/services/validation/types.js.map +1 -0
  346. package/lib/umd/languageservice/services/validation/unused-anchors.d.ts +8 -0
  347. package/lib/umd/languageservice/services/validation/unused-anchors.js +105 -0
  348. package/lib/umd/languageservice/services/validation/unused-anchors.js.map +1 -0
  349. package/lib/umd/languageservice/services/validation/yaml-style.d.ts +12 -0
  350. package/lib/umd/languageservice/services/validation/yaml-style.js +42 -0
  351. package/lib/umd/languageservice/services/validation/yaml-style.js.map +1 -0
  352. package/lib/umd/languageservice/services/yamlCodeActions.d.ts +25 -0
  353. package/lib/umd/languageservice/services/yamlCodeActions.js +356 -0
  354. package/lib/umd/languageservice/services/yamlCodeActions.js.map +1 -0
  355. package/lib/umd/languageservice/services/yamlCodeLens.d.ts +11 -0
  356. package/lib/umd/languageservice/services/yamlCodeLens.js +60 -0
  357. package/lib/umd/languageservice/services/yamlCodeLens.js.map +1 -0
  358. package/lib/umd/languageservice/services/yamlCommands.d.ts +3 -0
  359. package/lib/umd/languageservice/services/yamlCommands.js +60 -0
  360. package/lib/umd/languageservice/services/yamlCommands.js.map +1 -0
  361. package/lib/umd/languageservice/services/yamlCompletion.d.ts +77 -0
  362. package/lib/umd/languageservice/services/yamlCompletion.js +1515 -0
  363. package/lib/umd/languageservice/services/yamlCompletion.js.map +1 -0
  364. package/lib/umd/languageservice/services/yamlDefinition.d.ts +9 -0
  365. package/lib/umd/languageservice/services/yamlDefinition.js +51 -0
  366. package/lib/umd/languageservice/services/yamlDefinition.js.map +1 -0
  367. package/lib/umd/languageservice/services/yamlFolding.d.ts +4 -0
  368. package/lib/umd/languageservice/services/yamlFolding.js +76 -0
  369. package/lib/umd/languageservice/services/yamlFolding.js.map +1 -0
  370. package/lib/umd/languageservice/services/yamlFormatter.d.ts +8 -0
  371. package/lib/umd/languageservice/services/yamlFormatter.js +60 -0
  372. package/lib/umd/languageservice/services/yamlFormatter.js.map +1 -0
  373. package/lib/umd/languageservice/services/yamlHover.d.ts +47 -0
  374. package/lib/umd/languageservice/services/yamlHover.js +380 -0
  375. package/lib/umd/languageservice/services/yamlHover.js.map +1 -0
  376. package/lib/umd/languageservice/services/yamlLinks.d.ts +8 -0
  377. package/lib/umd/languageservice/services/yamlLinks.js +41 -0
  378. package/lib/umd/languageservice/services/yamlLinks.js.map +1 -0
  379. package/lib/umd/languageservice/services/yamlOnTypeFormatting.d.ts +4 -0
  380. package/lib/umd/languageservice/services/yamlOnTypeFormatting.js +57 -0
  381. package/lib/umd/languageservice/services/yamlOnTypeFormatting.js.map +1 -0
  382. package/lib/umd/languageservice/services/yamlRename.d.ts +18 -0
  383. package/lib/umd/languageservice/services/yamlRename.js +198 -0
  384. package/lib/umd/languageservice/services/yamlRename.js.map +1 -0
  385. package/lib/umd/languageservice/services/yamlSchemaService.d.ts +99 -0
  386. package/lib/umd/languageservice/services/yamlSchemaService.js +1124 -0
  387. package/lib/umd/languageservice/services/yamlSchemaService.js.map +1 -0
  388. package/lib/umd/languageservice/services/yamlSelectionRanges.d.ts +3 -0
  389. package/lib/umd/languageservice/services/yamlSelectionRanges.js +144 -0
  390. package/lib/umd/languageservice/services/yamlSelectionRanges.js.map +1 -0
  391. package/lib/umd/languageservice/services/yamlValidation.d.ts +26 -0
  392. package/lib/umd/languageservice/services/yamlValidation.js +150 -0
  393. package/lib/umd/languageservice/services/yamlValidation.js.map +1 -0
  394. package/lib/umd/languageservice/telemetry.d.ts +16 -0
  395. package/lib/umd/languageservice/telemetry.js +17 -0
  396. package/lib/umd/languageservice/telemetry.js.map +1 -0
  397. package/lib/umd/languageservice/utils/arrUtils.d.ts +6 -0
  398. package/lib/umd/languageservice/utils/arrUtils.js +99 -0
  399. package/lib/umd/languageservice/utils/arrUtils.js.map +1 -0
  400. package/lib/umd/languageservice/utils/block-string-rewriter.d.ts +8 -0
  401. package/lib/umd/languageservice/utils/block-string-rewriter.js +229 -0
  402. package/lib/umd/languageservice/utils/block-string-rewriter.js.map +1 -0
  403. package/lib/umd/languageservice/utils/charCode.d.ts +415 -0
  404. package/lib/umd/languageservice/utils/charCode.js +17 -0
  405. package/lib/umd/languageservice/utils/charCode.js.map +1 -0
  406. package/lib/umd/languageservice/utils/diagnostic-filter.d.ts +50 -0
  407. package/lib/umd/languageservice/utils/diagnostic-filter.js +98 -0
  408. package/lib/umd/languageservice/utils/diagnostic-filter.js.map +1 -0
  409. package/lib/umd/languageservice/utils/documentPositionCalculator.d.ts +5 -0
  410. package/lib/umd/languageservice/utils/documentPositionCalculator.js +73 -0
  411. package/lib/umd/languageservice/utils/documentPositionCalculator.js.map +1 -0
  412. package/lib/umd/languageservice/utils/filePatternAssociation.d.ts +8 -0
  413. package/lib/umd/languageservice/utils/filePatternAssociation.js +37 -0
  414. package/lib/umd/languageservice/utils/filePatternAssociation.js.map +1 -0
  415. package/lib/umd/languageservice/utils/flow-style-rewriter.d.ts +6 -0
  416. package/lib/umd/languageservice/utils/flow-style-rewriter.js +67 -0
  417. package/lib/umd/languageservice/utils/flow-style-rewriter.js.map +1 -0
  418. package/lib/umd/languageservice/utils/indentationGuesser.d.ts +15 -0
  419. package/lib/umd/languageservice/utils/indentationGuesser.js +190 -0
  420. package/lib/umd/languageservice/utils/indentationGuesser.js.map +1 -0
  421. package/lib/umd/languageservice/utils/json.d.ts +11 -0
  422. package/lib/umd/languageservice/utils/json.js +93 -0
  423. package/lib/umd/languageservice/utils/json.js.map +1 -0
  424. package/lib/umd/languageservice/utils/math.d.ts +1 -0
  425. package/lib/umd/languageservice/utils/math.js +23 -0
  426. package/lib/umd/languageservice/utils/math.js.map +1 -0
  427. package/lib/umd/languageservice/utils/objects.d.ts +16 -0
  428. package/lib/umd/languageservice/utils/objects.js +112 -0
  429. package/lib/umd/languageservice/utils/objects.js.map +1 -0
  430. package/lib/umd/languageservice/utils/parseUtils.d.ts +17 -0
  431. package/lib/umd/languageservice/utils/parseUtils.js +15 -0
  432. package/lib/umd/languageservice/utils/parseUtils.js.map +1 -0
  433. package/lib/umd/languageservice/utils/paths.d.ts +5 -0
  434. package/lib/umd/languageservice/utils/paths.js +58 -0
  435. package/lib/umd/languageservice/utils/paths.js.map +1 -0
  436. package/lib/umd/languageservice/utils/schemaUrls.d.ts +14 -0
  437. package/lib/umd/languageservice/utils/schemaUrls.js +74 -0
  438. package/lib/umd/languageservice/utils/schemaUrls.js.map +1 -0
  439. package/lib/umd/languageservice/utils/schemaUtils.d.ts +19 -0
  440. package/lib/umd/languageservice/utils/schemaUtils.js +80 -0
  441. package/lib/umd/languageservice/utils/schemaUtils.js.map +1 -0
  442. package/lib/umd/languageservice/utils/strings.d.ts +10 -0
  443. package/lib/umd/languageservice/utils/strings.js +99 -0
  444. package/lib/umd/languageservice/utils/strings.js.map +1 -0
  445. package/lib/umd/languageservice/utils/textBuffer.d.ts +12 -0
  446. package/lib/umd/languageservice/utils/textBuffer.js +59 -0
  447. package/lib/umd/languageservice/utils/textBuffer.js.map +1 -0
  448. package/lib/umd/languageservice/utils/yamlAstUtils.d.ts +13 -0
  449. package/lib/umd/languageservice/utils/yamlAstUtils.js +126 -0
  450. package/lib/umd/languageservice/utils/yamlAstUtils.js.map +1 -0
  451. package/lib/umd/languageservice/utils/yamlScalar.d.ts +1 -0
  452. package/lib/umd/languageservice/utils/yamlScalar.js +83 -0
  453. package/lib/umd/languageservice/utils/yamlScalar.js.map +1 -0
  454. package/lib/umd/languageservice/yamlLanguageService.d.ts +135 -0
  455. package/lib/umd/languageservice/yamlLanguageService.js +115 -0
  456. package/lib/umd/languageservice/yamlLanguageService.js.map +1 -0
  457. package/lib/umd/languageservice/yamlTypes.d.ts +18 -0
  458. package/lib/umd/languageservice/yamlTypes.js +17 -0
  459. package/lib/umd/languageservice/yamlTypes.js.map +1 -0
  460. package/lib/umd/nodeTranslationSetup.d.ts +9 -0
  461. package/lib/umd/nodeTranslationSetup.js +48 -0
  462. package/lib/umd/nodeTranslationSetup.js.map +1 -0
  463. package/lib/umd/requestTypes.d.ts +63 -0
  464. package/lib/umd/requestTypes.js +59 -0
  465. package/lib/umd/requestTypes.js.map +1 -0
  466. package/lib/umd/server.d.ts +1 -0
  467. package/lib/umd/server.js +67 -0
  468. package/lib/umd/server.js.map +1 -0
  469. package/lib/umd/webworker/yamlServerMain.d.ts +1 -0
  470. package/lib/umd/webworker/yamlServerMain.js +52 -0
  471. package/lib/umd/webworker/yamlServerMain.js.map +1 -0
  472. package/lib/umd/yamlServerInit.d.ts +23 -0
  473. package/lib/umd/yamlServerInit.js +137 -0
  474. package/lib/umd/yamlServerInit.js.map +1 -0
  475. package/lib/umd/yamlSettings.d.ts +112 -0
  476. package/lib/umd/yamlSettings.js +84 -0
  477. package/lib/umd/yamlSettings.js.map +1 -0
  478. package/out/server/src/commands.d.ts +3 -0
  479. package/out/server/src/commands.js +12 -0
  480. package/out/server/src/commands.js.map +1 -0
  481. package/out/server/src/index.d.ts +3 -0
  482. package/out/server/src/index.js +22 -0
  483. package/out/server/src/index.js.map +1 -0
  484. package/out/server/src/languageserver/commandExecutor.d.ts +10 -0
  485. package/out/server/src/languageserver/commandExecutor.js +25 -0
  486. package/out/server/src/languageserver/commandExecutor.js.map +1 -0
  487. package/out/server/src/languageserver/handlers/languageHandlers.d.ts +61 -0
  488. package/out/server/src/languageserver/handlers/languageHandlers.js +240 -0
  489. package/out/server/src/languageserver/handlers/languageHandlers.js.map +1 -0
  490. package/out/server/src/languageserver/handlers/notificationHandlers.d.ts +29 -0
  491. package/out/server/src/languageserver/handlers/notificationHandlers.js +50 -0
  492. package/out/server/src/languageserver/handlers/notificationHandlers.js.map +1 -0
  493. package/out/server/src/languageserver/handlers/requestHandlers.d.ts +9 -0
  494. package/out/server/src/languageserver/handlers/requestHandlers.js +27 -0
  495. package/out/server/src/languageserver/handlers/requestHandlers.js.map +1 -0
  496. package/out/server/src/languageserver/handlers/schemaSelectionHandlers.d.ts +13 -0
  497. package/out/server/src/languageserver/handlers/schemaSelectionHandlers.js +76 -0
  498. package/out/server/src/languageserver/handlers/schemaSelectionHandlers.js.map +1 -0
  499. package/out/server/src/languageserver/handlers/settingsHandlers.d.ts +42 -0
  500. package/out/server/src/languageserver/handlers/settingsHandlers.js +320 -0
  501. package/out/server/src/languageserver/handlers/settingsHandlers.js.map +1 -0
  502. package/out/server/src/languageserver/handlers/validationHandlers.d.ts +15 -0
  503. package/out/server/src/languageserver/handlers/validationHandlers.js +112 -0
  504. package/out/server/src/languageserver/handlers/validationHandlers.js.map +1 -0
  505. package/out/server/src/languageserver/handlers/workspaceHandlers.d.ts +9 -0
  506. package/out/server/src/languageserver/handlers/workspaceHandlers.js +21 -0
  507. package/out/server/src/languageserver/handlers/workspaceHandlers.js.map +1 -0
  508. package/out/server/src/languageserver/telemetry.d.ts +9 -0
  509. package/out/server/src/languageserver/telemetry.js +24 -0
  510. package/out/server/src/languageserver/telemetry.js.map +1 -0
  511. package/out/server/src/languageservice/jsonASTTypes.d.ts +49 -0
  512. package/out/server/src/languageservice/jsonASTTypes.js +7 -0
  513. package/out/server/src/languageservice/jsonASTTypes.js.map +1 -0
  514. package/out/server/src/languageservice/jsonSchema.d.ts +103 -0
  515. package/out/server/src/languageservice/jsonSchema.js +15 -0
  516. package/out/server/src/languageservice/jsonSchema.js.map +1 -0
  517. package/out/server/src/languageservice/parser/ast-converter.d.ts +11 -0
  518. package/out/server/src/languageservice/parser/ast-converter.js +181 -0
  519. package/out/server/src/languageservice/parser/ast-converter.js.map +1 -0
  520. package/out/server/src/languageservice/parser/astNodeUtils.d.ts +4 -0
  521. package/out/server/src/languageservice/parser/astNodeUtils.js +54 -0
  522. package/out/server/src/languageservice/parser/astNodeUtils.js.map +1 -0
  523. package/out/server/src/languageservice/parser/custom-tag-provider.d.ts +7 -0
  524. package/out/server/src/languageservice/parser/custom-tag-provider.js +62 -0
  525. package/out/server/src/languageservice/parser/custom-tag-provider.js.map +1 -0
  526. package/out/server/src/languageservice/parser/isKubernetes.d.ts +4 -0
  527. package/out/server/src/languageservice/parser/isKubernetes.js +22 -0
  528. package/out/server/src/languageservice/parser/isKubernetes.js.map +1 -0
  529. package/out/server/src/languageservice/parser/jsonDocument.d.ts +83 -0
  530. package/out/server/src/languageservice/parser/jsonDocument.js +183 -0
  531. package/out/server/src/languageservice/parser/jsonDocument.js.map +1 -0
  532. package/out/server/src/languageservice/parser/scalar-type.d.ts +8 -0
  533. package/out/server/src/languageservice/parser/scalar-type.js +21 -0
  534. package/out/server/src/languageservice/parser/scalar-type.js.map +1 -0
  535. package/out/server/src/languageservice/parser/schemaValidation/baseValidator.d.ts +124 -0
  536. package/out/server/src/languageservice/parser/schemaValidation/baseValidator.js +1260 -0
  537. package/out/server/src/languageservice/parser/schemaValidation/baseValidator.js.map +1 -0
  538. package/out/server/src/languageservice/parser/schemaValidation/draft04Validator.d.ts +17 -0
  539. package/out/server/src/languageservice/parser/schemaValidation/draft04Validator.js +34 -0
  540. package/out/server/src/languageservice/parser/schemaValidation/draft04Validator.js.map +1 -0
  541. package/out/server/src/languageservice/parser/schemaValidation/draft07Validator.d.ts +15 -0
  542. package/out/server/src/languageservice/parser/schemaValidation/draft07Validator.js +32 -0
  543. package/out/server/src/languageservice/parser/schemaValidation/draft07Validator.js.map +1 -0
  544. package/out/server/src/languageservice/parser/schemaValidation/draft2019Validator.d.ts +28 -0
  545. package/out/server/src/languageservice/parser/schemaValidation/draft2019Validator.js +228 -0
  546. package/out/server/src/languageservice/parser/schemaValidation/draft2019Validator.js.map +1 -0
  547. package/out/server/src/languageservice/parser/schemaValidation/draft2020Validator.d.ts +17 -0
  548. package/out/server/src/languageservice/parser/schemaValidation/draft2020Validator.js +130 -0
  549. package/out/server/src/languageservice/parser/schemaValidation/draft2020Validator.js.map +1 -0
  550. package/out/server/src/languageservice/parser/schemaValidation/validatorFactory.d.ts +3 -0
  551. package/out/server/src/languageservice/parser/schemaValidation/validatorFactory.js +28 -0
  552. package/out/server/src/languageservice/parser/schemaValidation/validatorFactory.js.map +1 -0
  553. package/out/server/src/languageservice/parser/yaml-documents.d.ts +71 -0
  554. package/out/server/src/languageservice/parser/yaml-documents.js +264 -0
  555. package/out/server/src/languageservice/parser/yaml-documents.js.map +1 -0
  556. package/out/server/src/languageservice/parser/yamlParser07.d.ts +15 -0
  557. package/out/server/src/languageservice/parser/yamlParser07.js +55 -0
  558. package/out/server/src/languageservice/parser/yamlParser07.js.map +1 -0
  559. package/out/server/src/languageservice/services/crdUtil.d.ts +23 -0
  560. package/out/server/src/languageservice/services/crdUtil.js +79 -0
  561. package/out/server/src/languageservice/services/crdUtil.js.map +1 -0
  562. package/out/server/src/languageservice/services/documentSymbols.d.ts +12 -0
  563. package/out/server/src/languageservice/services/documentSymbols.js +71 -0
  564. package/out/server/src/languageservice/services/documentSymbols.js.map +1 -0
  565. package/out/server/src/languageservice/services/modelineUtil.d.ts +9 -0
  566. package/out/server/src/languageservice/services/modelineUtil.js +34 -0
  567. package/out/server/src/languageservice/services/modelineUtil.js.map +1 -0
  568. package/out/server/src/languageservice/services/schemaRequestHandler.d.ts +12 -0
  569. package/out/server/src/languageservice/services/schemaRequestHandler.js +88 -0
  570. package/out/server/src/languageservice/services/schemaRequestHandler.js.map +1 -0
  571. package/out/server/src/languageservice/services/validation/map-key-order.d.ts +7 -0
  572. package/out/server/src/languageservice/services/validation/map-key-order.js +39 -0
  573. package/out/server/src/languageservice/services/validation/map-key-order.js.map +1 -0
  574. package/out/server/src/languageservice/services/validation/types.d.ts +6 -0
  575. package/out/server/src/languageservice/services/validation/types.js +7 -0
  576. package/out/server/src/languageservice/services/validation/types.js.map +1 -0
  577. package/out/server/src/languageservice/services/validation/unused-anchors.d.ts +8 -0
  578. package/out/server/src/languageservice/services/validation/unused-anchors.js +95 -0
  579. package/out/server/src/languageservice/services/validation/unused-anchors.js.map +1 -0
  580. package/out/server/src/languageservice/services/validation/yaml-style.d.ts +12 -0
  581. package/out/server/src/languageservice/services/validation/yaml-style.js +32 -0
  582. package/out/server/src/languageservice/services/validation/yaml-style.js.map +1 -0
  583. package/out/server/src/languageservice/services/yamlCodeActions.d.ts +25 -0
  584. package/out/server/src/languageservice/services/yamlCodeActions.js +346 -0
  585. package/out/server/src/languageservice/services/yamlCodeActions.js.map +1 -0
  586. package/out/server/src/languageservice/services/yamlCodeLens.d.ts +11 -0
  587. package/out/server/src/languageservice/services/yamlCodeLens.js +50 -0
  588. package/out/server/src/languageservice/services/yamlCodeLens.js.map +1 -0
  589. package/out/server/src/languageservice/services/yamlCommands.d.ts +3 -0
  590. package/out/server/src/languageservice/services/yamlCommands.js +50 -0
  591. package/out/server/src/languageservice/services/yamlCommands.js.map +1 -0
  592. package/out/server/src/languageservice/services/yamlCompletion.d.ts +77 -0
  593. package/out/server/src/languageservice/services/yamlCompletion.js +1505 -0
  594. package/out/server/src/languageservice/services/yamlCompletion.js.map +1 -0
  595. package/out/server/src/languageservice/services/yamlDefinition.d.ts +9 -0
  596. package/out/server/src/languageservice/services/yamlDefinition.js +41 -0
  597. package/out/server/src/languageservice/services/yamlDefinition.js.map +1 -0
  598. package/out/server/src/languageservice/services/yamlFolding.d.ts +4 -0
  599. package/out/server/src/languageservice/services/yamlFolding.js +66 -0
  600. package/out/server/src/languageservice/services/yamlFolding.js.map +1 -0
  601. package/out/server/src/languageservice/services/yamlFormatter.d.ts +8 -0
  602. package/out/server/src/languageservice/services/yamlFormatter.js +50 -0
  603. package/out/server/src/languageservice/services/yamlFormatter.js.map +1 -0
  604. package/out/server/src/languageservice/services/yamlHover.d.ts +47 -0
  605. package/out/server/src/languageservice/services/yamlHover.js +370 -0
  606. package/out/server/src/languageservice/services/yamlHover.js.map +1 -0
  607. package/out/server/src/languageservice/services/yamlLinks.d.ts +8 -0
  608. package/out/server/src/languageservice/services/yamlLinks.js +31 -0
  609. package/out/server/src/languageservice/services/yamlLinks.js.map +1 -0
  610. package/out/server/src/languageservice/services/yamlOnTypeFormatting.d.ts +4 -0
  611. package/out/server/src/languageservice/services/yamlOnTypeFormatting.js +47 -0
  612. package/out/server/src/languageservice/services/yamlOnTypeFormatting.js.map +1 -0
  613. package/out/server/src/languageservice/services/yamlRename.d.ts +18 -0
  614. package/out/server/src/languageservice/services/yamlRename.js +188 -0
  615. package/out/server/src/languageservice/services/yamlRename.js.map +1 -0
  616. package/out/server/src/languageservice/services/yamlSchemaService.d.ts +99 -0
  617. package/out/server/src/languageservice/services/yamlSchemaService.js +1114 -0
  618. package/out/server/src/languageservice/services/yamlSchemaService.js.map +1 -0
  619. package/out/server/src/languageservice/services/yamlSelectionRanges.d.ts +3 -0
  620. package/out/server/src/languageservice/services/yamlSelectionRanges.js +134 -0
  621. package/out/server/src/languageservice/services/yamlSelectionRanges.js.map +1 -0
  622. package/out/server/src/languageservice/services/yamlValidation.d.ts +26 -0
  623. package/out/server/src/languageservice/services/yamlValidation.js +140 -0
  624. package/out/server/src/languageservice/services/yamlValidation.js.map +1 -0
  625. package/out/server/src/languageservice/telemetry.d.ts +16 -0
  626. package/out/server/src/languageservice/telemetry.js +7 -0
  627. package/out/server/src/languageservice/telemetry.js.map +1 -0
  628. package/out/server/src/languageservice/utils/arrUtils.d.ts +6 -0
  629. package/out/server/src/languageservice/utils/arrUtils.js +89 -0
  630. package/out/server/src/languageservice/utils/arrUtils.js.map +1 -0
  631. package/out/server/src/languageservice/utils/block-string-rewriter.d.ts +8 -0
  632. package/out/server/src/languageservice/utils/block-string-rewriter.js +219 -0
  633. package/out/server/src/languageservice/utils/block-string-rewriter.js.map +1 -0
  634. package/out/server/src/languageservice/utils/charCode.d.ts +415 -0
  635. package/out/server/src/languageservice/utils/charCode.js +7 -0
  636. package/out/server/src/languageservice/utils/charCode.js.map +1 -0
  637. package/out/server/src/languageservice/utils/diagnostic-filter.d.ts +50 -0
  638. package/out/server/src/languageservice/utils/diagnostic-filter.js +88 -0
  639. package/out/server/src/languageservice/utils/diagnostic-filter.js.map +1 -0
  640. package/out/server/src/languageservice/utils/documentPositionCalculator.d.ts +5 -0
  641. package/out/server/src/languageservice/utils/documentPositionCalculator.js +63 -0
  642. package/out/server/src/languageservice/utils/documentPositionCalculator.js.map +1 -0
  643. package/out/server/src/languageservice/utils/filePatternAssociation.d.ts +8 -0
  644. package/out/server/src/languageservice/utils/filePatternAssociation.js +27 -0
  645. package/out/server/src/languageservice/utils/filePatternAssociation.js.map +1 -0
  646. package/out/server/src/languageservice/utils/flow-style-rewriter.d.ts +6 -0
  647. package/out/server/src/languageservice/utils/flow-style-rewriter.js +57 -0
  648. package/out/server/src/languageservice/utils/flow-style-rewriter.js.map +1 -0
  649. package/out/server/src/languageservice/utils/indentationGuesser.d.ts +15 -0
  650. package/out/server/src/languageservice/utils/indentationGuesser.js +180 -0
  651. package/out/server/src/languageservice/utils/indentationGuesser.js.map +1 -0
  652. package/out/server/src/languageservice/utils/json.d.ts +11 -0
  653. package/out/server/src/languageservice/utils/json.js +83 -0
  654. package/out/server/src/languageservice/utils/json.js.map +1 -0
  655. package/out/server/src/languageservice/utils/math.d.ts +1 -0
  656. package/out/server/src/languageservice/utils/math.js +13 -0
  657. package/out/server/src/languageservice/utils/math.js.map +1 -0
  658. package/out/server/src/languageservice/utils/objects.d.ts +16 -0
  659. package/out/server/src/languageservice/utils/objects.js +102 -0
  660. package/out/server/src/languageservice/utils/objects.js.map +1 -0
  661. package/out/server/src/languageservice/utils/parseUtils.d.ts +17 -0
  662. package/out/server/src/languageservice/utils/parseUtils.js +5 -0
  663. package/out/server/src/languageservice/utils/parseUtils.js.map +1 -0
  664. package/out/server/src/languageservice/utils/paths.d.ts +5 -0
  665. package/out/server/src/languageservice/utils/paths.js +48 -0
  666. package/out/server/src/languageservice/utils/paths.js.map +1 -0
  667. package/out/server/src/languageservice/utils/schemaUrls.d.ts +14 -0
  668. package/out/server/src/languageservice/utils/schemaUrls.js +64 -0
  669. package/out/server/src/languageservice/utils/schemaUrls.js.map +1 -0
  670. package/out/server/src/languageservice/utils/schemaUtils.d.ts +19 -0
  671. package/out/server/src/languageservice/utils/schemaUtils.js +70 -0
  672. package/out/server/src/languageservice/utils/schemaUtils.js.map +1 -0
  673. package/out/server/src/languageservice/utils/strings.d.ts +10 -0
  674. package/out/server/src/languageservice/utils/strings.js +89 -0
  675. package/out/server/src/languageservice/utils/strings.js.map +1 -0
  676. package/out/server/src/languageservice/utils/textBuffer.d.ts +12 -0
  677. package/out/server/src/languageservice/utils/textBuffer.js +49 -0
  678. package/out/server/src/languageservice/utils/textBuffer.js.map +1 -0
  679. package/out/server/src/languageservice/utils/yamlAstUtils.d.ts +13 -0
  680. package/out/server/src/languageservice/utils/yamlAstUtils.js +116 -0
  681. package/out/server/src/languageservice/utils/yamlAstUtils.js.map +1 -0
  682. package/out/server/src/languageservice/utils/yamlScalar.d.ts +1 -0
  683. package/out/server/src/languageservice/utils/yamlScalar.js +73 -0
  684. package/out/server/src/languageservice/utils/yamlScalar.js.map +1 -0
  685. package/out/server/src/languageservice/yamlLanguageService.d.ts +135 -0
  686. package/out/server/src/languageservice/yamlLanguageService.js +105 -0
  687. package/out/server/src/languageservice/yamlLanguageService.js.map +1 -0
  688. package/out/server/src/languageservice/yamlTypes.d.ts +18 -0
  689. package/out/server/src/languageservice/yamlTypes.js +7 -0
  690. package/out/server/src/languageservice/yamlTypes.js.map +1 -0
  691. package/out/server/src/nodeTranslationSetup.d.ts +9 -0
  692. package/out/server/src/nodeTranslationSetup.js +38 -0
  693. package/out/server/src/nodeTranslationSetup.js.map +1 -0
  694. package/out/server/src/requestTypes.d.ts +63 -0
  695. package/out/server/src/requestTypes.js +49 -0
  696. package/out/server/src/requestTypes.js.map +1 -0
  697. package/out/server/src/server.d.ts +1 -0
  698. package/out/server/src/server.js +57 -0
  699. package/out/server/src/server.js.map +1 -0
  700. package/out/server/src/webworker/yamlServerMain.d.ts +1 -0
  701. package/out/server/src/webworker/yamlServerMain.js +42 -0
  702. package/out/server/src/webworker/yamlServerMain.js.map +1 -0
  703. package/out/server/src/yamlServerInit.d.ts +23 -0
  704. package/out/server/src/yamlServerInit.js +127 -0
  705. package/out/server/src/yamlServerInit.js.map +1 -0
  706. package/out/server/src/yamlSettings.d.ts +112 -0
  707. package/out/server/src/yamlSettings.js +74 -0
  708. package/out/server/src/yamlSettings.js.map +1 -0
  709. package/out/server/test/arrUtils.test.d.ts +1 -0
  710. package/out/server/test/arrUtils.test.js +60 -0
  711. package/out/server/test/arrUtils.test.js.map +1 -0
  712. package/out/server/test/astUtils.test.d.ts +1 -0
  713. package/out/server/test/astUtils.test.js +79 -0
  714. package/out/server/test/astUtils.test.js.map +1 -0
  715. package/out/server/test/autoCompletion.test.d.ts +1 -0
  716. package/out/server/test/autoCompletion.test.js +2832 -0
  717. package/out/server/test/autoCompletion.test.js.map +1 -0
  718. package/out/server/test/autoCompletionFix.test.d.ts +1 -0
  719. package/out/server/test/autoCompletionFix.test.js +1591 -0
  720. package/out/server/test/autoCompletionFix.test.js.map +1 -0
  721. package/out/server/test/bundlel10n.test.d.ts +1 -0
  722. package/out/server/test/bundlel10n.test.js +73 -0
  723. package/out/server/test/bundlel10n.test.js.map +1 -0
  724. package/out/server/test/code-action-schema.test.d.ts +1 -0
  725. package/out/server/test/code-action-schema.test.js +89 -0
  726. package/out/server/test/code-action-schema.test.js.map +1 -0
  727. package/out/server/test/customTags.test.d.ts +1 -0
  728. package/out/server/test/customTags.test.js +88 -0
  729. package/out/server/test/customTags.test.js.map +1 -0
  730. package/out/server/test/defaultSnippets.test.d.ts +1 -0
  731. package/out/server/test/defaultSnippets.test.js +384 -0
  732. package/out/server/test/defaultSnippets.test.js.map +1 -0
  733. package/out/server/test/diagnostic-filter.test.d.ts +1 -0
  734. package/out/server/test/diagnostic-filter.test.js +161 -0
  735. package/out/server/test/diagnostic-filter.test.js.map +1 -0
  736. package/out/server/test/documentPositionCalculator.test.d.ts +1 -0
  737. package/out/server/test/documentPositionCalculator.test.js +69 -0
  738. package/out/server/test/documentPositionCalculator.test.js.map +1 -0
  739. package/out/server/test/documentSymbols.test.d.ts +1 -0
  740. package/out/server/test/documentSymbols.test.js +267 -0
  741. package/out/server/test/documentSymbols.test.js.map +1 -0
  742. package/out/server/test/findLinks.test.d.ts +1 -0
  743. package/out/server/test/findLinks.test.js +58 -0
  744. package/out/server/test/findLinks.test.js.map +1 -0
  745. package/out/server/test/flow-style-rewriter.test.d.ts +1 -0
  746. package/out/server/test/flow-style-rewriter.test.js +79 -0
  747. package/out/server/test/flow-style-rewriter.test.js.map +1 -0
  748. package/out/server/test/formatter.test.d.ts +1 -0
  749. package/out/server/test/formatter.test.js +170 -0
  750. package/out/server/test/formatter.test.js.map +1 -0
  751. package/out/server/test/hover.test.d.ts +1 -0
  752. package/out/server/test/hover.test.js +1056 -0
  753. package/out/server/test/hover.test.js.map +1 -0
  754. package/out/server/test/integration.test.d.ts +1 -0
  755. package/out/server/test/integration.test.js +293 -0
  756. package/out/server/test/integration.test.js.map +1 -0
  757. package/out/server/test/invalid-metaschema.test.d.ts +1 -0
  758. package/out/server/test/invalid-metaschema.test.js +43 -0
  759. package/out/server/test/invalid-metaschema.test.js.map +1 -0
  760. package/out/server/test/jsonParser.test.d.ts +1 -0
  761. package/out/server/test/jsonParser.test.js +1682 -0
  762. package/out/server/test/jsonParser.test.js.map +1 -0
  763. package/out/server/test/multipleDocuments.test.d.ts +1 -0
  764. package/out/server/test/multipleDocuments.test.js +117 -0
  765. package/out/server/test/multipleDocuments.test.js.map +1 -0
  766. package/out/server/test/objects.test.d.ts +1 -0
  767. package/out/server/test/objects.test.js +110 -0
  768. package/out/server/test/objects.test.js.map +1 -0
  769. package/out/server/test/paths.test.d.ts +1 -0
  770. package/out/server/test/paths.test.js +223 -0
  771. package/out/server/test/paths.test.js.map +1 -0
  772. package/out/server/test/scalaruri.test.d.ts +1 -0
  773. package/out/server/test/scalaruri.test.js +363 -0
  774. package/out/server/test/scalaruri.test.js.map +1 -0
  775. package/out/server/test/schema.test.d.ts +1 -0
  776. package/out/server/test/schema.test.js +952 -0
  777. package/out/server/test/schema.test.js.map +1 -0
  778. package/out/server/test/schema2019Validation.test.d.ts +1 -0
  779. package/out/server/test/schema2019Validation.test.js +3630 -0
  780. package/out/server/test/schema2019Validation.test.js.map +1 -0
  781. package/out/server/test/schema2020Validation.test.d.ts +1 -0
  782. package/out/server/test/schema2020Validation.test.js +2037 -0
  783. package/out/server/test/schema2020Validation.test.js.map +1 -0
  784. package/out/server/test/schemaRequestHandler.test.d.ts +1 -0
  785. package/out/server/test/schemaRequestHandler.test.js +48 -0
  786. package/out/server/test/schemaRequestHandler.test.js.map +1 -0
  787. package/out/server/test/schemaSelectionHandlers.test.d.ts +1 -0
  788. package/out/server/test/schemaSelectionHandlers.test.js +99 -0
  789. package/out/server/test/schemaSelectionHandlers.test.js.map +1 -0
  790. package/out/server/test/schemaValidation.test.d.ts +1 -0
  791. package/out/server/test/schemaValidation.test.js +2269 -0
  792. package/out/server/test/schemaValidation.test.js.map +1 -0
  793. package/out/server/test/settingsHandlers.test.d.ts +1 -0
  794. package/out/server/test/settingsHandlers.test.js +299 -0
  795. package/out/server/test/settingsHandlers.test.js.map +1 -0
  796. package/out/server/test/strings.test.d.ts +1 -0
  797. package/out/server/test/strings.test.js +92 -0
  798. package/out/server/test/strings.test.js.map +1 -0
  799. package/out/server/test/telemetry.test.d.ts +1 -0
  800. package/out/server/test/telemetry.test.js +36 -0
  801. package/out/server/test/telemetry.test.js.map +1 -0
  802. package/out/server/test/textBuffer.test.d.ts +1 -0
  803. package/out/server/test/textBuffer.test.js +41 -0
  804. package/out/server/test/textBuffer.test.js.map +1 -0
  805. package/out/server/test/utils/errorMessages.d.ts +27 -0
  806. package/out/server/test/utils/errorMessages.js +38 -0
  807. package/out/server/test/utils/errorMessages.js.map +1 -0
  808. package/out/server/test/utils/serviceSetup.d.ts +17 -0
  809. package/out/server/test/utils/serviceSetup.js +74 -0
  810. package/out/server/test/utils/serviceSetup.js.map +1 -0
  811. package/out/server/test/utils/testHelper.d.ts +78 -0
  812. package/out/server/test/utils/testHelper.js +202 -0
  813. package/out/server/test/utils/testHelper.js.map +1 -0
  814. package/out/server/test/utils/testsTypes.d.ts +29 -0
  815. package/out/server/test/utils/testsTypes.js +61 -0
  816. package/out/server/test/utils/testsTypes.js.map +1 -0
  817. package/out/server/test/utils/verifyError.d.ts +8 -0
  818. package/out/server/test/utils/verifyError.js +82 -0
  819. package/out/server/test/utils/verifyError.js.map +1 -0
  820. package/out/server/test/yaml-documents.test.d.ts +1 -0
  821. package/out/server/test/yaml-documents.test.js +198 -0
  822. package/out/server/test/yaml-documents.test.js.map +1 -0
  823. package/out/server/test/yamlCodeActions.test.d.ts +1 -0
  824. package/out/server/test/yamlCodeActions.test.js +864 -0
  825. package/out/server/test/yamlCodeActions.test.js.map +1 -0
  826. package/out/server/test/yamlCodeLens.test.d.ts +1 -0
  827. package/out/server/test/yamlCodeLens.test.js +165 -0
  828. package/out/server/test/yamlCodeLens.test.js.map +1 -0
  829. package/out/server/test/yamlCommands.test.d.ts +1 -0
  830. package/out/server/test/yamlCommands.test.js +89 -0
  831. package/out/server/test/yamlCommands.test.js.map +1 -0
  832. package/out/server/test/yamlDefinition.test.d.ts +1 -0
  833. package/out/server/test/yamlDefinition.test.js +30 -0
  834. package/out/server/test/yamlDefinition.test.js.map +1 -0
  835. package/out/server/test/yamlFolding.test.d.ts +1 -0
  836. package/out/server/test/yamlFolding.test.js +142 -0
  837. package/out/server/test/yamlFolding.test.js.map +1 -0
  838. package/out/server/test/yamlLanguageService.test.d.ts +1 -0
  839. package/out/server/test/yamlLanguageService.test.js +90 -0
  840. package/out/server/test/yamlLanguageService.test.js.map +1 -0
  841. package/out/server/test/yamlOnTypeFormatting.test.d.ts +1 -0
  842. package/out/server/test/yamlOnTypeFormatting.test.js +69 -0
  843. package/out/server/test/yamlOnTypeFormatting.test.js.map +1 -0
  844. package/out/server/test/yamlParser.test.d.ts +1 -0
  845. package/out/server/test/yamlParser.test.js +242 -0
  846. package/out/server/test/yamlParser.test.js.map +1 -0
  847. package/out/server/test/yamlRename.test.d.ts +1 -0
  848. package/out/server/test/yamlRename.test.js +106 -0
  849. package/out/server/test/yamlRename.test.js.map +1 -0
  850. package/out/server/test/yamlSchema.test.d.ts +1 -0
  851. package/out/server/test/yamlSchema.test.js +62 -0
  852. package/out/server/test/yamlSchema.test.js.map +1 -0
  853. package/out/server/test/yamlSchemaService.test.d.ts +1 -0
  854. package/out/server/test/yamlSchemaService.test.js +403 -0
  855. package/out/server/test/yamlSchemaService.test.js.map +1 -0
  856. package/out/server/test/yamlSelectionRanges.test.d.ts +1 -0
  857. package/out/server/test/yamlSelectionRanges.test.js +248 -0
  858. package/out/server/test/yamlSelectionRanges.test.js.map +1 -0
  859. package/out/server/test/yamlValidation.test.d.ts +1 -0
  860. package/out/server/test/yamlValidation.test.js +303 -0
  861. package/out/server/test/yamlValidation.test.js.map +1 -0
  862. package/package.json +106 -0
  863. package/scripts/check-dependencies.js +21 -0
  864. package/tsconfig.esm.json +15 -0
  865. package/tsconfig.umd.json +14 -0
@@ -0,0 +1,1114 @@
1
+ "use strict";
2
+ /*---------------------------------------------------------------------------------------------
3
+ * Copyright (c) Red Hat, Inc. All rights reserved.
4
+ * Copyright (c) Microsoft Corporation. All rights reserved.
5
+ * Licensed under the MIT License. See License.txt in the project root for license information.
6
+ *--------------------------------------------------------------------------------------------*/
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.YAMLSchemaService = exports.MODIFICATION_ACTIONS = void 0;
9
+ const jsonSchema_1 = require("../jsonSchema");
10
+ const yamlLanguageService_1 = require("../yamlLanguageService");
11
+ const jsonSchemaService_1 = require("vscode-json-languageservice/lib/umd/services/jsonSchemaService");
12
+ const vscode_uri_1 = require("vscode-uri");
13
+ const l10n = require("@vscode/l10n");
14
+ const path = require("path");
15
+ const modelineUtil_1 = require("./modelineUtil");
16
+ const yaml_1 = require("yaml");
17
+ const Json = require("jsonc-parser");
18
+ const ajv_1 = require("ajv");
19
+ const ajv_draft_04_1 = require("ajv-draft-04");
20
+ const _2019_1 = require("ajv/dist/2019");
21
+ const _2020_1 = require("ajv/dist/2020");
22
+ const crdUtil_1 = require("./crdUtil");
23
+ const schemaUrls_1 = require("../utils/schemaUrls");
24
+ const ajv4 = new ajv_draft_04_1.default({ allErrors: true });
25
+ const ajv7 = new ajv_1.default({ allErrors: true });
26
+ const ajv2019 = new _2019_1.default({ allErrors: true });
27
+ const ajv2020 = new _2020_1.default({ allErrors: true });
28
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
29
+ const jsonSchema04 = require('ajv-draft-04/dist/refs/json-schema-draft-04.json');
30
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
31
+ const jsonSchema07 = require('ajv/dist/refs/json-schema-draft-07.json');
32
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
33
+ const jsonSchema2019 = require('ajv/dist/refs/json-schema-2019-09/schema.json');
34
+ // eslint-disable-next-line @typescript-eslint/no-var-requires
35
+ const jsonSchema2020 = require('ajv/dist/refs/json-schema-2020-12/schema.json');
36
+ const schema04Validator = ajv4.compile(jsonSchema04);
37
+ const schema07Validator = ajv7.compile(jsonSchema07);
38
+ const schema2019Validator = ajv2019.compile(jsonSchema2019);
39
+ const schema2020Validator = ajv2020.compile(jsonSchema2020);
40
+ const schemaDialectCache = new Map();
41
+ const schemaDialectInFlight = new Map();
42
+ // metadata/keywords that don't add constraints and thus don't count as $ref siblings
43
+ const REF_SIBLING_NONCONSTRAINT_KEYS = new Set([
44
+ '$ref',
45
+ '_$ref',
46
+ '$schema',
47
+ '$id',
48
+ 'id',
49
+ '_baseUrl',
50
+ '_dialect',
51
+ '$anchor',
52
+ '$dynamicAnchor',
53
+ '$dynamicRef',
54
+ '$recursiveAnchor',
55
+ '$recursiveRef',
56
+ 'definitions',
57
+ '$defs',
58
+ '$comment',
59
+ 'title',
60
+ 'description',
61
+ '$vocabulary',
62
+ 'examples',
63
+ 'default',
64
+ 'url',
65
+ 'closestTitle',
66
+ 'unevaluatedProperties',
67
+ 'unevaluatedItems',
68
+ ]);
69
+ var MODIFICATION_ACTIONS;
70
+ (function (MODIFICATION_ACTIONS) {
71
+ MODIFICATION_ACTIONS[MODIFICATION_ACTIONS["delete"] = 0] = "delete";
72
+ MODIFICATION_ACTIONS[MODIFICATION_ACTIONS["add"] = 1] = "add";
73
+ MODIFICATION_ACTIONS[MODIFICATION_ACTIONS["deleteAll"] = 2] = "deleteAll";
74
+ })(MODIFICATION_ACTIONS = exports.MODIFICATION_ACTIONS || (exports.MODIFICATION_ACTIONS = {}));
75
+ class YAMLSchemaService extends jsonSchemaService_1.JSONSchemaService {
76
+ constructor(requestService, contextService, promiseConstructor, yamlSettings) {
77
+ super(requestService, contextService, promiseConstructor);
78
+ this.schemaUriToNameAndDescription = new Map();
79
+ this.customSchemaProvider = undefined;
80
+ this.requestService = requestService;
81
+ this.schemaPriorityMapping = new Map();
82
+ this.yamlSettings = yamlSettings;
83
+ }
84
+ registerCustomSchemaProvider(customSchemaProvider) {
85
+ this.customSchemaProvider = customSchemaProvider;
86
+ }
87
+ getAllSchemas() {
88
+ const result = [];
89
+ const schemaUris = new Set();
90
+ for (const filePattern of this.filePatternAssociations) {
91
+ const schemaUri = filePattern.uris[0];
92
+ if (schemaUris.has(schemaUri)) {
93
+ continue;
94
+ }
95
+ schemaUris.add(schemaUri);
96
+ const schemaHandle = {
97
+ uri: schemaUri,
98
+ fromStore: false,
99
+ usedForCurrentFile: false,
100
+ };
101
+ if (this.schemaUriToNameAndDescription.has(schemaUri)) {
102
+ const { name, description, versions } = this.schemaUriToNameAndDescription.get(schemaUri);
103
+ schemaHandle.name = name;
104
+ schemaHandle.description = description;
105
+ schemaHandle.fromStore = true;
106
+ schemaHandle.versions = versions;
107
+ }
108
+ result.push(schemaHandle);
109
+ }
110
+ return result;
111
+ }
112
+ collectSchemaNodes(push, ...values) {
113
+ const collect = (value) => {
114
+ if (!value || typeof value !== 'object')
115
+ return;
116
+ if (Array.isArray(value)) {
117
+ for (const entry of value) {
118
+ collect(entry);
119
+ }
120
+ return;
121
+ }
122
+ push(value);
123
+ };
124
+ for (const value of values) {
125
+ collect(value);
126
+ }
127
+ }
128
+ schemaMapValues(map) {
129
+ if (!map || typeof map !== 'object')
130
+ return undefined;
131
+ return Object.values(map);
132
+ }
133
+ async resolveSchemaContent(schemaToResolve, schemaURL, dependencies) {
134
+ const resolveErrors = schemaToResolve.errors.slice(0);
135
+ const loc = toDisplayString(schemaURL);
136
+ const raw = schemaToResolve.schema;
137
+ if (raw === null || Array.isArray(raw) || (typeof raw !== 'object' && typeof raw !== 'boolean')) {
138
+ const got = raw === null ? 'null' : Array.isArray(raw) ? 'array' : typeof raw;
139
+ resolveErrors.push(l10n.t("Schema '{0}' is not valid: {1}", loc, `expected a JSON Schema object or boolean, got "${got}".`));
140
+ return new jsonSchemaService_1.ResolvedSchema({}, resolveErrors);
141
+ }
142
+ const _cloneSchema = (value, seen, stopCondition) => {
143
+ // primitives and null
144
+ if (value === null || typeof value !== 'object')
145
+ return value;
146
+ if (stopCondition) {
147
+ const replacement = stopCondition(value, seen.size);
148
+ if (replacement !== undefined)
149
+ return replacement;
150
+ }
151
+ // already cloned
152
+ if (seen.has(value))
153
+ return seen.get(value);
154
+ // clone arrays
155
+ if (Array.isArray(value)) {
156
+ const arr = [];
157
+ seen.set(value, arr);
158
+ for (const item of value) {
159
+ arr.push(_cloneSchema(item, seen, stopCondition));
160
+ }
161
+ return arr;
162
+ }
163
+ // clone objects
164
+ const result = {};
165
+ seen.set(value, result);
166
+ for (const prop in value) {
167
+ result[prop] = _cloneSchema(value[prop], seen, stopCondition);
168
+ }
169
+ return result;
170
+ };
171
+ /**
172
+ * ----------------------------
173
+ * Meta-validate a schema node against its dialect's meta-schema
174
+ * ----------------------------
175
+ */
176
+ const _loadSchema = this.loadSchema.bind(this);
177
+ async function _metaValidateSchemaNode(node, hasNestedSchema) {
178
+ if (!node || typeof node !== 'object')
179
+ return;
180
+ const dialect = await pickSchemaDialect(node.$schema, _loadSchema);
181
+ dialect && (node._dialect = dialect);
182
+ const validator = pickMetaValidator(dialect);
183
+ if (!validator)
184
+ return;
185
+ let toValidate = node;
186
+ if (hasNestedSchema) {
187
+ // clone for meta-validation: stop at dialect boundaries abd replace with {}
188
+ const stopAtDialectBoundary = (val, seenSize) => {
189
+ if (seenSize !== 0 && val && typeof val === 'object' && val.$schema)
190
+ return {};
191
+ return undefined;
192
+ };
193
+ toValidate = _cloneSchema(node, new Map(), stopAtDialectBoundary);
194
+ }
195
+ if (!validator(toValidate)) {
196
+ const errs = [];
197
+ for (const err of validator.errors) {
198
+ errs.push(`${err.instancePath} : ${err.message}`);
199
+ }
200
+ resolveErrors.push(l10n.t("Schema '{0}' is not valid: {1}", loc, `\n${errs.join('\n')}`));
201
+ }
202
+ }
203
+ const resourceIndexByUri = new Map();
204
+ const _getResourceIndex = (resourceUri) => {
205
+ let entry = resourceIndexByUri.get(resourceUri);
206
+ if (!entry) {
207
+ entry = { fragments: new Map() };
208
+ resourceIndexByUri.set(resourceUri, entry);
209
+ }
210
+ return entry;
211
+ };
212
+ /**
213
+ * Adds a resource's dynamic anchors to the inherited scope from parent resources
214
+ *
215
+ * Draft 2020-12: For $dynamicRef resolution, when schema A references schema B,
216
+ * B's dynamic anchors are added to A's scope. This builds a chain where $dynamicRef
217
+ * looks for the outermost (first) matching anchor.
218
+ */
219
+ const _addResourceDynamicAnchors = (scope, resourceUri) => {
220
+ const entry = resourceIndexByUri.get(resourceUri);
221
+ if (!entry || entry.fragments.size === 0)
222
+ return scope;
223
+ let result = scope;
224
+ for (const [name, entryItem] of entry.fragments) {
225
+ if (!entryItem.dynamic)
226
+ continue;
227
+ const current = result?.get(name) ?? [];
228
+ if (current.some((existing) => existing._baseUrl === resourceUri))
229
+ continue;
230
+ // clone map on first modification
231
+ if (result === scope)
232
+ result = scope ? new Map(scope) : new Map();
233
+ result.set(name, current.concat(entryItem.node));
234
+ }
235
+ return result;
236
+ };
237
+ // resolve relative URI against base URI
238
+ // e.g. resolve "./foo.json" against "http://example.com/bar.json" => "http://example.com/foo.json"
239
+ const _resolveAgainstBase = (baseUri, ref) => {
240
+ if (this.contextService)
241
+ return this.contextService.resolveRelativePath(ref, baseUri);
242
+ return this.normalizeId(ref);
243
+ };
244
+ const _preferLocalBaseForRemoteId = async (currentBase, id) => {
245
+ try {
246
+ const currentBaseUri = vscode_uri_1.URI.parse(currentBase);
247
+ const idUri = vscode_uri_1.URI.parse(id);
248
+ const localFileName = path.posix.basename(idUri.path);
249
+ const localDir = path.posix.dirname(currentBaseUri.path);
250
+ const localPath = path.posix.join(localDir, localFileName);
251
+ const localUriStr = currentBaseUri.with({ path: localPath, query: idUri.query, fragment: idUri.fragment }).toString();
252
+ if (localUriStr === currentBase)
253
+ return localUriStr;
254
+ const content = await this.requestService(localUriStr);
255
+ return content ? localUriStr : _resolveAgainstBase(currentBase, id);
256
+ }
257
+ catch {
258
+ return _resolveAgainstBase(currentBase, id);
259
+ }
260
+ };
261
+ const _indexSchemaResources = async (root, initialBaseUri) => {
262
+ const preOrderStack = [{ node: root, baseUri: initialBaseUri }];
263
+ const postOrderStack = [];
264
+ const childListByNode = new WeakMap();
265
+ const seen = new Set();
266
+ while (preOrderStack.length) {
267
+ const current = preOrderStack.pop();
268
+ if (!current)
269
+ continue;
270
+ const node = current.node;
271
+ if (!node || typeof node !== 'object' || seen.has(node))
272
+ continue;
273
+ seen.add(node);
274
+ let baseUri = current.baseUri;
275
+ const id = node.$id || node.id;
276
+ if (id) {
277
+ const preferredBaseUri = await _preferLocalBaseForRemoteId(baseUri, id);
278
+ node._baseUrl = preferredBaseUri;
279
+ const hashIndex = preferredBaseUri.indexOf('#');
280
+ if (hashIndex !== -1 && hashIndex < preferredBaseUri.length - 1) {
281
+ // Draft-07 and earlier: $id with fragment defines a plain-name anchor scoped to the resolved base
282
+ const frag = preferredBaseUri.slice(hashIndex + 1);
283
+ _getResourceIndex(baseUri).fragments.set(frag, { node });
284
+ }
285
+ else {
286
+ // $id without fragment creates a new embedded resource scope
287
+ baseUri = preferredBaseUri;
288
+ const entry = _getResourceIndex(preferredBaseUri);
289
+ if (!entry.root) {
290
+ entry.root = node;
291
+ }
292
+ }
293
+ }
294
+ // Draft 2019-09+: $anchor keyword
295
+ if (node.$anchor) {
296
+ _getResourceIndex(baseUri).fragments.set(node.$anchor, { node });
297
+ }
298
+ // Draft 2020-12+: $dynamicAnchor keyword
299
+ if (node.$dynamicAnchor) {
300
+ node._baseUrl = baseUri;
301
+ _getResourceIndex(baseUri).fragments.set(node.$dynamicAnchor, { node, dynamic: true });
302
+ }
303
+ const children = [];
304
+ childListByNode.set(node, children);
305
+ // collect all child schemas
306
+ this.collectSchemaNodes((entry) => {
307
+ children.push(entry);
308
+ preOrderStack.push({ node: entry, baseUri });
309
+ }, node.not, node.if, node.then, node.else, node.contains, node.propertyNames, node.additionalProperties, node.items, node.additionalItems, node.prefixItems, this.schemaMapValues(node.properties), this.schemaMapValues(node.patternProperties), this.schemaMapValues(node.definitions), this.schemaMapValues(node.$defs), this.schemaMapValues(node.dependentSchemas), this.schemaMapValues(node.dependencies), node.allOf, node.anyOf, node.oneOf, node.schemaSequence);
310
+ postOrderStack.push(node);
311
+ }
312
+ const hasNestedSchema = new WeakMap();
313
+ while (postOrderStack.length) {
314
+ const node = postOrderStack.pop();
315
+ let hasNested = false;
316
+ for (const child of childListByNode.get(node)) {
317
+ if (child.$schema || hasNestedSchema.get(child)) {
318
+ hasNested = true;
319
+ break;
320
+ }
321
+ }
322
+ hasNestedSchema.set(node, hasNested);
323
+ if (node === root || node.$schema)
324
+ await _metaValidateSchemaNode(node, hasNested);
325
+ }
326
+ };
327
+ let schema = raw;
328
+ const schemaBaseURL = schemaToResolve.uri ?? schemaURL;
329
+ await _indexSchemaResources(schema, schemaBaseURL);
330
+ const _findSection = (schemaRoot, refPath, sourceURI) => {
331
+ if (!refPath) {
332
+ return schemaRoot;
333
+ }
334
+ // JSON pointer style
335
+ if (refPath[0] === '/') {
336
+ let current = schemaRoot;
337
+ const parts = refPath.substr(1).split('/');
338
+ for (const part of parts) {
339
+ // in JSON Pointer: ~ must be escaped as ~0, / must be escaped as ~1
340
+ current = current?.[part.replace(/~1/g, '/').replace(/~0/g, '~')];
341
+ if (current === null)
342
+ return undefined;
343
+ }
344
+ return current;
345
+ }
346
+ // plain-name fragment ($anchor or $id#fragment) -> lookup in collected fragments
347
+ return _getResourceIndex(sourceURI).fragments.get(refPath).node;
348
+ };
349
+ const _merge = (target, sourceRoot, sourceURI, refPath, clone = false) => {
350
+ const section = _findSection(sourceRoot, refPath, sourceURI);
351
+ if (typeof section === 'boolean') {
352
+ if (!section)
353
+ target.not = {};
354
+ return;
355
+ }
356
+ if (typeof section === 'object' && section) {
357
+ const source = clone ? _cloneSchema(section, new Map()) : section;
358
+ for (const key in source) {
359
+ if (Object.prototype.hasOwnProperty.call(source, key) && !Object.prototype.hasOwnProperty.call(target, key)) {
360
+ target[key] = source[key];
361
+ }
362
+ }
363
+ return;
364
+ }
365
+ else {
366
+ resolveErrors.push(l10n.t("$ref '{0}' in '{1}' cannot be resolved.", refPath, sourceURI));
367
+ }
368
+ };
369
+ const _resolveRefUri = (parentSchemaURL, refUri) => {
370
+ const resolvedAgainstParent = _resolveAgainstBase(parentSchemaURL, refUri);
371
+ if (!refUri.startsWith('/'))
372
+ return resolvedAgainstParent;
373
+ const parentResource = resourceIndexByUri.get(parentSchemaURL)?.root;
374
+ const parentResourceId = parentResource?.$id || parentResource?.id;
375
+ const resolvedParentId = _resolveAgainstBase(parentSchemaURL, parentResourceId);
376
+ if (!resolvedParentId.startsWith('http://') && !resolvedParentId.startsWith('https://'))
377
+ return resolvedAgainstParent;
378
+ return _resolveAgainstBase(resolvedParentId, refUri);
379
+ };
380
+ const _resolveLocalSiblingFromRemoteUri = (parentSchemaURL, resolvedRefUri) => {
381
+ try {
382
+ const parentUri = vscode_uri_1.URI.parse(parentSchemaURL);
383
+ const targetUri = vscode_uri_1.URI.parse(resolvedRefUri);
384
+ if (parentUri.scheme !== 'file')
385
+ return undefined;
386
+ if (targetUri.scheme !== 'http' && targetUri.scheme !== 'https')
387
+ return undefined;
388
+ const localFileName = path.posix.basename(targetUri.path);
389
+ if (!localFileName)
390
+ return undefined;
391
+ const localDir = path.posix.dirname(parentUri.path);
392
+ const localPath = path.posix.join(localDir, localFileName);
393
+ return parentUri.with({ path: localPath, query: targetUri.query, fragment: targetUri.fragment }).toString();
394
+ }
395
+ catch {
396
+ return undefined;
397
+ }
398
+ };
399
+ const resolveExternalLink = (node, uri, linkPath, parentSchemaURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope
400
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
401
+ ) => {
402
+ const _attachResolvedSchema = (node, schemaRoot, schemaUri, linkPath, parentSchemaDependencies, resolveRefDependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope
403
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
404
+ ) => {
405
+ parentSchemaDependencies[schemaUri] = true;
406
+ _merge(node, schemaRoot, schemaUri, linkPath, !!inheritedDynamicScope || !!recursiveAnchorBase);
407
+ if (!recursiveAnchorBase || !node._baseUrl)
408
+ node._baseUrl = schemaUri;
409
+ node.url = schemaUri;
410
+ const nextStack = new Set(resolutionStack);
411
+ nextStack.add(schemaUri);
412
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
413
+ return resolveRefs(node, schemaRoot, schemaUri, resolveRefDependencies, nextStack, recursiveAnchorBase, inheritedDynamicScope);
414
+ };
415
+ const _resolveByUri = (targetUris, index = 0) => {
416
+ const targetUri = targetUris[index];
417
+ const embeddedSchema = resourceIndexByUri.get(targetUri)?.root;
418
+ if (embeddedSchema) {
419
+ return _attachResolvedSchema(node, embeddedSchema, targetUri, linkPath, parentSchemaDependencies, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope);
420
+ }
421
+ const referencedHandle = this.getOrAddSchemaHandle(targetUri);
422
+ return referencedHandle.getUnresolvedSchema().then(async (unresolvedSchema) => {
423
+ if (unresolvedSchema.errors?.some((error) => error.toLowerCase().includes('unable to load schema from')) &&
424
+ index + 1 < targetUris.length) {
425
+ return _resolveByUri(targetUris, index + 1);
426
+ }
427
+ if (unresolvedSchema.errors.length) {
428
+ const loc = linkPath ? targetUri + '#' + linkPath : targetUri;
429
+ resolveErrors.push(l10n.t("Problems loading reference '{0}': {1}", loc, unresolvedSchema.errors[0]));
430
+ }
431
+ // index resources for the newly loaded schema
432
+ await _indexSchemaResources(unresolvedSchema.schema, targetUri);
433
+ return _attachResolvedSchema(node, unresolvedSchema.schema, targetUri, linkPath, parentSchemaDependencies, referencedHandle.dependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope);
434
+ });
435
+ };
436
+ const resolvedUri = _resolveRefUri(parentSchemaURL, uri);
437
+ const localSiblingUri = _resolveLocalSiblingFromRemoteUri(parentSchemaURL, resolvedUri);
438
+ const targetUris = localSiblingUri && localSiblingUri !== resolvedUri ? [localSiblingUri, resolvedUri] : [resolvedUri];
439
+ return _resolveByUri(targetUris);
440
+ };
441
+ const resolveRefs = async (node, parentSchema, parentSchemaURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope
442
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
443
+ ) => {
444
+ if (!node || typeof node !== 'object') {
445
+ return null;
446
+ }
447
+ const toWalk = [{ node, baseURL: parentSchemaURL, recursiveAnchorBase, inheritedDynamicScope }];
448
+ const seen = new WeakSet(); // prevents re-walking the same schema object graph
449
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
450
+ const openPromises = [];
451
+ // handle $ref with siblings based on dialect
452
+ const _handleRef = (next, nodeBaseURL, nodeDialect, recursiveAnchorBase, inheritedDynamicScope, siblingRefCycleKeys) => {
453
+ const currentDynamicScope = _addResourceDynamicAnchors(inheritedDynamicScope, nodeBaseURL);
454
+ this.collectSchemaNodes((entry) => toWalk.push({ node: entry, baseURL: nodeBaseURL, recursiveAnchorBase, inheritedDynamicScope: currentDynamicScope }), this.schemaMapValues(next.definitions || next.$defs));
455
+ // checks if a node with $ref has other constraint keywords
456
+ const _hasRefSiblings = (node) => {
457
+ for (const k of Object.keys(node)) {
458
+ if (REF_SIBLING_NONCONSTRAINT_KEYS.has(k))
459
+ continue;
460
+ return true;
461
+ }
462
+ return false;
463
+ };
464
+ /**
465
+ * For Draft-2019+:
466
+ * { $ref: "...", <siblings...> }
467
+ * becomes
468
+ * { allOf: [ { $ref: "..." }, <siblings...> ] }
469
+ */
470
+ const _rewriteRefWithSiblingsToAllOf = (node) => {
471
+ const siblings = {};
472
+ for (const k of Object.keys(node)) {
473
+ if (!REF_SIBLING_NONCONSTRAINT_KEYS.has(k)) {
474
+ siblings[k] = node[k];
475
+ delete node[k];
476
+ }
477
+ }
478
+ const refValue = node.$dynamicRef ?? node.$recursiveRef ?? node.$ref;
479
+ if (typeof refValue !== 'string')
480
+ return;
481
+ node.allOf = [
482
+ { [node.$dynamicRef ? '$dynamicRef' : node.$recursiveRef ? '$recursiveRef' : '$ref']: refValue },
483
+ siblings,
484
+ ];
485
+ delete node.$dynamicRef;
486
+ delete node.$recursiveRef;
487
+ delete node.$ref;
488
+ };
489
+ const _stripRefSiblings = (node) => {
490
+ for (const k of Object.keys(node)) {
491
+ if (!REF_SIBLING_NONCONSTRAINT_KEYS.has(k))
492
+ delete node[k];
493
+ }
494
+ };
495
+ const seenRefs = new Set();
496
+ const _mergeIfResourceAlreadyInResolutionStack = (ref, resolvedResource, frag) => {
497
+ if (!resolutionStack.has(resolvedResource))
498
+ return false;
499
+ if (!seenRefs.has(ref)) {
500
+ const source = resourceIndexByUri.get(resolvedResource)?.root;
501
+ if (source && typeof source === 'object') {
502
+ _merge(next, source, resolvedResource, frag, !!recursiveAnchorBase);
503
+ }
504
+ seenRefs.add(ref);
505
+ }
506
+ return true;
507
+ };
508
+ while (next.$dynamicRef || next.$recursiveRef || next.$ref) {
509
+ const isDynamicRef = typeof next.$dynamicRef === 'string';
510
+ const isRecursiveRef = !isDynamicRef && typeof next.$recursiveRef === 'string';
511
+ const rawRef = next.$dynamicRef ?? next.$recursiveRef ?? next.$ref;
512
+ if (typeof rawRef !== 'string')
513
+ break;
514
+ next._$ref = rawRef;
515
+ // parse ref into base URI and fragment
516
+ const ref = decodeURIComponent(rawRef);
517
+ const segments = ref.split('#', 2);
518
+ const baseUri = segments[0];
519
+ const frag = segments.length > 1 ? segments[1] : '';
520
+ const resolvedRefKey = `${baseUri ? _resolveAgainstBase(nodeBaseURL, baseUri) : nodeBaseURL}#${frag}`;
521
+ if (_hasRefSiblings(next)) {
522
+ // Draft-07 and earlier: ignore siblings
523
+ if (nodeDialect === jsonSchema_1.SchemaDialect.draft04 || nodeDialect === jsonSchema_1.SchemaDialect.draft07) {
524
+ _stripRefSiblings(next);
525
+ }
526
+ else {
527
+ if (siblingRefCycleKeys?.has(resolvedRefKey))
528
+ break;
529
+ // Draft-2019+: support sibling keywords
530
+ _rewriteRefWithSiblingsToAllOf(next);
531
+ if (Array.isArray(next.allOf)) {
532
+ for (let i = 0; i < next.allOf.length; i++) {
533
+ const entry = next.allOf[i];
534
+ if (entry && typeof entry === 'object') {
535
+ let nextSiblingRefCycleKeys;
536
+ if (i === 0) {
537
+ nextSiblingRefCycleKeys = new Set(siblingRefCycleKeys);
538
+ nextSiblingRefCycleKeys.add(resolvedRefKey);
539
+ }
540
+ toWalk.push({
541
+ node: entry,
542
+ baseURL: nodeBaseURL,
543
+ recursiveAnchorBase,
544
+ inheritedDynamicScope: currentDynamicScope,
545
+ siblingRefCycleKeys: nextSiblingRefCycleKeys,
546
+ });
547
+ }
548
+ }
549
+ }
550
+ return;
551
+ }
552
+ }
553
+ delete next.$dynamicRef;
554
+ delete next.$recursiveRef;
555
+ delete next.$ref;
556
+ // Draft-2019+: $recursiveRef
557
+ if (isRecursiveRef && (ref === '#' || ref === '')) {
558
+ const targetRoot = resourceIndexByUri.get(nodeBaseURL)?.root;
559
+ const recursiveBase = targetRoot?.$recursiveAnchor && recursiveAnchorBase ? recursiveAnchorBase : nodeBaseURL;
560
+ if (recursiveBase.length > 0) {
561
+ if (resolutionStack?.has(recursiveBase) || recursiveBase === nodeBaseURL) {
562
+ const sourceRoot = resourceIndexByUri.get(recursiveBase)?.root ?? parentSchema;
563
+ if (!seenRefs.has(ref)) {
564
+ _merge(next, sourceRoot, recursiveBase, '', false);
565
+ seenRefs.add(ref);
566
+ }
567
+ continue;
568
+ }
569
+ openPromises.push(resolveExternalLink(next, recursiveBase, '', nodeBaseURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, currentDynamicScope));
570
+ return;
571
+ }
572
+ continue;
573
+ }
574
+ // Draft-2020+: $dynamicRef
575
+ else if (isDynamicRef) {
576
+ const targetResource = baseUri.length > 0 ? _resolveAgainstBase(nodeBaseURL, baseUri) : nodeBaseURL;
577
+ const targetFragments = resourceIndexByUri.get(targetResource)?.fragments;
578
+ const targetHasDynamicAnchor = frag.length > 0 && targetFragments?.get(frag)?.dynamic;
579
+ const dynamicTarget = targetHasDynamicAnchor ? currentDynamicScope?.get(frag)?.[0] : undefined;
580
+ const resolveResource = dynamicTarget ? dynamicTarget._baseUrl : targetResource;
581
+ if (dynamicTarget && (resolveResource === nodeBaseURL || resolutionStack.has(resolveResource))) {
582
+ if (!seenRefs.has(ref)) {
583
+ _merge(next, dynamicTarget, resolveResource, '', false);
584
+ seenRefs.add(ref);
585
+ }
586
+ continue;
587
+ }
588
+ if (baseUri.length > 0 || targetHasDynamicAnchor) {
589
+ if (_mergeIfResourceAlreadyInResolutionStack(ref, resolveResource, frag))
590
+ continue;
591
+ openPromises.push(resolveExternalLink(next, resolveResource, frag, nodeBaseURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, currentDynamicScope));
592
+ return;
593
+ }
594
+ }
595
+ // normal $ref with external baseUri
596
+ else if (baseUri.length > 0) {
597
+ const resolvedBaseUri = _resolveAgainstBase(nodeBaseURL, baseUri);
598
+ if (_mergeIfResourceAlreadyInResolutionStack(ref, resolvedBaseUri, frag))
599
+ continue;
600
+ // resolve relative to this node's base URL
601
+ openPromises.push(resolveExternalLink(next, baseUri, frag, nodeBaseURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, currentDynamicScope));
602
+ return;
603
+ }
604
+ // local $ref or $dynamicRef
605
+ if (!seenRefs.has(ref)) {
606
+ _merge(next, parentSchema, nodeBaseURL, frag, isDynamicRef && !!currentDynamicScope);
607
+ seenRefs.add(ref);
608
+ }
609
+ }
610
+ // recursively process children
611
+ this.collectSchemaNodes((entry) => toWalk.push({
612
+ node: entry,
613
+ baseURL: next._baseUrl || nodeBaseURL,
614
+ dialect: nodeDialect,
615
+ recursiveAnchorBase,
616
+ inheritedDynamicScope: currentDynamicScope,
617
+ }), next.not, next.if, next.then, next.else, next.contains, next.propertyNames, next.additionalProperties, next.items, next.additionalItems, next.prefixItems, this.schemaMapValues(next.properties), this.schemaMapValues(next.patternProperties), this.schemaMapValues(next.dependentSchemas), this.schemaMapValues(next.dependencies), next.allOf, next.anyOf, next.oneOf, next.schemaSequence);
618
+ };
619
+ // handle file path with fragments
620
+ if (parentSchemaURL.indexOf('#') > 0) {
621
+ const segments = parentSchemaURL.split('#', 2);
622
+ if (segments[0].length > 0 && segments[1].length > 0) {
623
+ const newSchema = {};
624
+ await resolveExternalLink(newSchema, segments[0], segments[1], parentSchemaURL, parentSchemaDependencies, resolutionStack, recursiveAnchorBase, inheritedDynamicScope);
625
+ for (const key in schema) {
626
+ if (key === 'required') {
627
+ continue;
628
+ }
629
+ if (Object.prototype.hasOwnProperty.call(schema, key) && !Object.prototype.hasOwnProperty.call(newSchema, key)) {
630
+ newSchema[key] = schema[key];
631
+ }
632
+ }
633
+ schema = newSchema;
634
+ }
635
+ }
636
+ while (toWalk.length) {
637
+ const item = toWalk.pop();
638
+ const next = item.node;
639
+ const nodeBaseURL = next._baseUrl || item.baseURL;
640
+ const nodeDialect = next._dialect || item.dialect;
641
+ const nodeRecursiveAnchorBase = item.recursiveAnchorBase ?? (next.$recursiveAnchor ? nodeBaseURL : undefined);
642
+ if (seen.has(next))
643
+ continue;
644
+ seen.add(next);
645
+ _handleRef(next, nodeBaseURL, nodeDialect, nodeRecursiveAnchorBase, item.inheritedDynamicScope, item.siblingRefCycleKeys);
646
+ }
647
+ return Promise.all(openPromises);
648
+ };
649
+ const resolutionStack = new Set(); // prevents $ref/$recursiveRef/$dynamicRef loops across schema URIs
650
+ const rootResource = schema._baseUrl || schemaURL;
651
+ if (rootResource)
652
+ resolutionStack.add(rootResource);
653
+ await resolveRefs(schema, schema, schemaURL, dependencies, resolutionStack);
654
+ return new jsonSchemaService_1.ResolvedSchema(schema, resolveErrors);
655
+ }
656
+ getSchemaForResource(resource, doc) {
657
+ const resolveModelineSchema = () => {
658
+ let schemaFromModeline = (0, modelineUtil_1.getSchemaFromModeline)(doc);
659
+ if (schemaFromModeline !== undefined) {
660
+ if (!schemaFromModeline.startsWith('file:') && !schemaFromModeline.startsWith('http')) {
661
+ // If path contains a fragment and it is left intact, "#" will be
662
+ // considered part of the filename and converted to "%23" by
663
+ // path.resolve() -> take it out and add back after path.resolve
664
+ let appendix = '';
665
+ if (schemaFromModeline.indexOf('#') > 0) {
666
+ const segments = schemaFromModeline.split('#', 2);
667
+ schemaFromModeline = segments[0];
668
+ appendix = segments[1];
669
+ }
670
+ if (!path.isAbsolute(schemaFromModeline)) {
671
+ const resUri = vscode_uri_1.URI.parse(resource);
672
+ schemaFromModeline = vscode_uri_1.URI.file(path.resolve(path.parse(resUri.fsPath).dir, schemaFromModeline)).toString();
673
+ }
674
+ else {
675
+ schemaFromModeline = vscode_uri_1.URI.file(schemaFromModeline).toString();
676
+ }
677
+ if (appendix.length > 0) {
678
+ schemaFromModeline += '#' + appendix;
679
+ }
680
+ }
681
+ return schemaFromModeline;
682
+ }
683
+ };
684
+ const resolveSchemaForResource = (schemas) => {
685
+ const schemaHandle = super.createCombinedSchema(resource, schemas);
686
+ return schemaHandle.getResolvedSchema().then((schema) => {
687
+ return this.finalizeResolvedSchema(schema, schemaHandle.url, doc, false);
688
+ });
689
+ };
690
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
691
+ const resolveSchema = async () => {
692
+ const seen = Object.create(null);
693
+ const schemas = [];
694
+ let k8sAllSchema = undefined;
695
+ for (const entry of this.filePatternAssociations) {
696
+ if (entry.matchesPattern(resource)) {
697
+ for (const schemaId of entry.getURIs()) {
698
+ if (!seen[schemaId]) {
699
+ if (this.yamlSettings?.kubernetesCRDStoreEnabled && schemaId === schemaUrls_1.KUBERNETES_SCHEMA_URL) {
700
+ if (!k8sAllSchema) {
701
+ k8sAllSchema = await this.getResolvedSchema(schemaUrls_1.KUBERNETES_SCHEMA_URL);
702
+ }
703
+ const kubeSchema = (0, crdUtil_1.autoDetectKubernetesSchemaFromDocument)(doc, this.yamlSettings.kubernetesCRDStoreUrl ?? schemaUrls_1.CRD_CATALOG_URL, k8sAllSchema);
704
+ if (kubeSchema) {
705
+ schemas.push(kubeSchema);
706
+ seen[schemaId] = true;
707
+ }
708
+ else {
709
+ schemas.push(schemaId);
710
+ seen[schemaId] = true;
711
+ }
712
+ }
713
+ else {
714
+ schemas.push(schemaId);
715
+ seen[schemaId] = true;
716
+ }
717
+ }
718
+ }
719
+ }
720
+ }
721
+ if (schemas.length > 0) {
722
+ // Join all schemas with the highest priority.
723
+ const highestPrioSchemas = this.highestPrioritySchemas(schemas);
724
+ return resolveSchemaForResource(highestPrioSchemas);
725
+ }
726
+ return Promise.resolve(null);
727
+ };
728
+ const modelineSchema = resolveModelineSchema();
729
+ if (modelineSchema) {
730
+ return resolveSchemaForResource([modelineSchema]);
731
+ }
732
+ if (this.customSchemaProvider) {
733
+ return this.customSchemaProvider(resource)
734
+ .then((schemaUri) => {
735
+ if (Array.isArray(schemaUri)) {
736
+ if (schemaUri.length === 0) {
737
+ return resolveSchema();
738
+ }
739
+ return Promise.all(schemaUri.map((schemaUri) => {
740
+ return this.resolveCustomSchema(schemaUri, doc);
741
+ })).then((schemas) => {
742
+ return {
743
+ errors: [],
744
+ schema: {
745
+ allOf: schemas.map((schemaObj) => {
746
+ return schemaObj.schema;
747
+ }),
748
+ },
749
+ };
750
+ }, () => {
751
+ return resolveSchema();
752
+ });
753
+ }
754
+ if (!schemaUri) {
755
+ return resolveSchema();
756
+ }
757
+ return this.resolveCustomSchema(schemaUri, doc);
758
+ })
759
+ .then((schema) => {
760
+ return schema;
761
+ }, () => {
762
+ return resolveSchema();
763
+ });
764
+ }
765
+ return resolveSchema();
766
+ }
767
+ finalizeResolvedSchema(schema, schemaUrl, doc, includeErrorsForSequence) {
768
+ if (schema.schema && typeof schema.schema === 'object') {
769
+ schema.schema.url = schemaUrl;
770
+ if (schema.schema.schemaSequence && schema.schema.schemaSequence[doc.currentDocIndex]) {
771
+ const selectedSchema = schema.schema.schemaSequence[doc.currentDocIndex];
772
+ if (includeErrorsForSequence) {
773
+ return new jsonSchemaService_1.ResolvedSchema(selectedSchema, schema.errors);
774
+ }
775
+ return new jsonSchemaService_1.ResolvedSchema(selectedSchema);
776
+ }
777
+ }
778
+ return schema;
779
+ }
780
+ // Set the priority of a schema in the schema service
781
+ addSchemaPriority(uri, priority) {
782
+ let currSchemaArray = this.schemaPriorityMapping.get(uri);
783
+ if (currSchemaArray) {
784
+ currSchemaArray = currSchemaArray.add(priority);
785
+ this.schemaPriorityMapping.set(uri, currSchemaArray);
786
+ }
787
+ else {
788
+ this.schemaPriorityMapping.set(uri, new Set().add(priority));
789
+ }
790
+ }
791
+ /**
792
+ * Search through all the schemas and find the ones with the highest priority
793
+ */
794
+ highestPrioritySchemas(schemas) {
795
+ let highestPrio = 0;
796
+ const priorityMapping = new Map();
797
+ schemas.forEach((schema) => {
798
+ // If the schema does not have a priority then give it a default one of [0]
799
+ const priority = this.schemaPriorityMapping.get(schema) || [0];
800
+ priority.forEach((prio) => {
801
+ if (prio > highestPrio) {
802
+ highestPrio = prio;
803
+ }
804
+ // Build up a mapping of priority to schemas so that we can easily get the highest priority schemas easier
805
+ let currPriorityArray = priorityMapping.get(prio);
806
+ if (currPriorityArray) {
807
+ currPriorityArray = currPriorityArray.concat(schema);
808
+ priorityMapping.set(prio, currPriorityArray);
809
+ }
810
+ else {
811
+ priorityMapping.set(prio, [schema]);
812
+ }
813
+ });
814
+ });
815
+ return priorityMapping.get(highestPrio) || [];
816
+ }
817
+ async resolveCustomSchema(schemaUri, doc) {
818
+ const unresolvedSchema = await this.loadSchema(schemaUri);
819
+ const schema = await this.resolveSchemaContent(unresolvedSchema, schemaUri, []);
820
+ return this.finalizeResolvedSchema(schema, schemaUri, doc, true);
821
+ }
822
+ /**
823
+ * Save a schema with schema ID and schema content.
824
+ * Overrides previous schemas set for that schema ID.
825
+ */
826
+ async saveSchema(schemaId, schemaContent) {
827
+ const id = this.normalizeId(schemaId);
828
+ this.getOrAddSchemaHandle(id, schemaContent);
829
+ this.schemaPriorityMapping.set(id, new Set().add(yamlLanguageService_1.SchemaPriority.Settings));
830
+ return Promise.resolve(undefined);
831
+ }
832
+ /**
833
+ * Delete schemas on specific path
834
+ */
835
+ async deleteSchemas(deletions) {
836
+ deletions.schemas.forEach((s) => {
837
+ this.deleteSchema(s);
838
+ });
839
+ return Promise.resolve(undefined);
840
+ }
841
+ /**
842
+ * Delete a schema with schema ID.
843
+ */
844
+ async deleteSchema(schemaId) {
845
+ const id = this.normalizeId(schemaId);
846
+ if (this.schemasById[id]) {
847
+ delete this.schemasById[id];
848
+ }
849
+ this.schemaPriorityMapping.delete(id);
850
+ return Promise.resolve(undefined);
851
+ }
852
+ /**
853
+ * Add content to a specified schema at a specified path
854
+ */
855
+ async addContent(additions) {
856
+ const schema = await this.getResolvedSchema(additions.schema);
857
+ if (schema) {
858
+ const resolvedSchemaLocation = this.resolveJSONSchemaToSection(schema.schema, additions.path);
859
+ if (typeof resolvedSchemaLocation === 'object') {
860
+ resolvedSchemaLocation[additions.key] = additions.content;
861
+ }
862
+ await this.saveSchema(additions.schema, schema.schema);
863
+ }
864
+ }
865
+ /**
866
+ * Delete content in a specified schema at a specified path
867
+ */
868
+ async deleteContent(deletions) {
869
+ const schema = await this.getResolvedSchema(deletions.schema);
870
+ if (schema) {
871
+ const resolvedSchemaLocation = this.resolveJSONSchemaToSection(schema.schema, deletions.path);
872
+ if (typeof resolvedSchemaLocation === 'object') {
873
+ delete resolvedSchemaLocation[deletions.key];
874
+ }
875
+ await this.saveSchema(deletions.schema, schema.schema);
876
+ }
877
+ }
878
+ /**
879
+ * Take a JSON Schema and the path that you would like to get to
880
+ * @returns the JSON Schema resolved at that specific path
881
+ */
882
+ resolveJSONSchemaToSection(schema, paths) {
883
+ const splitPathway = paths.split('/');
884
+ let resolvedSchemaLocation = schema;
885
+ for (const path of splitPathway) {
886
+ if (path === '') {
887
+ continue;
888
+ }
889
+ this.resolveNext(resolvedSchemaLocation, path);
890
+ resolvedSchemaLocation = resolvedSchemaLocation[path];
891
+ }
892
+ return resolvedSchemaLocation;
893
+ }
894
+ /**
895
+ * Resolve the next Object if they have compatible types
896
+ * @param object a location in the JSON Schema
897
+ * @param token the next token that you want to search for
898
+ */
899
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
900
+ resolveNext(object, token) {
901
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
902
+ if (Array.isArray(object) && isNaN(token)) {
903
+ throw new Error('Expected a number after the array object');
904
+ }
905
+ else if (typeof object === 'object' && typeof token !== 'string') {
906
+ throw new Error('Expected a string after the object');
907
+ }
908
+ }
909
+ /**
910
+ * Everything below here is needed because we're importing from vscode-json-languageservice umd and we need
911
+ * to provide a wrapper around the javascript methods we are calling since they have no type
912
+ */
913
+ normalizeId(id) {
914
+ // The parent's `super.normalizeId(id)` isn't visible, so duplicated the code here
915
+ try {
916
+ return vscode_uri_1.URI.parse(id).toString();
917
+ }
918
+ catch (e) {
919
+ return id;
920
+ }
921
+ }
922
+ getOrAddSchemaHandle(id, unresolvedSchemaContent) {
923
+ return super.getOrAddSchemaHandle(id, unresolvedSchemaContent);
924
+ }
925
+ loadSchema(schemaUri) {
926
+ const requestService = this.requestService;
927
+ return super.loadSchema(schemaUri).then(async (unresolvedJsonSchema) => {
928
+ // If json-language-server failed to parse the schema, attempt to parse it as YAML instead.
929
+ // If the YAML file starts with %YAML 1.x or contains a comment with a number the schema will
930
+ // contain a number instead of being undefined, so we need to check for that too.
931
+ if (unresolvedJsonSchema.errors &&
932
+ (unresolvedJsonSchema.schema === undefined || typeof unresolvedJsonSchema.schema === 'number')) {
933
+ return requestService(schemaUri).then((content) => {
934
+ if (!content) {
935
+ const errorMessage = l10n.t("Unable to load schema from '{0}': No content. {1}", toDisplayString(schemaUri), unresolvedJsonSchema.errors);
936
+ return new jsonSchemaService_1.UnresolvedSchema({}, [errorMessage]);
937
+ }
938
+ try {
939
+ const schemaContent = (0, yaml_1.parse)(content);
940
+ return new jsonSchemaService_1.UnresolvedSchema(schemaContent, []);
941
+ }
942
+ catch (yamlError) {
943
+ const errorMessage = l10n.t("Unable to parse content from '{0}': {1}.", toDisplayString(schemaUri), yamlError);
944
+ return new jsonSchemaService_1.UnresolvedSchema({}, [errorMessage]);
945
+ }
946
+ },
947
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
948
+ (error) => {
949
+ let errorMessage = error.toString();
950
+ const errorSplit = error.toString().split('Error: ');
951
+ if (errorSplit.length > 1) {
952
+ // more concise error message, URL and context are attached by caller anyways
953
+ errorMessage = errorSplit[1];
954
+ }
955
+ return new jsonSchemaService_1.UnresolvedSchema({}, [errorMessage]);
956
+ });
957
+ }
958
+ unresolvedJsonSchema.uri = schemaUri;
959
+ if (this.schemaUriToNameAndDescription.has(schemaUri)) {
960
+ const { name, description, versions } = this.schemaUriToNameAndDescription.get(schemaUri);
961
+ unresolvedJsonSchema.schema.title = name ?? unresolvedJsonSchema.schema.title;
962
+ unresolvedJsonSchema.schema.description = description ?? unresolvedJsonSchema.schema.description;
963
+ unresolvedJsonSchema.schema.versions = versions ?? unresolvedJsonSchema.schema.versions;
964
+ }
965
+ else if (unresolvedJsonSchema.errors && unresolvedJsonSchema.errors.length > 0) {
966
+ let errorMessage = unresolvedJsonSchema.errors[0];
967
+ if (errorMessage.toLowerCase().indexOf('load') !== -1) {
968
+ errorMessage = l10n.t("Unable to load schema from '{0}': No content.", toDisplayString(schemaUri));
969
+ }
970
+ else if (errorMessage.toLowerCase().indexOf('parse') !== -1) {
971
+ const content = await requestService(schemaUri);
972
+ const jsonErrors = [];
973
+ const schemaContent = Json.parse(content, jsonErrors);
974
+ if (jsonErrors.length && schemaContent) {
975
+ const { offset } = jsonErrors[0];
976
+ const { line, column } = getLineAndColumnFromOffset(content, offset);
977
+ errorMessage = l10n.t("Unable to parse content from '{0}': Parse error at line: {1} column: {2}", toDisplayString(schemaUri), line, column);
978
+ }
979
+ }
980
+ return new jsonSchemaService_1.UnresolvedSchema({}, [errorMessage]);
981
+ }
982
+ return unresolvedJsonSchema;
983
+ });
984
+ }
985
+ registerExternalSchema(uri, filePatterns, unresolvedSchema, name, description, versions) {
986
+ if (name || description) {
987
+ this.schemaUriToNameAndDescription.set(uri, { name, description, versions });
988
+ }
989
+ return super.registerExternalSchema(uri, filePatterns, unresolvedSchema);
990
+ }
991
+ clearExternalSchemas() {
992
+ super.clearExternalSchemas();
993
+ }
994
+ setSchemaContributions(schemaContributions) {
995
+ super.setSchemaContributions(schemaContributions);
996
+ }
997
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
998
+ getRegisteredSchemaIds(filter) {
999
+ return super.getRegisteredSchemaIds(filter);
1000
+ }
1001
+ getResolvedSchema(schemaId) {
1002
+ return super.getResolvedSchema(schemaId);
1003
+ }
1004
+ onResourceChange(uri) {
1005
+ return super.onResourceChange(uri);
1006
+ }
1007
+ }
1008
+ exports.YAMLSchemaService = YAMLSchemaService;
1009
+ function toDisplayString(url) {
1010
+ try {
1011
+ const uri = vscode_uri_1.URI.parse(url);
1012
+ if (uri.scheme === 'file') {
1013
+ return uri.fsPath;
1014
+ }
1015
+ }
1016
+ catch (e) {
1017
+ // ignore
1018
+ }
1019
+ return url;
1020
+ }
1021
+ function getLineAndColumnFromOffset(text, offset) {
1022
+ const lines = text.slice(0, offset).split(/\r?\n/);
1023
+ const line = lines.length; // 1-based line number
1024
+ const column = lines[lines.length - 1].length + 1; // 1-based column number
1025
+ return { line, column };
1026
+ }
1027
+ function normalizeSchemaUri(uri) {
1028
+ if (!uri)
1029
+ return '';
1030
+ let s;
1031
+ if (typeof uri === 'string') {
1032
+ s = uri;
1033
+ }
1034
+ else {
1035
+ s = uri.$id || uri.id || '';
1036
+ }
1037
+ s = s.trim();
1038
+ // strips fragment (# or #/something)
1039
+ const hash = s.indexOf('#');
1040
+ s = hash === -1 ? s : s.slice(0, hash);
1041
+ // normalize http to https (don't normalize custom dialects)
1042
+ s = s.replace(/^http:\/\/json-schema\.org\//i, 'https://json-schema.org/');
1043
+ // normalize to no trailing slash
1044
+ s = s.replace(/\/+$/g, '');
1045
+ return s;
1046
+ }
1047
+ function knownDialectFromSchemaUri(schemaUri) {
1048
+ if (schemaUri === normalizeSchemaUri(ajv4.defaultMeta()))
1049
+ return jsonSchema_1.SchemaDialect.draft04;
1050
+ if (schemaUri === normalizeSchemaUri(ajv7.defaultMeta()))
1051
+ return jsonSchema_1.SchemaDialect.draft07;
1052
+ if (schemaUri === normalizeSchemaUri(ajv2019.defaultMeta()))
1053
+ return jsonSchema_1.SchemaDialect.draft2019;
1054
+ if (schemaUri === normalizeSchemaUri(ajv2020.defaultMeta()))
1055
+ return jsonSchema_1.SchemaDialect.draft2020;
1056
+ return undefined;
1057
+ }
1058
+ async function pickSchemaDialect($schema, loadSchema) {
1059
+ if (!$schema)
1060
+ return undefined;
1061
+ const s = normalizeSchemaUri($schema || '');
1062
+ const dialect = knownDialectFromSchemaUri(s);
1063
+ if (dialect)
1064
+ return dialect;
1065
+ // cache custom dialect result
1066
+ const cached = schemaDialectCache.get(s);
1067
+ if (cached) {
1068
+ return cached;
1069
+ }
1070
+ const inflight = schemaDialectInFlight.get(s);
1071
+ if (inflight) {
1072
+ return inflight;
1073
+ }
1074
+ if (!loadSchema)
1075
+ return undefined;
1076
+ // resolve custom dialect: load the dialect meta-schema doc and infer base dialect from its $schema
1077
+ const promise = (async () => {
1078
+ const meta = await loadSchema(s);
1079
+ if (meta.errors?.length)
1080
+ return undefined;
1081
+ const metaSchema = meta.schema;
1082
+ if (!metaSchema || typeof metaSchema !== 'object')
1083
+ return undefined;
1084
+ const metaDialect = knownDialectFromSchemaUri(metaSchema.$schema);
1085
+ if (metaDialect)
1086
+ return metaDialect;
1087
+ return undefined;
1088
+ })();
1089
+ schemaDialectInFlight.set(s, promise);
1090
+ try {
1091
+ const result = await promise;
1092
+ schemaDialectCache.set(s, result);
1093
+ return result;
1094
+ }
1095
+ finally {
1096
+ schemaDialectInFlight.delete(s);
1097
+ }
1098
+ }
1099
+ function pickMetaValidator(dialect) {
1100
+ switch (dialect) {
1101
+ case jsonSchema_1.SchemaDialect.draft04:
1102
+ return schema04Validator;
1103
+ case jsonSchema_1.SchemaDialect.draft07:
1104
+ return schema07Validator;
1105
+ case jsonSchema_1.SchemaDialect.draft2019:
1106
+ return schema2019Validator;
1107
+ case jsonSchema_1.SchemaDialect.draft2020:
1108
+ return schema2020Validator;
1109
+ default:
1110
+ // don't meta-validate unknown schema URI
1111
+ return undefined;
1112
+ }
1113
+ }
1114
+ //# sourceMappingURL=yamlSchemaService.js.map