For better ESM compatibility, this adds a file extension for nested
package files.
This also removes the nested special handling of
`vscode-languageserver-types` and `vscode-languageserver-document`
imports. This is unnecessary, because they use the `"module"` field in
`package.json`.
- Both `js-yaml` and `yaml-languageserver-parser` have been replaced with
`yaml`.
- `jsonc-parser` has been externalized.
- All defaults are now specified explicitly.
- The new property `yamlVersion` has been added to match
`yaml-language-server`. The default is `1.2`.
- `DiagnosticsOptions` properties are now sorted alphabetically and
documentation has been enhanced.
Closes#117
- ESLint config `remcohaszing/typechecking` is extended.
- Various previously disabled ESLint rules have now been enabled.
- Various `any` types have been fixed.
- Removed useless type check of diagnostic code.
- The diagnostics adapter listener has been turned into an actual map.
Most notably update to Webpack 5. Webpack 5 supports web workers without
the need of a loader, so the `webpack-worker-loader` example has been
removed.
This removes the need to explain certain statements and imports need to
happen in a specific order. Users can now just use:
```ts
import { setDiagnosticsOptions } from 'monaco-yaml';
setDiagnosticsOptions({});
```
Npm 7 also supports workspaces, but doesn’t require the workspace root to be
private. This means the examples can be workspaces within the project, so the
entire project can be handled as one mono repository with a single lock file and
`node_modules` directory.
Also the readme has been updated with usage instructions.
This is a preparation for `monaco-editor@^0.22.0`. In this version the global
`monaco` object was removed for ESM users.
A choice was made to use `monaco-editor` imports, because this probably has
best compatibility for most users. If users want to use `monaco-editor-core`,
they will have to create an alias in their own build process.
Since both yaml-language-server and prettier are included in the bundle, their
versions should match for best compatibility. Also code has been formatted using
the updated prettier.