├── .gitignore
├── .vscodeignore
├── icons
└── logo.png
├── .prettierrc
├── tsconfig.json
├── .vscode
└── launch.json
├── language-configuration.json
├── LICENSE
├── docs
└── preprocessors
│ ├── typescript.md
│ └── scss.md
├── src
├── extension.ts
└── html
│ └── autoClose.ts
├── README.md
├── CHANGELOG.md
├── package.json
├── syntaxes
└── svelte.tmLanguage.json
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | /dist
2 | /node_modules
3 |
--------------------------------------------------------------------------------
/.vscodeignore:
--------------------------------------------------------------------------------
1 | **/tsconfig.json
2 | src
3 | .vscode
4 |
--------------------------------------------------------------------------------
/icons/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jamesbirtles/svelte-vscode/HEAD/icons/logo.png
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "useTabs": false,
3 | "printWidth": 100,
4 | "tabWidth": 4,
5 | "semi": true,
6 | "trailingComma": "all",
7 | "singleQuote": true
8 | }
9 |
--------------------------------------------------------------------------------
/tsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es6",
4 | "module": "commonjs",
5 | "moduleResolution": "node",
6 | "lib": ["es6", "es2016.array.include"],
7 | "strict": true,
8 | "declaration": true,
9 | "outDir": "dist",
10 | "sourceMap": true
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/.vscode/launch.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "0.2.0",
3 | // List of configurations. Add new configurations or edit existing ones.
4 | "configurations": [
5 | {
6 | "name": "Launch Client",
7 | "type": "extensionHost",
8 | "request": "launch",
9 | "runtimeExecutable": "${execPath}",
10 | "args": ["--extensionDevelopmentPath=${workspaceRoot}"],
11 | "stopOnEntry": false,
12 | "sourceMaps": true,
13 | "outFiles": ["${workspaceRoot}/dist/**/*.js"]
14 | }
15 | ]
16 | }
17 |
--------------------------------------------------------------------------------
/language-configuration.json:
--------------------------------------------------------------------------------
1 | {
2 | "comments": {
3 | "blockComment": [""]
4 | },
5 | "brackets": [[""], ["<", ">"], ["{", "}"], ["(", ")"], ["[", "]"]],
6 | "autoClosingPairs": [
7 | { "open": "{", "close": "}" },
8 | { "open": "[", "close": "]" },
9 | { "open": "(", "close": ")" },
10 | { "open": "'", "close": "'" },
11 | { "open": "\"", "close": "\"" },
12 | { "open": "", "notIn": ["comment", "string"] }
13 | ],
14 | "surroundingPairs": [
15 | { "open": "'", "close": "'" },
16 | { "open": "\"", "close": "\"" },
17 | { "open": "{", "close": "}" },
18 | { "open": "[", "close": "]" },
19 | { "open": "(", "close": ")" },
20 | { "open": "<", "close": ">" }
21 | ]
22 | }
23 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2018 James Birtles
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/docs/preprocessors/typescript.md:
--------------------------------------------------------------------------------
1 | # TypeScript Support
2 |
3 | To tell us to treat your script tags as typescript, add a `type` or `lang` attribute to your script tags like so:
4 |
5 | ```html
6 |
7 |
10 |
11 |
12 |
15 | ```
16 |
17 | Now you'll need to add a `svelte.config.js` file at the root of your project to tell svelte how to convert your TypeScript into JavaScript that it understands.
18 |
19 | You likely already have this configuration somewhere if you are/are planning to use TypeScript with svelte, e.g. webpack config, rollup config, etc.
20 |
21 | _Tip: To avoid duplication of config, you can import the `svelte.config.js` file in your bundle configuration_
22 |
23 | ### Example Configurations
24 |
25 | #### Using [svelte-preprocess](https://github.com/kaisermann/svelte-preprocess) by [@kaisermann](https://github.com/kaisermann)
26 |
27 | ##### Install
28 |
29 | ```sh
30 | npm i -D svelte-preprocess typescript
31 | ```
32 |
33 |
34 | Yarn
35 |
36 | ```sh
37 | yarn add --dev svelte-preprocess typescript
38 | ```
39 |
40 |
41 |
42 | ##### Set up `svelte.config.js`
43 |
44 | ```js
45 | const sveltePreprocess = require('svelte-preprocess');
46 |
47 | module.exports = {
48 | preprocess: sveltePreprocess(),
49 | };
50 | ```
51 |
52 | ##### Restart the svelte language server
53 |
54 | You will need to tell svelte-vscode to restart the svelte language server in order to pick up the new configuration.
55 |
56 | Hit `ctrl-shift-p` or `cmd-shift-p` on mac, type `svelte restart`, and select `Svelte: Restart Language Server`. Any errors you were seeing should now go away and you're now all set up!
57 |
--------------------------------------------------------------------------------
/docs/preprocessors/scss.md:
--------------------------------------------------------------------------------
1 | # SCSS Support
2 |
3 | ## Syntax Highlighting
4 |
5 | To gain syntax highlighing for your SCSS code, add a `type` or `lang` attribute to your style tags like so:
6 |
7 | ```html
8 |
9 |
16 |
17 |
18 |
25 | ```
26 |
27 | ## Fix svelte errors
28 |
29 | The highlighter can now understand the syntax, but svelte still can't.
30 | For that you will need to add a `svelte.config.js` file at the root of your project to tell svelte how to convert your SCSS into CSS that it understands.
31 |
32 | You likely already have this configuration somewhere if you are/are planning to use SCSS with svelte, e.g. webpack config, rollup config, etc.
33 |
34 | _Tip: To avoid duplication of config, you can import the `svelte.config.js` file in your bundle configuration_
35 |
36 | ### Example Configurations
37 |
38 | #### Using [svelte-preprocess](https://github.com/kaisermann/svelte-preprocess) by [@kaisermann](https://github.com/kaisermann)
39 |
40 | ##### Install
41 |
42 | ```sh
43 | npm i -D svelte-preprocess node-sass
44 | ```
45 |
46 |
47 | Yarn
48 |
49 | ```sh
50 | yarn add --dev svelte-preprocess node-sass
51 | ```
52 |
53 |
54 |
55 | ##### Set up `svelte.config.js`
56 |
57 | ```js
58 | const sveltePreprocess = require('svelte-preprocess');
59 |
60 | module.exports = {
61 | preprocess: sveltePreprocess(),
62 | };
63 | ```
64 |
65 | ##### Restart the svelte language server
66 |
67 | You will need to tell svelte-vscode to restart the svelte language server in order to pick up the new configuration.
68 |
69 | Hit `ctrl-shift-p` or `cmd-shift-p` on mac, type `svelte restart`, and select `Svelte: Restart Language Server`. Any errors you were seeing should now go away and you're now all set up!
70 |
--------------------------------------------------------------------------------
/src/extension.ts:
--------------------------------------------------------------------------------
1 | import * as path from 'path';
2 |
3 | import { workspace, ExtensionContext, TextDocument, Position, commands, window } from 'vscode';
4 | import {
5 | LanguageClient,
6 | LanguageClientOptions,
7 | ServerOptions,
8 | TransportKind,
9 | TextDocumentPositionParams,
10 | RequestType,
11 | RevealOutputChannelOn,
12 | } from 'vscode-languageclient';
13 | import { activateTagClosing } from './html/autoClose';
14 |
15 | namespace TagCloseRequest {
16 | export const type: RequestType = new RequestType(
17 | 'html/tag',
18 | );
19 | }
20 |
21 | export function activate(context: ExtensionContext) {
22 | let serverModule = context.asAbsolutePath(
23 | path.join('./', 'node_modules', 'svelte-language-server', 'bin', 'server.js'),
24 | );
25 |
26 | let debugOptions = { execArgv: ['--nolazy', '--inspect=6009'] };
27 | let serverOptions: ServerOptions = {
28 | run: { module: serverModule, transport: TransportKind.ipc },
29 | debug: { module: serverModule, transport: TransportKind.ipc, options: debugOptions },
30 | };
31 |
32 | const lsConfig = workspace.getConfiguration('svelte.language-server');
33 |
34 | const serverRuntime = lsConfig.get('runtime');
35 | if (serverRuntime) {
36 | serverOptions.run.runtime = serverRuntime;
37 | serverOptions.debug.runtime = serverRuntime;
38 | console.log('setting server runtime to', serverRuntime);
39 | }
40 |
41 | let clientOptions: LanguageClientOptions = {
42 | documentSelector: [{ scheme: 'file', language: 'svelte' }],
43 | revealOutputChannelOn: RevealOutputChannelOn.Never,
44 | synchronize: {
45 | configurationSection: ['svelte', 'html'],
46 | },
47 | };
48 |
49 | let ls = createLanguageServer(serverOptions, clientOptions);
50 | context.subscriptions.push(ls.start());
51 |
52 | ls.onReady().then(() => {
53 | let tagRequestor = (document: TextDocument, position: Position) => {
54 | let param = ls.code2ProtocolConverter.asTextDocumentPositionParams(document, position);
55 | return ls.sendRequest(TagCloseRequest.type, param);
56 | };
57 | let disposable = activateTagClosing(tagRequestor, { svelte: true }, 'html.autoClosingTags');
58 | context.subscriptions.push(disposable);
59 | });
60 |
61 | context.subscriptions.push(
62 | commands.registerCommand('svelte.restartLanguageServer', async () => {
63 | await ls.stop();
64 | ls = createLanguageServer(serverOptions, clientOptions);
65 | context.subscriptions.push(ls.start());
66 | await ls.onReady();
67 | window.showInformationMessage('Svelte language server restarted.');
68 | }),
69 | );
70 | }
71 |
72 | function createLanguageServer(serverOptions: ServerOptions, clientOptions: LanguageClientOptions) {
73 | return new LanguageClient('svelte', 'Svelte', serverOptions, clientOptions);
74 | }
75 |
--------------------------------------------------------------------------------
/src/html/autoClose.ts:
--------------------------------------------------------------------------------
1 | // Original source: https://github.com/Microsoft/vscode/blob/master/extensions/html-language-features/client/src/tagClosing.ts
2 |
3 | /*---------------------------------------------------------------------------------------------
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 | 'use strict';
8 |
9 | import {
10 | window,
11 | workspace,
12 | Disposable,
13 | TextDocumentContentChangeEvent,
14 | TextDocument,
15 | Position,
16 | SnippetString,
17 | } from 'vscode';
18 |
19 | export function activateTagClosing(
20 | tagProvider: (document: TextDocument, position: Position) => Thenable,
21 | supportedLanguages: { [id: string]: boolean },
22 | configName: string,
23 | ): Disposable {
24 | let disposables: Disposable[] = [];
25 | workspace.onDidChangeTextDocument(
26 | event => onDidChangeTextDocument(event.document, event.contentChanges),
27 | null,
28 | disposables,
29 | );
30 |
31 | let isEnabled = false;
32 | updateEnabledState();
33 | window.onDidChangeActiveTextEditor(updateEnabledState, null, disposables);
34 |
35 | let timeout: NodeJS.Timer | undefined = void 0;
36 |
37 | function updateEnabledState() {
38 | isEnabled = false;
39 | let editor = window.activeTextEditor;
40 | if (!editor) {
41 | return;
42 | }
43 | let document = editor.document;
44 | if (!supportedLanguages[document.languageId]) {
45 | return;
46 | }
47 | if (!workspace.getConfiguration(void 0, document.uri).get(configName)) {
48 | return;
49 | }
50 | isEnabled = true;
51 | }
52 |
53 | function onDidChangeTextDocument(
54 | document: TextDocument,
55 | changes: TextDocumentContentChangeEvent[],
56 | ) {
57 | if (!isEnabled) {
58 | return;
59 | }
60 | let activeDocument = window.activeTextEditor && window.activeTextEditor.document;
61 | if (document !== activeDocument || changes.length === 0) {
62 | return;
63 | }
64 | if (typeof timeout !== 'undefined') {
65 | clearTimeout(timeout);
66 | }
67 | let lastChange = changes[changes.length - 1];
68 | let lastCharacter = lastChange.text[lastChange.text.length - 1];
69 | if (lastChange.rangeLength > 0 || (lastCharacter !== '>' && lastCharacter !== '/')) {
70 | return;
71 | }
72 | let rangeStart = lastChange.range.start;
73 | let version = document.version;
74 | timeout = setTimeout(() => {
75 | let position = new Position(
76 | rangeStart.line,
77 | rangeStart.character + lastChange.text.length,
78 | );
79 | tagProvider(document, position).then(text => {
80 | if (text && isEnabled) {
81 | let activeEditor = window.activeTextEditor;
82 | if (activeEditor) {
83 | let activeDocument = activeEditor.document;
84 | if (document === activeDocument && activeDocument.version === version) {
85 | let selections = activeEditor.selections;
86 | if (
87 | selections.length &&
88 | selections.some(s => s.active.isEqual(position))
89 | ) {
90 | activeEditor.insertSnippet(
91 | new SnippetString(text),
92 | selections.map(s => s.active),
93 | );
94 | } else {
95 | activeEditor.insertSnippet(new SnippetString(text), position);
96 | }
97 | }
98 | }
99 | }
100 | });
101 | timeout = void 0;
102 | }, 100);
103 | }
104 | return Disposable.from(...disposables);
105 | }
106 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Work is being continued in the official [svelte language-tools repo](https://github.com/sveltejs/language-tools)
2 |
3 | # Svelte for VS Code
4 |
5 | Provides syntax highlighting and rich intellisense for Svelte components in VS Code, utilising the [svelte language server](https://github.com/UnwrittenFun/svelte-language-server).
6 |
7 | ## Features
8 |
9 | - Svelte
10 | - Diagnostic messages for warnings and errors
11 | - Support for svelte preprocessors that provide source maps
12 | - Svelte specific formatting (via [prettier-plugin-svelte](https://github.com/UnwrittenFun/prettier-plugin-svelte))
13 | - HTML
14 | - Hover info
15 | - Autocompletions
16 | - [Emmet](https://emmet.io/)
17 | - Symbols in Outline panel
18 | - CSS / SCSS / LESS
19 | - Diagnostic messages for syntax and lint errors
20 | - Hover info
21 | - Autocompletions
22 | - Formatting (via [prettier](https://github.com/prettier/prettier))
23 | - [Emmet](https://emmet.io/)
24 | - Color highlighting and color picker
25 | - Symbols in Outline panel
26 | - TypeScript / JavaScript
27 | - Diagnostics messages for syntax errors, semantic errors, and suggestions
28 | - Hover info
29 | - Formatting (via [prettier](https://github.com/prettier/prettier))
30 | - Symbols in Outline panel
31 | - Autocompletions
32 | - Go to definition
33 | - Code Actions
34 |
35 | ### Using with preprocessors
36 |
37 | #### Language specific setup
38 |
39 | - [SCSS](docs/preprocessors/scss.md)
40 | - [TypeScript](docs/preprocessors/typescript.md)
41 |
42 | #### Generic setup
43 |
44 | If a svelte file contains some language other than `html`, `css` or `javascript`, `svelte-vscode` needs to know how to [preprocess](https://svelte.dev/docs#svelte_preprocess) it. This can be achieved by creating a `svelte.config.js` file at the root of your project which exports a svelte options object (similar to `svelte-loader` and `rollup-plugin-svelte`).
45 |
46 | ```js
47 | // svelte.config.js
48 | const preprocess = require('my-example-svelte-preprocessor');
49 |
50 | module.exports = {
51 | preprocess: [preprocess()],
52 | // ...other svelte options
53 | };
54 | ```
55 |
56 | It's also necessary to add a `type="text/language-name"` or `lang="language-name"` to your `style` and `script` tags, which defines how that code should be interpreted by the extension.
57 |
58 | ```html
59 |
60 |
Hello, world!
61 |
62 |
63 |
70 | ```
71 |
72 | ### Settings
73 |
74 | ##### `svelte.language-server.runtime`
75 |
76 | Path to the node executable you would like to use to run the language server.
77 | This is useful when you depend on native modules such as node-sass as without
78 | this they will run in the context of vscode, meaning v8 version mismatch is likely.
79 |
80 | ##### `svelte.plugin.typescript.enable`
81 |
82 | Enable the TypeScript plugin. _Default_: `true`
83 |
84 | ##### `svelte.plugin.typescript.diagnostics`
85 |
86 | Enable diagnostic messages for TypeScript. _Default_: `true`
87 |
88 | ##### `svelte.plugin.typescript.hover`
89 |
90 | Enable hover info for TypeScript. _Default_: `true`
91 |
92 | ##### `svelte.plugin.typescript.documentSymbols`
93 |
94 | Enable document symbols for TypeScript. _Default_: `true`
95 |
96 | ##### `svelte.plugin.typescript.completions`
97 |
98 | Enable completions for TypeScript. _Default_: `true`
99 |
100 | ##### `svelte.plugin.typescript.definitions`
101 |
102 | Enable go to definition for TypeScript. _Default_: `true`
103 |
104 | ##### `svelte.plugin.typescript.codeActions`
105 |
106 | Enable code actions for TypeScript. _Default_: `true`
107 |
108 | ##### `svelte.plugin.css.enable`
109 |
110 | Enable the CSS plugin. _Default_: `true`
111 |
112 | ##### `svelte.plugin.css.diagnostics`
113 |
114 | Enable diagnostic messages for CSS. _Default_: `true`
115 |
116 | ##### `svelte.plugin.css.hover`
117 |
118 | Enable hover info for CSS. _Default_: `true`
119 |
120 | ##### `svelte.plugin.css.completions`
121 |
122 | Enable auto completions for CSS. _Default_: `true`
123 |
124 | ##### `svelte.plugin.css.documentColors`
125 |
126 | Enable document colors for CSS. _Default_: `true`
127 |
128 | ##### `svelte.plugin.css.colorPresentations`
129 |
130 | Enable color picker for CSS. _Default_: `true`
131 |
132 | ##### `svelte.plugin.css.documentSymbols`
133 |
134 | Enable document symbols for CSS. _Default_: `true`
135 |
136 | ##### `svelte.plugin.html.enable`
137 |
138 | Enable the HTML plugin. _Default_: `true`
139 |
140 | ##### `svelte.plugin.html.hover`
141 |
142 | Enable hover info for HTML. _Default_: `true`
143 |
144 | ##### `svelte.plugin.html.completions`
145 |
146 | Enable auto completions for HTML. _Default_: `true`
147 |
148 | ##### `svelte.plugin.html.tagComplete`
149 |
150 | Enable HTML tag auto closing. _Default_: `true`
151 |
152 | ##### `svelte.plugin.html.documentSymbols`
153 |
154 | Enable document symbols for HTML. _Default_: `true`
155 |
156 | ##### `svelte.plugin.svelte.enable`
157 |
158 | Enable the Svelte plugin. _Default_: `true`
159 |
160 | ##### `svelte.plugin.svelte.diagnostics.enable`
161 |
162 | Enable diagnostic messages for Svelte. _Default_: `true`
163 |
164 | ##### `svelte.plugin.svelte.format.enable`
165 |
166 | Enable formatting for Svelte (includes css & js). _Default_: `true`
167 |
--------------------------------------------------------------------------------
/CHANGELOG.md:
--------------------------------------------------------------------------------
1 | # Changelog
2 |
3 | ## 0.9.3
4 |
5 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/releases/v0.10.3) 0.10.3
6 | - Don't trigger autocompletion in css when typing {
7 | - Debounce diagnostics requests to improve diagnostic performance
8 | - Document settings and preprocessor configuration
9 |
10 | ## 0.9.2
11 |
12 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/releases/v0.10.2) 0.10.2
13 | - Update to [prettier-plugin-svelte](https://github.com/UnwrittenFun/prettier-plugin-svelte/releases/tag/v0.7.0) 0.7.0
14 | - Added strict html mode with option `svelte-strict-mode`
15 | - Added support for await block shorthand
16 | - Now handles multiple script and style tags
17 | - HTML entities (e.g. &) will be kept as is in svelte > 3.4.3
18 | - New option `svelteBracketNewLine` to add a new line before closing `>` when wrapping attributes
19 | - Added support for all known svelte:\* elements
20 | - Added support for local modifier on transitions
21 | - Fixed if inside of each else blocks erroneously being converted to and else if block
22 | - Added sort order option to change order of script/style/markup available as `svelte-sort-order`
23 | - Fix some whitespace issues with inline tags
24 |
25 | ## 0.9.1
26 |
27 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/releases/v0.10.1) 0.10.1
28 | - Update to [prettier-plugin-svelte](https://github.com/UnwrittenFun/prettier-plugin-svelte/releases/tag/v0.5.1) 0.5.1
29 | - Better attribute wrapping
30 | - No longer opens output panel on error
31 |
32 | ## 0.9.0
33 |
34 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.10.0) 0.10.0
35 | - Adds suggestion diagnostics for typescript/javascript
36 | - Add code actions to typescript/javascript
37 | - Add go to definition support for typescript/javascript
38 | - Fix emmet completions showing up inconsistently
39 | - Update to [prettier-plugin-svelte](https://github.com/UnwrittenFun/prettier-plugin-svelte/releases/tag/v0.5.0) 0.5.0
40 | - Adds better whitespace support
41 | - Adds support for all utf8 characters in styles and scripts
42 | - Support event modifiers
43 | - Support let and class bindings
44 | - .html files are no longer associated to this plugin by default
45 |
46 | ## 0.8.0
47 |
48 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.8.0) 0.8.0
49 | - No longer applies semantic validation to JavaScript blocks (only syntactic).
50 | - Add autocompletions to js/ts
51 | - Formatting is now provided by [prettier-plugin-svelte](https://github.com/UnwrittenFun/prettier-plugin-svelte)
52 | which gives much improved support for svelte specific syntax and fixes a number of issues with the previous setup
53 |
54 | ## 0.7.1
55 |
56 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.7.1) 0.7.1
57 | - Fix for breaking changes in svelte v3
58 |
59 | ## 0.7.0
60 |
61 | - Support for Svelte v3
62 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.7.0) 0.7.0
63 | - Svelte is now loaded from your project when possible
64 | - Updates to various packages
65 |
66 | ## 0.6.1
67 |
68 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.6.1) 0.6.1
69 | - Includes some minor bug fixes
70 |
71 | ## 0.6.0
72 |
73 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.6.0) 0.6.0
74 | - Add symbols in the outline panel for css, html, and typescript
75 | - Add html formatting
76 | - Add color information and color picker to css
77 | - Add support for lang attribute on style and script tags
78 |
79 | ## 0.5.0
80 |
81 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.5.0) 0.5.0
82 | - Add config options for all features provided by the language server
83 |
84 | ## 0.4.2
85 |
86 | - Add command to restart language server (useful if it errors or is using stale data)
87 | - Access it using `Cmd-Shift-P` or `Ctrl-Shift-P` and typing "restart language server"
88 |
89 | ## 0.4.1
90 |
91 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.4.2) 0.4.2
92 | - Has better support for typescript in workspaces
93 | - Now actually bundles the lib.d.ts files from typescript.. 🤦
94 |
95 | ## 0.4.0
96 |
97 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.4.0) 0.4.0
98 | - Includes fix to prevent attempting to load svelte config from package.json
99 | - Switching language type (.e.g from `type=text/javascript` to `type=text/typescript`) no longer crashes the server
100 |
101 | ## 0.3.2
102 |
103 | - Allow space after key in each block ([#12](https://github.com/UnwrittenFun/svelte-vscode/issues/12))
104 |
105 | ## 0.3.1
106 |
107 | - Register .svelte extension ([#8](https://github.com/UnwrittenFun/svelte-vscode/pull/8))
108 | - Fix highlighting error when using object destructuring in each blocks ([#11](https://github.com/UnwrittenFun/svelte-vscode/issues/11))
109 | - Use correct comments in typescript and scss blocks
110 |
111 | ## 0.3.0
112 |
113 | - Add html tag autoclosing ([#4](https://github.com/UnwrittenFun/svelte-vscode/pull/4))
114 | - Fix incorrect comments being used for css and html ([#3](https://github.com/UnwrittenFun/svelte-vscode/issues/3))
115 |
116 | ## 0.2.0
117 |
118 | - Update to [svelte-language-server](https://github.com/UnwrittenFun/svelte-language-server/tree/v0.2.0) 0.2.0
119 | - Emmet abbreviations support for HTML and CSS ([#2](https://github.com/UnwrittenFun/svelte-vscode/issues/2))
120 |
121 | ## 0.1.0
122 |
123 | - Initial release
124 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "svelte-vscode",
3 | "version": "0.9.3",
4 | "description": "Svelte language support for VS Code",
5 | "main": "dist/extension.js",
6 | "scripts": {
7 | "vscode:prepublish": "tsc -p ./",
8 | "build": "tsc -p ./",
9 | "watch": "tsc -w -p ./",
10 | "update-vscode": "node ./node_modules/vscode/bin/install",
11 | "postinstall": "node ./node_modules/vscode/bin/install"
12 | },
13 | "repository": {
14 | "type": "git",
15 | "url": "https://github.com/UnwrittenFun/svelte-vscode.git"
16 | },
17 | "keywords": [
18 | "svelte",
19 | "vscode"
20 | ],
21 | "author": "James Birtles ",
22 | "license": "MIT",
23 | "bugs": {
24 | "url": "https://github.com/UnwrittenFun/svelte-vscode/issues"
25 | },
26 | "homepage": "https://github.com/UnwrittenFun/svelte-vscode#readme",
27 | "displayName": "Svelte",
28 | "publisher": "JamesBirtles",
29 | "icon": "icons/logo.png",
30 | "galleryBanner": {
31 | "color": "#333333",
32 | "theme": "dark"
33 | },
34 | "categories": [
35 | "Programming Languages",
36 | "Formatters"
37 | ],
38 | "engines": {
39 | "vscode": "^1.30.0"
40 | },
41 | "activationEvents": [
42 | "onLanguage:svelte",
43 | "onCommand:svelte.restartLanguageServer"
44 | ],
45 | "contributes": {
46 | "configuration": {
47 | "type": "object",
48 | "title": "Svelte",
49 | "properties": {
50 | "svelte.language-server.runtime": {
51 | "type": "string",
52 | "title": "Language Server Runtime",
53 | "description": "Path to the node executable to use to spawn the language server"
54 | },
55 | "svelte.plugin.typescript.enable": {
56 | "type": "boolean",
57 | "default": true,
58 | "title": "TypeScript",
59 | "description": "Enable the TypeScript plugin"
60 | },
61 | "svelte.plugin.typescript.diagnostics.enable": {
62 | "type": "boolean",
63 | "default": true,
64 | "title": "TypeScript: Diagnostics",
65 | "description": "Enable diagnostic messages for TypeScript"
66 | },
67 | "svelte.plugin.typescript.hover.enable": {
68 | "type": "boolean",
69 | "default": true,
70 | "title": "TypeScript: Hover Info",
71 | "description": "Enable hover info for TypeScript"
72 | },
73 | "svelte.plugin.typescript.documentSymbols.enable": {
74 | "type": "boolean",
75 | "default": true,
76 | "title": "TypeScript: Symbols in Outline",
77 | "description": "Enable document symbols for TypeScript"
78 | },
79 | "svelte.plugin.typescript.completions.enable": {
80 | "type": "boolean",
81 | "default": true,
82 | "title": "TypeScript: Completions",
83 | "description": "Enable completions for TypeScript"
84 | },
85 | "svelte.plugin.typescript.definitions.enable": {
86 | "type": "boolean",
87 | "default": true,
88 | "title": "TypeScript: Go to Definition",
89 | "description": "Enable go to definition for TypeScript"
90 | },
91 | "svelte.plugin.typescript.codeActions.enable": {
92 | "type": "boolean",
93 | "default": true,
94 | "title": "TypeScript: Code Actions",
95 | "description": "Enable code actions for TypeScript"
96 | },
97 | "svelte.plugin.css.enable": {
98 | "type": "boolean",
99 | "default": true,
100 | "title": "CSS",
101 | "description": "Enable the CSS plugin"
102 | },
103 | "svelte.plugin.css.diagnostics.enable": {
104 | "type": "boolean",
105 | "default": true,
106 | "title": "CSS: Diagnostics",
107 | "description": "Enable diagnostic messages for CSS"
108 | },
109 | "svelte.plugin.css.hover.enable": {
110 | "type": "boolean",
111 | "default": true,
112 | "title": "CSS: Hover Info",
113 | "description": "Enable hover info for CSS"
114 | },
115 | "svelte.plugin.css.completions.enable": {
116 | "type": "boolean",
117 | "default": true,
118 | "title": "CSS: Auto Complete",
119 | "description": "Enable auto completions for CSS"
120 | },
121 | "svelte.plugin.css.documentColors.enable": {
122 | "type": "boolean",
123 | "default": true,
124 | "title": "CSS: Document Colors",
125 | "description": "Enable document colors for CSS"
126 | },
127 | "svelte.plugin.css.colorPresentations.enable": {
128 | "type": "boolean",
129 | "default": true,
130 | "title": "CSS: Color Picker",
131 | "description": "Enable color picker for CSS"
132 | },
133 | "svelte.plugin.css.documentSymbols.enable": {
134 | "type": "boolean",
135 | "default": true,
136 | "title": "CSS: Symbols in Outline",
137 | "description": "Enable document symbols for CSS"
138 | },
139 | "svelte.plugin.html.enable": {
140 | "type": "boolean",
141 | "default": true,
142 | "title": "HTML",
143 | "description": "Enable the HTML plugin"
144 | },
145 | "svelte.plugin.html.hover.enable": {
146 | "type": "boolean",
147 | "default": true,
148 | "title": "HTML: Hover Info",
149 | "description": "Enable hover info for HTML"
150 | },
151 | "svelte.plugin.html.completions.enable": {
152 | "type": "boolean",
153 | "default": true,
154 | "title": "HTML: Auto Complete",
155 | "description": "Enable auto completions for HTML"
156 | },
157 | "svelte.plugin.html.tagComplete.enable": {
158 | "type": "boolean",
159 | "default": true,
160 | "title": "HTML: Tag Auto Closing",
161 | "description": "Enable HTML tag auto closing"
162 | },
163 | "svelte.plugin.html.documentSymbols.enable": {
164 | "type": "boolean",
165 | "default": true,
166 | "title": "HTML: Symbols in Outline",
167 | "description": "Enable document symbols for HTML"
168 | },
169 | "svelte.plugin.svelte.enable": {
170 | "type": "boolean",
171 | "default": true,
172 | "title": "Svelte",
173 | "description": "Enable the Svelte plugin"
174 | },
175 | "svelte.plugin.svelte.diagnostics.enable": {
176 | "type": "boolean",
177 | "default": true,
178 | "title": "Svelte: Diagnostics",
179 | "description": "Enable diagnostic messages for Svelte"
180 | },
181 | "svelte.plugin.svelte.format.enable": {
182 | "type": "boolean",
183 | "default": true,
184 | "title": "Svelte: Format",
185 | "description": "Enable formatting for Svelte (includes css & js)"
186 | }
187 | }
188 | },
189 | "languages": [
190 | {
191 | "id": "svelte",
192 | "aliases": [
193 | "Svelte",
194 | "svelte"
195 | ],
196 | "extensions": [
197 | ".svelte"
198 | ],
199 | "configuration": "./language-configuration.json"
200 | }
201 | ],
202 | "grammars": [
203 | {
204 | "language": "svelte",
205 | "scopeName": "source.svelte",
206 | "path": "./syntaxes/svelte.tmLanguage.json",
207 | "embeddedLanguages": {
208 | "text.html": "html",
209 | "source.css": "css",
210 | "source.css.scss": "scss",
211 | "source.js": "javascript",
212 | "source.ts": "typescript"
213 | }
214 | }
215 | ],
216 | "commands": [
217 | {
218 | "command": "svelte.restartLanguageServer",
219 | "title": "Svelte: Restart Language Server"
220 | }
221 | ],
222 | "breakpoints": [
223 | {
224 | "language": "svelte"
225 | }
226 | ]
227 | },
228 | "devDependencies": {
229 | "@types/node": "^9.6.5",
230 | "typescript": "^3.0.1",
231 | "vscode": "^1.1.30"
232 | },
233 | "dependencies": {
234 | "svelte-language-server": "0.10.3",
235 | "vscode-languageclient": "^5.0.1"
236 | }
237 | }
238 |
--------------------------------------------------------------------------------
/syntaxes/svelte.tmLanguage.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Svelte Component",
3 | "scopeName": "source.svelte",
4 | "fileTypes": ["svelte"],
5 | "uuid": "7582b62f-51d9-4a84-8c8d-fc189530faf6",
6 | "patterns": [
7 | {
8 | "begin": "(<)(style)\\b(?=[^>]*(?:type=('text/sass'|\"text/sass\")|lang=(sass|'sass'|\"sass\")))(?![^/>]*/>\\s*$)",
9 | "beginCaptures": {
10 | "1": {
11 | "name": "punctuation.definition.tag.begin.html"
12 | },
13 | "2": {
14 | "name": "entity.name.tag.style.html"
15 | }
16 | },
17 | "end": "()(style)(>)",
18 | "endCaptures": {
19 | "1": {
20 | "name": "punctuation.definition.tag.begin.html"
21 | },
22 | "2": {
23 | "name": "entity.name.tag.style.html"
24 | },
25 | "3": {
26 | "name": "punctuation.definition.tag.end.html"
27 | }
28 | },
29 | "patterns": [
30 | {
31 | "include": "#tag-stuff"
32 | },
33 | {
34 | "contentName": "source.sass",
35 | "begin": "(>)",
36 | "beginCaptures": {
37 | "1": {
38 | "name": "punctuation.definition.tag.end.html"
39 | }
40 | },
41 | "end": "(?=)",
42 | "patterns": [
43 | {
44 | "include": "source.sass"
45 | }
46 | ]
47 | }
48 | ]
49 | },
50 | {
51 | "begin": "(<)(style)\\b(?=[^>]*(?:type=('text/scss'|\"text/scss\")|lang=(scss|'scss'|\"scss\")))(?![^/>]*/>\\s*$)",
52 | "beginCaptures": {
53 | "1": {
54 | "name": "punctuation.definition.tag.begin.html"
55 | },
56 | "2": {
57 | "name": "entity.name.tag.style.html"
58 | }
59 | },
60 | "end": "()(style)(>)",
61 | "endCaptures": {
62 | "1": {
63 | "name": "punctuation.definition.tag.begin.html"
64 | },
65 | "2": {
66 | "name": "entity.name.tag.style.html"
67 | },
68 | "3": {
69 | "name": "punctuation.definition.tag.end.html"
70 | }
71 | },
72 | "patterns": [
73 | {
74 | "include": "#tag-stuff"
75 | },
76 | {
77 | "contentName": "source.css.scss",
78 | "begin": "(>)",
79 | "beginCaptures": {
80 | "1": {
81 | "name": "punctuation.definition.tag.end.html"
82 | }
83 | },
84 | "end": "(?=)",
85 | "patterns": [
86 | {
87 | "include": "source.css.scss"
88 | }
89 | ]
90 | }
91 | ]
92 | },
93 | {
94 | "begin": "(<)(style)\\b(?=[^>]*(?:type=('text/less'|\"text/less\")|lang=(less|'less'|\"less\")))(?![^/>]*/>\\s*$)",
95 | "beginCaptures": {
96 | "1": {
97 | "name": "punctuation.definition.tag.begin.html"
98 | },
99 | "2": {
100 | "name": "entity.name.tag.style.html"
101 | }
102 | },
103 | "end": "()(style)(>)",
104 | "endCaptures": {
105 | "1": {
106 | "name": "punctuation.definition.tag.begin.html"
107 | },
108 | "2": {
109 | "name": "entity.name.tag.style.html"
110 | },
111 | "3": {
112 | "name": "punctuation.definition.tag.end.html"
113 | }
114 | },
115 | "patterns": [
116 | {
117 | "include": "#tag-stuff"
118 | },
119 | {
120 | "contentName": "source.css.less",
121 | "begin": "(>)",
122 | "beginCaptures": {
123 | "1": {
124 | "name": "punctuation.definition.tag.end.html"
125 | }
126 | },
127 | "end": "(?=)",
128 | "patterns": [
129 | {
130 | "include": "source.css.less"
131 | }
132 | ]
133 | }
134 | ]
135 | },
136 | {
137 | "begin": "(<)(style)\\b(?=[^>]*(?:type=('text/stylus'|\"text/stylus\")|lang=(stylus|'stylus'|\"stylus\")))(?![^/>]*/>\\s*$)",
138 | "beginCaptures": {
139 | "1": {
140 | "name": "punctuation.definition.tag.begin.html"
141 | },
142 | "2": {
143 | "name": "entity.name.tag.style.html"
144 | }
145 | },
146 | "end": "()(style)(>)",
147 | "endCaptures": {
148 | "1": {
149 | "name": "punctuation.definition.tag.begin.html"
150 | },
151 | "2": {
152 | "name": "entity.name.tag.style.html"
153 | },
154 | "3": {
155 | "name": "punctuation.definition.tag.end.html"
156 | }
157 | },
158 | "patterns": [
159 | {
160 | "include": "#tag-stuff"
161 | },
162 | {
163 | "contentName": "source.stylus",
164 | "begin": "(>)",
165 | "beginCaptures": {
166 | "1": {
167 | "name": "punctuation.definition.tag.end.html"
168 | }
169 | },
170 | "end": "(?=)",
171 | "patterns": [
172 | {
173 | "include": "source.stylus"
174 | }
175 | ]
176 | }
177 | ]
178 | },
179 | {
180 | "begin": "(<)(style)\\b(?=[^>]*(?:type=('text/postcss'|\"text/postcss\")|lang=(postcss|'postcss'|\"postcss\")))(?![^/>]*/>\\s*$)",
181 | "beginCaptures": {
182 | "1": {
183 | "name": "punctuation.definition.tag.begin.html"
184 | },
185 | "2": {
186 | "name": "entity.name.tag.style.html"
187 | }
188 | },
189 | "end": "()(style)(>)",
190 | "endCaptures": {
191 | "1": {
192 | "name": "punctuation.definition.tag.begin.html"
193 | },
194 | "2": {
195 | "name": "entity.name.tag.style.html"
196 | },
197 | "3": {
198 | "name": "punctuation.definition.tag.end.html"
199 | }
200 | },
201 | "patterns": [
202 | {
203 | "include": "#tag-stuff"
204 | },
205 | {
206 | "contentName": "source.css.postcss",
207 | "begin": "(>)",
208 | "beginCaptures": {
209 | "1": {
210 | "name": "punctuation.definition.tag.end.html"
211 | }
212 | },
213 | "end": "(?=)",
214 | "patterns": [
215 | {
216 | "include": "source.css.postcss"
217 | }
218 | ]
219 | }
220 | ]
221 | },
222 | {
223 | "begin": "(<)(style)\\b(?=[^>]*(?:(?:type=('text/css'|\"text/css\")|lang=(css|'css'|\"css\")))?)(?![^/>]*/>\\s*$)",
224 | "beginCaptures": {
225 | "1": {
226 | "name": "punctuation.definition.tag.begin.html"
227 | },
228 | "2": {
229 | "name": "entity.name.tag.style.html"
230 | }
231 | },
232 | "end": "()(style)(>)",
233 | "endCaptures": {
234 | "1": {
235 | "name": "punctuation.definition.tag.begin.html"
236 | },
237 | "2": {
238 | "name": "entity.name.tag.style.html"
239 | },
240 | "3": {
241 | "name": "punctuation.definition.tag.end.html"
242 | }
243 | },
244 | "patterns": [
245 | {
246 | "include": "#tag-stuff"
247 | },
248 | {
249 | "contentName": "source.css",
250 | "begin": "(>)",
251 | "beginCaptures": {
252 | "1": {
253 | "name": "punctuation.definition.tag.end.html"
254 | }
255 | },
256 | "end": "(?=)",
257 | "patterns": [
258 | {
259 | "include": "source.css"
260 | }
261 | ]
262 | }
263 | ]
264 | },
265 | {
266 | "begin": "(<)(script)\\b(?=[^>]*(?:type=('text/typescript'|\"text/typescript\")|lang=(typescript|'typescript'|\"typescript\"|ts|'ts'|\"ts\")))(?![^/>]*/>\\s*$)",
267 | "beginCaptures": {
268 | "1": {
269 | "name": "punctuation.definition.tag.begin.html"
270 | },
271 | "2": {
272 | "name": "entity.name.tag.script.html"
273 | }
274 | },
275 | "end": "()(script)(>)",
276 | "endCaptures": {
277 | "1": {
278 | "name": "punctuation.definition.tag.begin.html"
279 | },
280 | "2": {
281 | "name": "entity.name.tag.script.html"
282 | },
283 | "3": {
284 | "name": "punctuation.definition.tag.end.html"
285 | }
286 | },
287 | "patterns": [
288 | {
289 | "include": "#tag-stuff"
290 | },
291 | {
292 | "contentName": "source.ts",
293 | "begin": "(>)",
294 | "beginCaptures": {
295 | "1": {
296 | "name": "punctuation.definition.tag.end.html"
297 | }
298 | },
299 | "end": "(?=)",
300 | "patterns": [
301 | {
302 | "include": "source.ts"
303 | }
304 | ]
305 | }
306 | ]
307 | },
308 | {
309 | "begin": "(<)(script)\\b(?=[^>]*(?:type=('text/coffee'|\"text/coffee\")|lang=(coffee|'coffee'|\"coffee\")))(?![^/>]*/>\\s*$)",
310 | "beginCaptures": {
311 | "1": {
312 | "name": "punctuation.definition.tag.begin.html"
313 | },
314 | "2": {
315 | "name": "entity.name.tag.script.html"
316 | }
317 | },
318 | "end": "()(script)(>)",
319 | "endCaptures": {
320 | "1": {
321 | "name": "punctuation.definition.tag.begin.html"
322 | },
323 | "2": {
324 | "name": "entity.name.tag.script.html"
325 | },
326 | "3": {
327 | "name": "punctuation.definition.tag.end.html"
328 | }
329 | },
330 | "patterns": [
331 | {
332 | "include": "#tag-stuff"
333 | },
334 | {
335 | "contentName": "source.coffee",
336 | "begin": "(>)",
337 | "beginCaptures": {
338 | "1": {
339 | "name": "punctuation.definition.tag.end.html"
340 | }
341 | },
342 | "end": "(?=)",
343 | "patterns": [
344 | {
345 | "include": "source.coffee"
346 | }
347 | ]
348 | }
349 | ]
350 | },
351 | {
352 | "begin": "(<)(script)\\b(?=[^>]*(?:(?:type=('text/javascript'|\"text/javascript\")|lang=(javascript|'javascript'|\"javascript\")))?)(?![^/>]*/>\\s*$)",
353 | "beginCaptures": {
354 | "1": {
355 | "name": "punctuation.definition.tag.begin.html"
356 | },
357 | "2": {
358 | "name": "entity.name.tag.script.html"
359 | }
360 | },
361 | "end": "()(script)(>)",
362 | "endCaptures": {
363 | "1": {
364 | "name": "punctuation.definition.tag.begin.html"
365 | },
366 | "2": {
367 | "name": "entity.name.tag.script.html"
368 | },
369 | "3": {
370 | "name": "punctuation.definition.tag.end.html"
371 | }
372 | },
373 | "patterns": [
374 | {
375 | "include": "#tag-stuff"
376 | },
377 | {
378 | "contentName": "source.js",
379 | "begin": "(>)",
380 | "beginCaptures": {
381 | "1": {
382 | "name": "punctuation.definition.tag.end.html"
383 | }
384 | },
385 | "end": "(?=)",
386 | "patterns": [
387 | {
388 | "include": "source.js"
389 | }
390 | ]
391 | }
392 | ]
393 | },
394 | {
395 | "begin": "({)\\s*(#if|:elseif|#await|@html)",
396 | "beginCaptures": {
397 | "1": {
398 | "name": "punctuation.definition.tag.begin.svelte"
399 | },
400 | "2": {
401 | "name": "keyword.control.conditional"
402 | }
403 | },
404 | "end": "}",
405 | "endCaptures": {
406 | "0": {
407 | "name": "punctuation.definition.tag.end.svelte"
408 | }
409 | },
410 | "patterns": [
411 | {
412 | "include": "source.ts"
413 | }
414 | ]
415 | },
416 | {
417 | "match": "({)\\s*(:then|:catch)\\s+([_$[:alpha:]][_$[:alnum:]]*)\\s*(})",
418 | "captures": {
419 | "1": {
420 | "name": "punctuation.definition.tag.begin.svelte"
421 | },
422 | "2": {
423 | "name": "keyword.control.conditional"
424 | },
425 | "3": {
426 | "name": "variable"
427 | },
428 | "4": {
429 | "name": "punctuation.definition.tag.end.svelte"
430 | }
431 | }
432 | },
433 | {
434 | "begin": "({)\\s*(#each)",
435 | "beginCaptures": {
436 | "1": {
437 | "name": "punctuation.definition.tag.begin.svelte"
438 | },
439 | "2": {
440 | "name": "keyword.control.conditional"
441 | }
442 | },
443 | "end": "}",
444 | "endCaptures": {
445 | "0": {
446 | "name": "punctuation.definition.tag.end.svelte"
447 | }
448 | },
449 | "patterns": [
450 | {
451 | "begin": "\\s",
452 | "end": "\\s(as)\\s+",
453 | "endCaptures": {
454 | "1": {
455 | "name": "keyword.control"
456 | }
457 | },
458 | "patterns": [
459 | {
460 | "include": "source.ts"
461 | }
462 | ]
463 | },
464 | {
465 | "match": "[_$[:alpha:]][_$[:alnum:]]*\\s*",
466 | "name": "variable"
467 | },
468 | {
469 | "patterns": [
470 | {
471 | "begin": "\\[\\s*",
472 | "end": "]\\s*",
473 | "patterns": [
474 | {
475 | "include": "source.js"
476 | }
477 | ]
478 | },
479 | {
480 | "begin": "\\{\\s*",
481 | "end": "}\\s*",
482 | "patterns": [
483 | {
484 | "include": "source.js"
485 | }
486 | ]
487 | }
488 | ]
489 | },
490 | {
491 | "match": ",\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*",
492 | "captures": {
493 | "1": {
494 | "name": "variable"
495 | }
496 | }
497 | },
498 | {
499 | "begin": "\\(",
500 | "end": "\\)\\s*",
501 | "patterns": [
502 | {
503 | "include": "source.ts"
504 | }
505 | ]
506 | }
507 | ]
508 | },
509 | {
510 | "match": "({)\\s*(:else|/if|/each|/await)\\s*(})",
511 | "captures": {
512 | "1": {
513 | "name": "punctuation.definition.tag.begin.svelte"
514 | },
515 | "2": {
516 | "name": "keyword.control.conditional"
517 | },
518 | "3": {
519 | "name": "punctuation.definition.tag.end.svelte"
520 | }
521 | }
522 | },
523 | {
524 | "begin": "{",
525 | "beginCaptures": {
526 | "0": {
527 | "name": "punctuation.definition.tag.begin.svelte"
528 | }
529 | },
530 | "end": "}",
531 | "endCaptures": {
532 | "0": {
533 | "name": "punctuation.definition.tag.end.svelte"
534 | }
535 | },
536 | "patterns": [
537 | {
538 | "include": "source.ts"
539 | }
540 | ]
541 | },
542 | {
543 | "begin": "(?)([a-zA-Z][a-zA-Z0-9:-]*)",
544 | "beginCaptures": {
545 | "1": {
546 | "name": "punctuation.definition.tag.begin.html"
547 | },
548 | "2": {
549 | "name": "entity.name.tag.other.html"
550 | }
551 | },
552 | "end": "(/?>)",
553 | "endCaptures": {
554 | "1": {
555 | "name": "punctuation.definition.tag.end.html"
556 | }
557 | },
558 | "name": "meta.tag.other.html",
559 | "patterns": [
560 | {
561 | "include": "#tag-stuff"
562 | }
563 | ]
564 | },
565 | {
566 | "begin": "",
568 | "name": "comment.block"
569 | },
570 | {
571 | "match": "",
572 | "name": "punctuation.definition.tag"
573 | }
574 | ],
575 | "repository": {
576 | "entities": {
577 | "patterns": [
578 | {
579 | "name": "constant.character.entity.html",
580 | "match": "(&)([a-zA-Z0-9]+|#[0-9]+|#x[0-9a-fA-F]+)(;)",
581 | "captures": {
582 | "1": {
583 | "name": "punctuation.definition.entity.html"
584 | },
585 | "3": {
586 | "name": "punctuation.definition.entity.html"
587 | }
588 | }
589 | },
590 | {
591 | "name": "invalid.illegal.bad-ampersand.html",
592 | "match": "&"
593 | }
594 | ]
595 | },
596 | "string-double-quoted": {
597 | "name": "string.quoted.double.html",
598 | "begin": "\"",
599 | "beginCaptures": {
600 | "0": {
601 | "name": "punctuation.definition.string.begin.html"
602 | }
603 | },
604 | "end": "\"",
605 | "endCaptures": {
606 | "0": {
607 | "name": "punctuation.definition.string.end.html"
608 | }
609 | },
610 | "patterns": [
611 | {
612 | "include": "#entities"
613 | }
614 | ]
615 | },
616 | "string-single-quoted": {
617 | "name": "string.quoted.single.html",
618 | "begin": "'",
619 | "beginCaptures": {
620 | "0": {
621 | "name": "punctuation.definition.string.begin.html"
622 | }
623 | },
624 | "end": "'",
625 | "endCaptures": {
626 | "0": {
627 | "name": "punctuation.definition.string.end.html"
628 | }
629 | },
630 | "patterns": [
631 | {
632 | "include": "#entities"
633 | }
634 | ]
635 | },
636 | "tag-generic-attribute": {
637 | "name": "entity.other.attribute-name.html",
638 | "match": "\\b([a-zA-Z\\-:]+)"
639 | },
640 | "tag-id-attribute": {
641 | "name": "meta.attribute-with-value.id.html",
642 | "begin": "\\b(id)\\b\\s*(=)",
643 | "end": "(?<='|\")",
644 | "captures": {
645 | "1": {
646 | "name": "entity.other.attribute-name.id.html"
647 | },
648 | "2": {
649 | "name": "punctuation.separator.key-value.html"
650 | }
651 | },
652 | "patterns": [
653 | {
654 | "name": "string.quoted.double.html",
655 | "contentName": "meta.toc-list.id.html",
656 | "begin": "\"",
657 | "beginCaptures": {
658 | "0": {
659 | "name": "punctuation.definition.string.begin.html"
660 | }
661 | },
662 | "end": "\"",
663 | "endCaptures": {
664 | "0": {
665 | "name": "punctuation.definition.string.end.html"
666 | }
667 | },
668 | "patterns": [
669 | {
670 | "include": "#entities"
671 | }
672 | ]
673 | },
674 | {
675 | "name": "string.quoted.single.html",
676 | "contentName": "meta.toc-list.id.html",
677 | "begin": "'",
678 | "beginCaptures": {
679 | "0": {
680 | "name": "punctuation.definition.string.begin.html"
681 | }
682 | },
683 | "end": "'",
684 | "endCaptures": {
685 | "0": {
686 | "name": "punctuation.definition.string.end.html"
687 | }
688 | },
689 | "patterns": [
690 | {
691 | "include": "#entities"
692 | }
693 | ]
694 | }
695 | ]
696 | },
697 | "tag-event-handlers": {
698 | "begin": "\\b(on):([a-zA-Z]+)=(\"|')",
699 | "beginCaptures": {
700 | "1": {
701 | "name": "entity.other.attribute-name.html"
702 | },
703 | "2": {
704 | "name": "entity.other.attribute-name.html"
705 | },
706 | "3": {
707 | "name": "string.quoted.double"
708 | }
709 | },
710 | "end": "\\3",
711 | "endCaptures": {
712 | "0": {
713 | "name": "string.quoted.double"
714 | }
715 | },
716 | "patterns": [
717 | {
718 | "include": "source.ts"
719 | }
720 | ]
721 | },
722 | "tag-moustaches": {
723 | "begin": "\\b([a-zA-Z\\-:]+)=(\"|')(?=.*{)",
724 | "beginCaptures": {
725 | "1": {
726 | "name": "entity.other.attribute-name.html"
727 | },
728 | "2": {
729 | "name": "string.quoted.double"
730 | }
731 | },
732 | "end": "\\2",
733 | "endCaptures": {
734 | "0": {
735 | "name": "string.quoted.double"
736 | }
737 | },
738 | "patterns": [
739 | {
740 | "begin": "{",
741 | "beginCaptures": {
742 | "0": {
743 | "name": "punctuation.definition.tag.begin.svelte"
744 | }
745 | },
746 | "end": "}",
747 | "endCaptures": {
748 | "0": {
749 | "name": "punctuation.definition.tag.end.svelte"
750 | }
751 | },
752 | "patterns": [
753 | {
754 | "include": "source.ts"
755 | }
756 | ]
757 | },
758 | {
759 | "match": "(?!{).",
760 | "name": "string.quoted.double"
761 | }
762 | ]
763 | },
764 | "tag-moustaches-raw": {
765 | "begin": "\\b([a-zA-Z\\-:]+)=({)",
766 | "beginCaptures": {
767 | "1": {
768 | "name": "entity.other.attribute-name.html"
769 | },
770 | "2": {
771 | "name": "punctuation.definition.tag.begin.svelte"
772 | }
773 | },
774 | "end": "}",
775 | "endCaptures": {
776 | "0": {
777 | "name": "punctuation.definition.tag.end.svelte"
778 | }
779 | },
780 | "patterns": [
781 | {
782 | "include": "source.ts"
783 | }
784 | ]
785 | },
786 | "tag-shorthand": {
787 | "match": "({)\\s*([_$[:alpha:]][_$[:alnum:]]*)\\s*(})",
788 | "captures": {
789 | "1": {
790 | "name": "punctuation.definition.tag.begin.svelte"
791 | },
792 | "2": {
793 | "name": "variable"
794 | },
795 | "3": {
796 | "name": "punctuation.definition.tag.end.svelte"
797 | }
798 | }
799 | },
800 | "tag-stuff": {
801 | "patterns": [
802 | {
803 | "include": "#tag-event-handlers"
804 | },
805 | {
806 | "include": "#tag-moustaches"
807 | },
808 | {
809 | "include": "#tag-moustaches-raw"
810 | },
811 | {
812 | "include": "#tag-shorthand"
813 | },
814 | {
815 | "include": "#tag-id-attribute"
816 | },
817 | {
818 | "include": "#tag-generic-attribute"
819 | },
820 | {
821 | "include": "#string-double-quoted"
822 | },
823 | {
824 | "include": "#string-single-quoted"
825 | }
826 | ]
827 | }
828 | }
829 | }
830 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | "@emmetio/extract-abbreviation@0.1.6":
6 | version "0.1.6"
7 | resolved "https://registry.npmjs.org/@emmetio/extract-abbreviation/-/extract-abbreviation-0.1.6.tgz#e4a9856c1057f0aff7d443b8536477c243abe28c"
8 | integrity sha512-Ce3xE2JvTSEbASFbRbA1gAIcMcZWdS2yUYRaQbeM0nbOzaZrUYfa3ePtcriYRZOZmr+CkKA+zbjhvTpIOAYVcw==
9 |
10 | "@sinonjs/commons@^1", "@sinonjs/commons@^1.0.2":
11 | version "1.4.0"
12 | resolved "https://registry.npmjs.org/@sinonjs/commons/-/commons-1.4.0.tgz#7b3ec2d96af481d7a0321252e7b1c94724ec5a78"
13 | integrity sha512-9jHK3YF/8HtJ9wCAbG+j8cD0i0+ATS9A7gXFqS36TblLPNy6rEEc+SB0imo91eCboGaBYGV/MT1/br/J+EE7Tw==
14 | dependencies:
15 | type-detect "4.0.8"
16 |
17 | "@sinonjs/formatio@^2.0.0":
18 | version "2.0.0"
19 | resolved "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-2.0.0.tgz#84db7e9eb5531df18a8c5e0bfb6e449e55e654b2"
20 | integrity sha512-ls6CAMA6/5gG+O/IdsBcblvnd8qcO/l1TYoNeAzp3wcISOxlPXQEus0mLcdwazEkWjaBdaJ3TaxmNgCLWwvWzg==
21 | dependencies:
22 | samsam "1.3.0"
23 |
24 | "@sinonjs/formatio@^3.1.0":
25 | version "3.2.1"
26 | resolved "https://registry.npmjs.org/@sinonjs/formatio/-/formatio-3.2.1.tgz#52310f2f9bcbc67bdac18c94ad4901b95fde267e"
27 | integrity sha512-tsHvOB24rvyvV2+zKMmPkZ7dXX6LSLKZ7aOtXY6Edklp0uRcgGpOsQTTGTcWViFyx4uhWc6GV8QdnALbIbIdeQ==
28 | dependencies:
29 | "@sinonjs/commons" "^1"
30 | "@sinonjs/samsam" "^3.1.0"
31 |
32 | "@sinonjs/samsam@^3.1.0":
33 | version "3.3.1"
34 | resolved "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-3.3.1.tgz#e88c53fbd9d91ad9f0f2b0140c16c7c107fe0d07"
35 | integrity sha512-wRSfmyd81swH0hA1bxJZJ57xr22kC07a1N4zuIL47yTS04bDk6AoCkczcqHEjcRPmJ+FruGJ9WBQiJwMtIElFw==
36 | dependencies:
37 | "@sinonjs/commons" "^1.0.2"
38 | array-from "^2.1.1"
39 | lodash "^4.17.11"
40 |
41 | "@sinonjs/text-encoding@^0.7.1":
42 | version "0.7.1"
43 | resolved "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.1.tgz#8da5c6530915653f3a1f38fd5f101d8c3f8079c5"
44 | integrity sha512-+iTbntw2IZPb/anVDbypzfQa+ay64MW0Zo8aJ8gZPWMMK6/OubMVb6lUPMagqjOPnmtauXnFCACVl3O7ogjeqQ==
45 |
46 | "@types/node@^9.6.5":
47 | version "9.6.48"
48 | resolved "https://registry.npmjs.org/@types/node/-/node-9.6.48.tgz#06e765bda1fef91b075c58d540207e8b37dbdc1f"
49 | integrity sha512-velR2CyDrHC1WFheHr5Jm25mdCMs0BXJRp6u0zf8PF9yeOy4Xff5sJeusWS7xOmhAoezlSq8LJ0+9M5H7YkTdw==
50 |
51 | agent-base@4, agent-base@^4.1.0:
52 | version "4.2.1"
53 | resolved "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9"
54 | integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==
55 | dependencies:
56 | es6-promisify "^5.0.0"
57 |
58 | ajv@^6.5.5:
59 | version "6.10.0"
60 | resolved "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1"
61 | integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==
62 | dependencies:
63 | fast-deep-equal "^2.0.1"
64 | fast-json-stable-stringify "^2.0.0"
65 | json-schema-traverse "^0.4.1"
66 | uri-js "^4.2.2"
67 |
68 | argparse@^1.0.7:
69 | version "1.0.10"
70 | resolved "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911"
71 | integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==
72 | dependencies:
73 | sprintf-js "~1.0.2"
74 |
75 | array-from@^2.1.1:
76 | version "2.1.1"
77 | resolved "https://registry.npmjs.org/array-from/-/array-from-2.1.1.tgz#cfe9d8c26628b9dc5aecc62a9f5d8f1f352c1195"
78 | integrity sha1-z+nYwmYoudxa7MYqn12PHzUsEZU=
79 |
80 | asn1@~0.2.3:
81 | version "0.2.4"
82 | resolved "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz#8d2475dfab553bb33e77b54e59e880bb8ce23136"
83 | integrity sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==
84 | dependencies:
85 | safer-buffer "~2.1.0"
86 |
87 | assert-plus@1.0.0, assert-plus@^1.0.0:
88 | version "1.0.0"
89 | resolved "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525"
90 | integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=
91 |
92 | asynckit@^0.4.0:
93 | version "0.4.0"
94 | resolved "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
95 | integrity sha1-x57Zf380y48robyXkLzDZkdLS3k=
96 |
97 | aws-sign2@~0.7.0:
98 | version "0.7.0"
99 | resolved "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8"
100 | integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
101 |
102 | aws4@^1.8.0:
103 | version "1.8.0"
104 | resolved "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f"
105 | integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==
106 |
107 | balanced-match@^1.0.0:
108 | version "1.0.0"
109 | resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz#89b4d199ab2bee49de164ea02b89ce462d71b767"
110 | integrity sha1-ibTRmasr7kneFk6gK4nORi1xt2c=
111 |
112 | bcrypt-pbkdf@^1.0.0:
113 | version "1.0.2"
114 | resolved "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e"
115 | integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=
116 | dependencies:
117 | tweetnacl "^0.14.3"
118 |
119 | brace-expansion@^1.1.7:
120 | version "1.1.11"
121 | resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd"
122 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==
123 | dependencies:
124 | balanced-match "^1.0.0"
125 | concat-map "0.0.1"
126 |
127 | browser-stdout@1.3.0:
128 | version "1.3.0"
129 | resolved "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f"
130 | integrity sha1-81HTKWnTL6XXpVZxVCY9korjvR8=
131 |
132 | buffer-from@^1.0.0:
133 | version "1.1.1"
134 | resolved "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef"
135 | integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==
136 |
137 | caseless@~0.12.0:
138 | version "0.12.0"
139 | resolved "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc"
140 | integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=
141 |
142 | combined-stream@^1.0.6, combined-stream@~1.0.6:
143 | version "1.0.7"
144 | resolved "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828"
145 | integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==
146 | dependencies:
147 | delayed-stream "~1.0.0"
148 |
149 | commander@2.11.0:
150 | version "2.11.0"
151 | resolved "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563"
152 | integrity sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==
153 |
154 | concat-map@0.0.1:
155 | version "0.0.1"
156 | resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
157 | integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=
158 |
159 | core-util-is@1.0.2:
160 | version "1.0.2"
161 | resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
162 | integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
163 |
164 | cosmiconfig@^4.0.0:
165 | version "4.0.0"
166 | resolved "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-4.0.0.tgz#760391549580bbd2df1e562bc177b13c290972dc"
167 | integrity sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==
168 | dependencies:
169 | is-directory "^0.3.1"
170 | js-yaml "^3.9.0"
171 | parse-json "^4.0.0"
172 | require-from-string "^2.0.1"
173 |
174 | dashdash@^1.12.0:
175 | version "1.14.1"
176 | resolved "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0"
177 | integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=
178 | dependencies:
179 | assert-plus "^1.0.0"
180 |
181 | debug@3.1.0:
182 | version "3.1.0"
183 | resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261"
184 | integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==
185 | dependencies:
186 | ms "2.0.0"
187 |
188 | debug@^3.1.0:
189 | version "3.2.6"
190 | resolved "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b"
191 | integrity sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==
192 | dependencies:
193 | ms "^2.1.1"
194 |
195 | delayed-stream@~1.0.0:
196 | version "1.0.0"
197 | resolved "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
198 | integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk=
199 |
200 | diff@3.3.1:
201 | version "3.3.1"
202 | resolved "https://registry.npmjs.org/diff/-/diff-3.3.1.tgz#aa8567a6eed03c531fc89d3f711cd0e5259dec75"
203 | integrity sha512-MKPHZDMB0o6yHyDryUOScqZibp914ksXwAMYMTHj6KO8UeKsRYNJD3oNCKjTqZon+V488P7N/HzXF8t7ZR95ww==
204 |
205 | diff@^3.1.0:
206 | version "3.5.0"
207 | resolved "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12"
208 | integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==
209 |
210 | ecc-jsbn@~0.1.1:
211 | version "0.1.2"
212 | resolved "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9"
213 | integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=
214 | dependencies:
215 | jsbn "~0.1.0"
216 | safer-buffer "^2.1.0"
217 |
218 | error-ex@^1.3.1:
219 | version "1.3.2"
220 | resolved "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf"
221 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==
222 | dependencies:
223 | is-arrayish "^0.2.1"
224 |
225 | es6-promise@^4.0.3:
226 | version "4.2.6"
227 | resolved "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.6.tgz#b685edd8258886365ea62b57d30de28fadcd974f"
228 | integrity sha512-aRVgGdnmW2OiySVPUC9e6m+plolMAJKjZnQlCwNSuK5yQ0JN61DZSO1X1Ufd1foqWRAlig0rhduTCHe7sVtK5Q==
229 |
230 | es6-promisify@^5.0.0:
231 | version "5.0.0"
232 | resolved "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203"
233 | integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=
234 | dependencies:
235 | es6-promise "^4.0.3"
236 |
237 | escape-string-regexp@1.0.5:
238 | version "1.0.5"
239 | resolved "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
240 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=
241 |
242 | esprima@^4.0.0:
243 | version "4.0.1"
244 | resolved "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71"
245 | integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==
246 |
247 | estree-walker@^0.6.1:
248 | version "0.6.1"
249 | resolved "https://registry.npmjs.org/estree-walker/-/estree-walker-0.6.1.tgz#53049143f40c6eb918b23671d1fe3219f3a1b362"
250 | integrity sha512-SqmZANLWS0mnatqbSfRP5g8OXZC12Fgg1IwNtLsyHDzJizORW4khDfjPqJZsemPWBB2uqykUah5YpQ6epsqC/w==
251 |
252 | extend@~3.0.2:
253 | version "3.0.2"
254 | resolved "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa"
255 | integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==
256 |
257 | extsprintf@1.3.0:
258 | version "1.3.0"
259 | resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05"
260 | integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=
261 |
262 | extsprintf@^1.2.0:
263 | version "1.4.0"
264 | resolved "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
265 | integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
266 |
267 | fast-deep-equal@^2.0.1:
268 | version "2.0.1"
269 | resolved "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
270 | integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
271 |
272 | fast-json-stable-stringify@^2.0.0:
273 | version "2.0.0"
274 | resolved "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
275 | integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
276 |
277 | forever-agent@~0.6.1:
278 | version "0.6.1"
279 | resolved "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
280 | integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
281 |
282 | form-data@~2.3.2:
283 | version "2.3.3"
284 | resolved "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6"
285 | integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==
286 | dependencies:
287 | asynckit "^0.4.0"
288 | combined-stream "^1.0.6"
289 | mime-types "^2.1.12"
290 |
291 | fs.realpath@^1.0.0:
292 | version "1.0.0"
293 | resolved "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
294 | integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
295 |
296 | getpass@^0.1.1:
297 | version "0.1.7"
298 | resolved "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa"
299 | integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=
300 | dependencies:
301 | assert-plus "^1.0.0"
302 |
303 | glob@7.1.2:
304 | version "7.1.2"
305 | resolved "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15"
306 | integrity sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==
307 | dependencies:
308 | fs.realpath "^1.0.0"
309 | inflight "^1.0.4"
310 | inherits "2"
311 | minimatch "^3.0.4"
312 | once "^1.3.0"
313 | path-is-absolute "^1.0.0"
314 |
315 | glob@^7.1.2:
316 | version "7.1.3"
317 | resolved "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
318 | integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
319 | dependencies:
320 | fs.realpath "^1.0.0"
321 | inflight "^1.0.4"
322 | inherits "2"
323 | minimatch "^3.0.4"
324 | once "^1.3.0"
325 | path-is-absolute "^1.0.0"
326 |
327 | growl@1.10.3:
328 | version "1.10.3"
329 | resolved "https://registry.npmjs.org/growl/-/growl-1.10.3.tgz#1926ba90cf3edfe2adb4927f5880bc22c66c790f"
330 | integrity sha512-hKlsbA5Vu3xsh1Cg3J7jSmX/WaW6A5oBeqzM88oNbCRQFz+zUaXm6yxS4RVytp1scBoJzSYl4YAEOQIt6O8V1Q==
331 |
332 | har-schema@^2.0.0:
333 | version "2.0.0"
334 | resolved "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
335 | integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
336 |
337 | har-validator@~5.1.0:
338 | version "5.1.3"
339 | resolved "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
340 | integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
341 | dependencies:
342 | ajv "^6.5.5"
343 | har-schema "^2.0.0"
344 |
345 | has-flag@^2.0.0:
346 | version "2.0.0"
347 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz#e8207af1cc7b30d446cc70b734b5e8be18f88d51"
348 | integrity sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=
349 |
350 | has-flag@^3.0.0:
351 | version "3.0.0"
352 | resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
353 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
354 |
355 | he@1.1.1:
356 | version "1.1.1"
357 | resolved "https://registry.npmjs.org/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
358 | integrity sha1-k0EP0hsAlzUVH4howvJx80J+I/0=
359 |
360 | http-proxy-agent@^2.1.0:
361 | version "2.1.0"
362 | resolved "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405"
363 | integrity sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==
364 | dependencies:
365 | agent-base "4"
366 | debug "3.1.0"
367 |
368 | http-signature@~1.2.0:
369 | version "1.2.0"
370 | resolved "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1"
371 | integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=
372 | dependencies:
373 | assert-plus "^1.0.0"
374 | jsprim "^1.2.2"
375 | sshpk "^1.7.0"
376 |
377 | https-proxy-agent@^2.2.1:
378 | version "2.2.1"
379 | resolved "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz#51552970fa04d723e04c56d04178c3f92592bbc0"
380 | integrity sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==
381 | dependencies:
382 | agent-base "^4.1.0"
383 | debug "^3.1.0"
384 |
385 | inflight@^1.0.4:
386 | version "1.0.6"
387 | resolved "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9"
388 | integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=
389 | dependencies:
390 | once "^1.3.0"
391 | wrappy "1"
392 |
393 | inherits@2:
394 | version "2.0.3"
395 | resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
396 | integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
397 |
398 | is-arrayish@^0.2.1:
399 | version "0.2.1"
400 | resolved "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d"
401 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=
402 |
403 | is-directory@^0.3.1:
404 | version "0.3.1"
405 | resolved "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1"
406 | integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=
407 |
408 | is-typedarray@~1.0.0:
409 | version "1.0.0"
410 | resolved "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
411 | integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=
412 |
413 | isarray@0.0.1:
414 | version "0.0.1"
415 | resolved "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf"
416 | integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=
417 |
418 | isstream@~0.1.2:
419 | version "0.1.2"
420 | resolved "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a"
421 | integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=
422 |
423 | js-yaml@^3.9.0:
424 | version "3.13.1"
425 | resolved "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz#aff151b30bfdfa8e49e05da22e7415e9dfa37847"
426 | integrity sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==
427 | dependencies:
428 | argparse "^1.0.7"
429 | esprima "^4.0.0"
430 |
431 | jsbn@~0.1.0:
432 | version "0.1.1"
433 | resolved "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513"
434 | integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM=
435 |
436 | json-parse-better-errors@^1.0.1:
437 | version "1.0.2"
438 | resolved "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
439 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
440 |
441 | json-schema-traverse@^0.4.1:
442 | version "0.4.1"
443 | resolved "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
444 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
445 |
446 | json-schema@0.2.3:
447 | version "0.2.3"
448 | resolved "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13"
449 | integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=
450 |
451 | json-stringify-safe@~5.0.1:
452 | version "5.0.1"
453 | resolved "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb"
454 | integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=
455 |
456 | jsonc-parser@^1.0.0:
457 | version "1.0.3"
458 | resolved "https://registry.npmjs.org/jsonc-parser/-/jsonc-parser-1.0.3.tgz#1d53d7160e401a783dbceabaad82473f80e6ad7e"
459 | integrity sha512-hk/69oAeaIzchq/v3lS50PXuzn5O2ynldopMC+SWBql7J2WtdptfB9dy8Y7+Og5rPkTCpn83zTiO8FMcqlXJ/g==
460 |
461 | jsprim@^1.2.2:
462 | version "1.4.1"
463 | resolved "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2"
464 | integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=
465 | dependencies:
466 | assert-plus "1.0.0"
467 | extsprintf "1.3.0"
468 | json-schema "0.2.3"
469 | verror "1.10.0"
470 |
471 | just-extend@^4.0.2:
472 | version "4.0.2"
473 | resolved "https://registry.npmjs.org/just-extend/-/just-extend-4.0.2.tgz#f3f47f7dfca0f989c55410a7ebc8854b07108afc"
474 | integrity sha512-FrLwOgm+iXrPV+5zDU6Jqu4gCRXbWEQg2O3SKONsWE4w7AXFRkryS53bpWdaL9cNol+AmR3AEYz6kn+o0fCPnw==
475 |
476 | lodash.get@^4.4.2:
477 | version "4.4.2"
478 | resolved "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99"
479 | integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk=
480 |
481 | lodash@^4.17.10, lodash@^4.17.11:
482 | version "4.17.11"
483 | resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d"
484 | integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==
485 |
486 | lolex@^2.2.0, lolex@^2.3.2:
487 | version "2.7.5"
488 | resolved "https://registry.npmjs.org/lolex/-/lolex-2.7.5.tgz#113001d56bfc7e02d56e36291cc5c413d1aa0733"
489 | integrity sha512-l9x0+1offnKKIzYVjyXU2SiwhXDLekRzKyhnbyldPHvC7BvLPVpdNUNR2KeMAiCN2D/kLNttZgQD5WjSxuBx3Q==
490 |
491 | magic-string@^0.25.3:
492 | version "0.25.3"
493 | resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.25.3.tgz#34b8d2a2c7fec9d9bdf9929a3fd81d271ef35be9"
494 | integrity sha512-6QK0OpF/phMz0Q2AxILkX2mFhi7m+WMwTRg0LQKq/WBB0cDP4rYH3Wp4/d3OTXlrPLVJT/RFqj8tFeAR4nk8AA==
495 | dependencies:
496 | sourcemap-codec "^1.4.4"
497 |
498 | mime-db@1.40.0:
499 | version "1.40.0"
500 | resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32"
501 | integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==
502 |
503 | mime-types@^2.1.12, mime-types@~2.1.19:
504 | version "2.1.24"
505 | resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81"
506 | integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==
507 | dependencies:
508 | mime-db "1.40.0"
509 |
510 | minimatch@^3.0.4:
511 | version "3.0.4"
512 | resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083"
513 | integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==
514 | dependencies:
515 | brace-expansion "^1.1.7"
516 |
517 | minimist@0.0.8:
518 | version "0.0.8"
519 | resolved "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d"
520 | integrity sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=
521 |
522 | mkdirp@0.5.1:
523 | version "0.5.1"
524 | resolved "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
525 | integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
526 | dependencies:
527 | minimist "0.0.8"
528 |
529 | mocha@^4.0.1:
530 | version "4.1.0"
531 | resolved "https://registry.npmjs.org/mocha/-/mocha-4.1.0.tgz#7d86cfbcf35cb829e2754c32e17355ec05338794"
532 | integrity sha512-0RVnjg1HJsXY2YFDoTNzcc1NKhYuXKRrBAG2gDygmJJA136Cs2QlRliZG1mA0ap7cuaT30mw16luAeln+4RiNA==
533 | dependencies:
534 | browser-stdout "1.3.0"
535 | commander "2.11.0"
536 | debug "3.1.0"
537 | diff "3.3.1"
538 | escape-string-regexp "1.0.5"
539 | glob "7.1.2"
540 | growl "1.10.3"
541 | he "1.1.1"
542 | mkdirp "0.5.1"
543 | supports-color "4.4.0"
544 |
545 | ms@2.0.0:
546 | version "2.0.0"
547 | resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8"
548 | integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=
549 |
550 | ms@^2.1.1:
551 | version "2.1.1"
552 | resolved "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a"
553 | integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==
554 |
555 | nise@^1.2.0:
556 | version "1.4.10"
557 | resolved "https://registry.npmjs.org/nise/-/nise-1.4.10.tgz#ae46a09a26436fae91a38a60919356ae6db143b6"
558 | integrity sha512-sa0RRbj53dovjc7wombHmVli9ZihXbXCQ2uH3TNm03DyvOSIQbxg+pbqDKrk2oxMK1rtLGVlKxcB9rrc6X5YjA==
559 | dependencies:
560 | "@sinonjs/formatio" "^3.1.0"
561 | "@sinonjs/text-encoding" "^0.7.1"
562 | just-extend "^4.0.2"
563 | lolex "^2.3.2"
564 | path-to-regexp "^1.7.0"
565 |
566 | oauth-sign@~0.9.0:
567 | version "0.9.0"
568 | resolved "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
569 | integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
570 |
571 | once@^1.3.0:
572 | version "1.4.0"
573 | resolved "https://registry.npmjs.org/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
574 | integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E=
575 | dependencies:
576 | wrappy "1"
577 |
578 | parse-json@^4.0.0:
579 | version "4.0.0"
580 | resolved "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0"
581 | integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=
582 | dependencies:
583 | error-ex "^1.3.1"
584 | json-parse-better-errors "^1.0.1"
585 |
586 | path-is-absolute@^1.0.0:
587 | version "1.0.1"
588 | resolved "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f"
589 | integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18=
590 |
591 | path-to-regexp@^1.7.0:
592 | version "1.7.0"
593 | resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-1.7.0.tgz#59fde0f435badacba103a84e9d3bc64e96b9937d"
594 | integrity sha1-Wf3g9DW62suhA6hOnTvGTpa5k30=
595 | dependencies:
596 | isarray "0.0.1"
597 |
598 | performance-now@^2.1.0:
599 | version "2.1.0"
600 | resolved "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b"
601 | integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=
602 |
603 | prettier-plugin-svelte@0.7.0:
604 | version "0.7.0"
605 | resolved "https://registry.npmjs.org/prettier-plugin-svelte/-/prettier-plugin-svelte-0.7.0.tgz#5ac0b9f194e0450c88ff1e167cbf3b32d2642df2"
606 | integrity sha512-SuZSeMh48rx42kCFEpI/xE1XgjxQcS3r22Yo7jIhBYRhwbAa8laNxiIHsfeWWkX8BdyELkEayaTQp4ricckwTQ==
607 | dependencies:
608 | tslib "^1.9.3"
609 |
610 | prettier@1.18.2:
611 | version "1.18.2"
612 | resolved "https://registry.npmjs.org/prettier/-/prettier-1.18.2.tgz#6823e7c5900017b4bd3acf46fe9ac4b4d7bda9ea"
613 | integrity sha512-OeHeMc0JhFE9idD4ZdtNibzY0+TPHSpSSb9h8FqtP+YnoZZ1sl8Vc9b1sasjfymH3SonAF4QcA2+mzHPhMvIiw==
614 |
615 | psl@^1.1.24:
616 | version "1.1.31"
617 | resolved "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184"
618 | integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==
619 |
620 | punycode@^1.4.1:
621 | version "1.4.1"
622 | resolved "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e"
623 | integrity sha1-wNWmOycYgArY4esPpSachN1BhF4=
624 |
625 | punycode@^2.1.0:
626 | version "2.1.1"
627 | resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
628 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
629 |
630 | qs@~6.5.2:
631 | version "6.5.2"
632 | resolved "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36"
633 | integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==
634 |
635 | querystringify@^2.1.1:
636 | version "2.1.1"
637 | resolved "https://registry.npmjs.org/querystringify/-/querystringify-2.1.1.tgz#60e5a5fd64a7f8bfa4d2ab2ed6fdf4c85bad154e"
638 | integrity sha512-w7fLxIRCRT7U8Qu53jQnJyPkYZIaR4n5151KMfcJlO/A9397Wxb1amJvROTK6TOnp7PfoAmg/qXiNHI+08jRfA==
639 |
640 | request@^2.88.0:
641 | version "2.88.0"
642 | resolved "https://registry.npmjs.org/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
643 | integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==
644 | dependencies:
645 | aws-sign2 "~0.7.0"
646 | aws4 "^1.8.0"
647 | caseless "~0.12.0"
648 | combined-stream "~1.0.6"
649 | extend "~3.0.2"
650 | forever-agent "~0.6.1"
651 | form-data "~2.3.2"
652 | har-validator "~5.1.0"
653 | http-signature "~1.2.0"
654 | is-typedarray "~1.0.0"
655 | isstream "~0.1.2"
656 | json-stringify-safe "~5.0.1"
657 | mime-types "~2.1.19"
658 | oauth-sign "~0.9.0"
659 | performance-now "^2.1.0"
660 | qs "~6.5.2"
661 | safe-buffer "^5.1.2"
662 | tough-cookie "~2.4.3"
663 | tunnel-agent "^0.6.0"
664 | uuid "^3.3.2"
665 |
666 | require-from-string@^2.0.1:
667 | version "2.0.2"
668 | resolved "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909"
669 | integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==
670 |
671 | requires-port@^1.0.0:
672 | version "1.0.0"
673 | resolved "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
674 | integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=
675 |
676 | safe-buffer@^5.0.1, safe-buffer@^5.1.2:
677 | version "5.1.2"
678 | resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
679 | integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
680 |
681 | safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
682 | version "2.1.2"
683 | resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
684 | integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==
685 |
686 | samsam@1.3.0:
687 | version "1.3.0"
688 | resolved "https://registry.npmjs.org/samsam/-/samsam-1.3.0.tgz#8d1d9350e25622da30de3e44ba692b5221ab7c50"
689 | integrity sha512-1HwIYD/8UlOtFS3QO3w7ey+SdSDFE4HRNLZoZRYVQefrOY3l17epswImeB1ijgJFQJodIaHcwkp3r/myBjFVbg==
690 |
691 | semver@^5.4.1, semver@^5.5.0:
692 | version "5.7.0"
693 | resolved "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz#790a7cf6fea5459bac96110b29b60412dc8ff96b"
694 | integrity sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==
695 |
696 | sinon@^4.5.0:
697 | version "4.5.0"
698 | resolved "https://registry.npmjs.org/sinon/-/sinon-4.5.0.tgz#427ae312a337d3c516804ce2754e8c0d5028cb04"
699 | integrity sha512-trdx+mB0VBBgoYucy6a9L7/jfQOmvGeaKZT4OOJ+lPAtI8623xyGr8wLiE4eojzBS8G9yXbhx42GHUOVLr4X2w==
700 | dependencies:
701 | "@sinonjs/formatio" "^2.0.0"
702 | diff "^3.1.0"
703 | lodash.get "^4.4.2"
704 | lolex "^2.2.0"
705 | nise "^1.2.0"
706 | supports-color "^5.1.0"
707 | type-detect "^4.0.5"
708 |
709 | source-map-support@^0.5.0:
710 | version "0.5.12"
711 | resolved "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599"
712 | integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ==
713 | dependencies:
714 | buffer-from "^1.0.0"
715 | source-map "^0.6.0"
716 |
717 | source-map@^0.6.0:
718 | version "0.6.1"
719 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
720 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
721 |
722 | source-map@^0.7.3:
723 | version "0.7.3"
724 | resolved "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
725 | integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
726 |
727 | sourcemap-codec@^1.4.4:
728 | version "1.4.6"
729 | resolved "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.6.tgz#e30a74f0402bad09807640d39e971090a08ce1e9"
730 | integrity sha512-1ZooVLYFxC448piVLBbtOxFcXwnymH9oUF8nRd3CuYDVvkRBxRl6pB4Mtas5a4drtL+E8LDgFkQNcgIw6tc8Hg==
731 |
732 | sprintf-js@~1.0.2:
733 | version "1.0.3"
734 | resolved "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
735 | integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=
736 |
737 | sshpk@^1.7.0:
738 | version "1.16.1"
739 | resolved "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877"
740 | integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==
741 | dependencies:
742 | asn1 "~0.2.3"
743 | assert-plus "^1.0.0"
744 | bcrypt-pbkdf "^1.0.0"
745 | dashdash "^1.12.0"
746 | ecc-jsbn "~0.1.1"
747 | getpass "^0.1.1"
748 | jsbn "~0.1.0"
749 | safer-buffer "^2.0.2"
750 | tweetnacl "~0.14.0"
751 |
752 | supports-color@4.4.0:
753 | version "4.4.0"
754 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz#883f7ddabc165142b2a61427f3352ded195d1a3e"
755 | integrity sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==
756 | dependencies:
757 | has-flag "^2.0.0"
758 |
759 | supports-color@^5.1.0:
760 | version "5.5.0"
761 | resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f"
762 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==
763 | dependencies:
764 | has-flag "^3.0.0"
765 |
766 | svelte-language-server@^0.10.3:
767 | version "0.10.3"
768 | resolved "https://registry.npmjs.org/svelte-language-server/-/svelte-language-server-0.10.3.tgz#945b0d93306219dc01a3e1afe95bf34fc36e3942"
769 | integrity sha512-kXwwX+t/snSmORKkp/Gx5XBVFfhFQXLCQCBthk7pb/SNXQX7tGptiKgvfyF0kFrMO7OVP3eaUVfSPDQlFwJSYA==
770 | dependencies:
771 | cosmiconfig "^4.0.0"
772 | estree-walker "^0.6.1"
773 | lodash "^4.17.10"
774 | magic-string "^0.25.3"
775 | prettier "1.18.2"
776 | prettier-plugin-svelte "0.7.0"
777 | sinon "^4.5.0"
778 | source-map "^0.7.3"
779 | svelte "3.6.7"
780 | typescript "3.5.3"
781 | vscode-css-languageservice "4.0.2"
782 | vscode-emmet-helper "1.2.15"
783 | vscode-html-languageservice "3.0.2"
784 | vscode-languageserver "5.2.1"
785 | vscode-languageserver-types "3.14.0"
786 | vscode-uri "2.0.3"
787 |
788 | svelte@3.6.7:
789 | version "3.6.7"
790 | resolved "https://registry.npmjs.org/svelte/-/svelte-3.6.7.tgz#20e814b79aac4009d4bc1ecf0c9287a6bf7e96fb"
791 | integrity sha512-9HzhPxWNLi+ZBhxL3HJ8jwwu+u+XfHtVF3uEJ2m8/JOdnaTC9D2qiEwOncgI7z/pN+VumgKQtZoHtvYCW6fHqg==
792 |
793 | tough-cookie@~2.4.3:
794 | version "2.4.3"
795 | resolved "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781"
796 | integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==
797 | dependencies:
798 | psl "^1.1.24"
799 | punycode "^1.4.1"
800 |
801 | tslib@^1.9.3:
802 | version "1.9.3"
803 | resolved "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
804 | integrity sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ==
805 |
806 | tunnel-agent@^0.6.0:
807 | version "0.6.0"
808 | resolved "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
809 | integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=
810 | dependencies:
811 | safe-buffer "^5.0.1"
812 |
813 | tweetnacl@^0.14.3, tweetnacl@~0.14.0:
814 | version "0.14.5"
815 | resolved "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64"
816 | integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=
817 |
818 | type-detect@4.0.8, type-detect@^4.0.5:
819 | version "4.0.8"
820 | resolved "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c"
821 | integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==
822 |
823 | typescript@3.5.3:
824 | version "3.5.3"
825 | resolved "https://registry.npmjs.org/typescript/-/typescript-3.5.3.tgz#c830f657f93f1ea846819e929092f5fe5983e977"
826 | integrity sha512-ACzBtm/PhXBDId6a6sDJfroT2pOWt/oOnk4/dElG5G33ZL776N3Y6/6bKZJBFpd+b05F3Ct9qDjMeJmRWtE2/g==
827 |
828 | typescript@^3.0.1:
829 | version "3.4.5"
830 | resolved "https://registry.npmjs.org/typescript/-/typescript-3.4.5.tgz#2d2618d10bb566572b8d7aad5180d84257d70a99"
831 | integrity sha512-YycBxUb49UUhdNMU5aJ7z5Ej2XGmaIBL0x34vZ82fn3hGvD+bgrMrVDpatgz2f7YxUMJxMkbWxJZeAvDxVe7Vw==
832 |
833 | uri-js@^4.2.2:
834 | version "4.2.2"
835 | resolved "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz#94c540e1ff772956e2299507c010aea6c8838eb0"
836 | integrity sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==
837 | dependencies:
838 | punycode "^2.1.0"
839 |
840 | url-parse@^1.4.4:
841 | version "1.4.7"
842 | resolved "https://registry.npmjs.org/url-parse/-/url-parse-1.4.7.tgz#a8a83535e8c00a316e403a5db4ac1b9b853ae278"
843 | integrity sha512-d3uaVyzDB9tQoSXFvuSUNFibTd9zxd2bkVrDRvF5TmvWWQwqE4lgYJ5m+x1DbecWkw+LK4RNl2CU1hHuOKPVlg==
844 | dependencies:
845 | querystringify "^2.1.1"
846 | requires-port "^1.0.0"
847 |
848 | uuid@^3.3.2:
849 | version "3.3.2"
850 | resolved "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
851 | integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
852 |
853 | verror@1.10.0:
854 | version "1.10.0"
855 | resolved "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400"
856 | integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=
857 | dependencies:
858 | assert-plus "^1.0.0"
859 | core-util-is "1.0.2"
860 | extsprintf "^1.2.0"
861 |
862 | vscode-css-languageservice@4.0.2:
863 | version "4.0.2"
864 | resolved "https://registry.npmjs.org/vscode-css-languageservice/-/vscode-css-languageservice-4.0.2.tgz#7496e538b0c151feac16d5888cc0b1b104f4c736"
865 | integrity sha512-pTnfXbsME3pl+yDfhUp/mtvPyIJk0Le4zqJxDn56s9GY9LqY0RmkSEh0oHH6D0HXR3Ni6wKosIaqu8a2G0+jdw==
866 | dependencies:
867 | vscode-languageserver-types "^3.15.0-next.2"
868 | vscode-nls "^4.1.1"
869 |
870 | vscode-emmet-helper@1.2.15:
871 | version "1.2.15"
872 | resolved "https://registry.npmjs.org/vscode-emmet-helper/-/vscode-emmet-helper-1.2.15.tgz#62dbfbf49bb9ebe329cb7bffdda5aaac725eea7a"
873 | integrity sha512-JplvmMMWSvm/6/dZezix2ADPM49u6YahPYjs/QToohUpomW/2Eb27ecCrkCyOGBPfKLKGiOPHCssss8TSDA9ag==
874 | dependencies:
875 | "@emmetio/extract-abbreviation" "0.1.6"
876 | jsonc-parser "^1.0.0"
877 | vscode-languageserver-types "^3.6.0-next.1"
878 |
879 | vscode-html-languageservice@3.0.2:
880 | version "3.0.2"
881 | resolved "https://registry.npmjs.org/vscode-html-languageservice/-/vscode-html-languageservice-3.0.2.tgz#1fb9f1bf25094ad10c5b64931083d841ce6e6e0c"
882 | integrity sha512-MP9al7nk1SqQwW4GdDy6Ec3UU1GKy0Wf4pzo3nQ5lgdScb2pajV7iyXZIGJk7jQbifkZWnG0jB7CKecTNFynJw==
883 | dependencies:
884 | vscode-languageserver-types "^3.15.0-next.2"
885 | vscode-nls "^4.1.1"
886 | vscode-uri "^2.0.1"
887 |
888 | vscode-jsonrpc@^4.0.0:
889 | version "4.0.0"
890 | resolved "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-4.0.0.tgz#a7bf74ef3254d0a0c272fab15c82128e378b3be9"
891 | integrity sha512-perEnXQdQOJMTDFNv+UF3h1Y0z4iSiaN9jIlb0OqIYgosPCZGYh/MCUlkFtV2668PL69lRDO32hmvL2yiidUYg==
892 |
893 | vscode-languageclient@^5.0.1:
894 | version "5.2.1"
895 | resolved "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-5.2.1.tgz#7cfc83a294c409f58cfa2b910a8cfeaad0397193"
896 | integrity sha512-7jrS/9WnV0ruqPamN1nE7qCxn0phkH5LjSgSp9h6qoJGoeAKzwKz/PF6M+iGA/aklx4GLZg1prddhEPQtuXI1Q==
897 | dependencies:
898 | semver "^5.5.0"
899 | vscode-languageserver-protocol "3.14.1"
900 |
901 | vscode-languageserver-protocol@3.14.1:
902 | version "3.14.1"
903 | resolved "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.14.1.tgz#b8aab6afae2849c84a8983d39a1cf742417afe2f"
904 | integrity sha512-IL66BLb2g20uIKog5Y2dQ0IiigW0XKrvmWiOvc0yXw80z3tMEzEnHjaGAb3ENuU7MnQqgnYJ1Cl2l9RvNgDi4g==
905 | dependencies:
906 | vscode-jsonrpc "^4.0.0"
907 | vscode-languageserver-types "3.14.0"
908 |
909 | vscode-languageserver-types@3.14.0, vscode-languageserver-types@^3.6.0-next.1:
910 | version "3.14.0"
911 | resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.14.0.tgz#d3b5952246d30e5241592b6dde8280e03942e743"
912 | integrity sha512-lTmS6AlAlMHOvPQemVwo3CezxBp0sNB95KNPkqp3Nxd5VFEnuG1ByM0zlRWos0zjO3ZWtkvhal0COgiV1xIA4A==
913 |
914 | vscode-languageserver-types@^3.15.0-next.2:
915 | version "3.15.0-next.2"
916 | resolved "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.15.0-next.2.tgz#a0601332cdaafac21931f497bb080cfb8d73f254"
917 | integrity sha512-2JkrMWWUi2rlVLSo9OFR2PIGUzdiowEM8NgNYiwLKnXTjpwpjjIrJbNNxDik7Rv4oo9KtikcFQZKXbrKilL/MQ==
918 |
919 | vscode-languageserver@5.2.1:
920 | version "5.2.1"
921 | resolved "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-5.2.1.tgz#0d2feddd33f92aadf5da32450df498d52f6f14eb"
922 | integrity sha512-GuayqdKZqAwwaCUjDvMTAVRPJOp/SLON3mJ07eGsx/Iq9HjRymhKWztX41rISqDKhHVVyFM+IywICyZDla6U3A==
923 | dependencies:
924 | vscode-languageserver-protocol "3.14.1"
925 | vscode-uri "^1.0.6"
926 |
927 | vscode-nls@^4.1.1:
928 | version "4.1.1"
929 | resolved "https://registry.npmjs.org/vscode-nls/-/vscode-nls-4.1.1.tgz#f9916b64e4947b20322defb1e676a495861f133c"
930 | integrity sha512-4R+2UoUUU/LdnMnFjePxfLqNhBS8lrAFyX7pjb2ud/lqDkrUavFUTcG7wR0HBZFakae0Q6KLBFjMS6W93F403A==
931 |
932 | vscode-test@^0.4.1:
933 | version "0.4.1"
934 | resolved "https://registry.npmjs.org/vscode-test/-/vscode-test-0.4.1.tgz#5e2387dbc303544c932092469e6bbf42204bfab3"
935 | integrity sha512-uIi/07uG/gmCbD9Y9bFpNzmk4el82xiclijEdL426A3jOFfvwdqgfmtuWYfxEGo0w6JY9EqVDTGQCXwuInXVTQ==
936 | dependencies:
937 | http-proxy-agent "^2.1.0"
938 | https-proxy-agent "^2.2.1"
939 |
940 | vscode-uri@2.0.3, vscode-uri@^2.0.1:
941 | version "2.0.3"
942 | resolved "https://registry.npmjs.org/vscode-uri/-/vscode-uri-2.0.3.tgz#25e5f37f552fbee3cec7e5f80cef8469cefc6543"
943 | integrity sha512-4D3DI3F4uRy09WNtDGD93H9q034OHImxiIcSq664Hq1Y1AScehlP3qqZyTkX/RWxeu0MRMHGkrxYqm2qlDF/aw==
944 |
945 | vscode-uri@^1.0.6:
946 | version "1.0.6"
947 | resolved "https://registry.npmjs.org/vscode-uri/-/vscode-uri-1.0.6.tgz#6b8f141b0bbc44ad7b07e94f82f168ac7608ad4d"
948 | integrity sha512-sLI2L0uGov3wKVb9EB+vIQBl9tVP90nqRvxSoJ35vI3NjxE8jfsE5DSOhWgSunHSZmKS4OCi2jrtfxK7uyp2ww==
949 |
950 | vscode@^1.1.30:
951 | version "1.1.34"
952 | resolved "https://registry.npmjs.org/vscode/-/vscode-1.1.34.tgz#3aba5d2f3a9d43f4e798f6933339fe5fcfb782c6"
953 | integrity sha512-GuT3tCT2N5Qp26VG4C+iGmWMgg/MuqtY5G5TSOT3U/X6pgjM9LFulJEeqpyf6gdzpI4VyU3ZN/lWPo54UFPuQg==
954 | dependencies:
955 | glob "^7.1.2"
956 | mocha "^4.0.1"
957 | request "^2.88.0"
958 | semver "^5.4.1"
959 | source-map-support "^0.5.0"
960 | url-parse "^1.4.4"
961 | vscode-test "^0.4.1"
962 |
963 | wrappy@1:
964 | version "1.0.2"
965 | resolved "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
966 | integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
967 |
--------------------------------------------------------------------------------