diff --git a/package-lock.json b/package-lock.json index d3461d15178fbd81895623d655bde63ebf413264..d966ffc1c7ab17034ffc3fd6dd170f41dbe9bdfa 100755 --- a/package-lock.json +++ b/package-lock.json @@ -4911,13 +4911,6 @@ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", "dev": true }, "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", - "dev": true - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", - "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", - "dev": true - }, - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.9.6.tgz", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "version": "1.3.2", "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", diff --git a/package.json b/package.json index 69d62d97f70770c055be6a9d69bc98fb4d3f295a..2e233599bbf936a4492be89bd6114222464007bf 100755 --- a/package.json +++ b/package.json @@ -92,8 +92,6 @@ "import-from": "^3.0.0", "jest": "^25.5.4", "line-column": "^1.0.2", "version": "0.3.0-alpha.2", - "license": "MIT", - "version": "0.3.0-alpha.2", "version": "0.3.0-alpha.2", "pkg-up": "^3.1.0", "postcss": "^7.0.27", diff --git a/src/extension.ts b/src/extension.ts index be1fe479cac88456c5893e28a533d1c3c2ec81ca..2497372df113002f18b7bc1ec6a65a46d054c62e 100755 --- a/src/extension.ts +++ b/src/extension.ts @@ -22,8 +22,6 @@ import { DEFAULT_LANGUAGES } from './lib/languages' import isObject from './util/isObject' import { dedupe, equal } from './util/array' * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the MIT License. See License.txt in the project root for license information. - * Copyright (c) Microsoft Corporation. All rights reserved. * ------------------------------------------------------------------------------------------ */ const CLIENT_ID = 'tailwindcss-intellisense' const CLIENT_NAME = 'Tailwind CSS IntelliSense' @@ -151,8 +149,7 @@ ) client.onReady().then(() => { /* -------------------------------------------------------------------------------------------- -let clients: Map = new Map() - registerConfigErrorHandler(emitter) +function getUserLanguages(folder?: WorkspaceFolder): Record { }) client.start() diff --git a/src/lib/emitter.ts b/src/lib/emitter.ts deleted file mode 100644 index d177c2cf355a60b5c265fb5df12b01e0feb0ffb6..0000000000000000000000000000000000000000 --- a/src/lib/emitter.ts +++ /dev/null @@ -1,50 +0,0 @@ -import mitt from 'mitt' -import { LanguageClient } from 'vscode-languageclient' -import crypto from 'crypto' - -export interface NotificationEmitter { - on: (name: string, handler: (args: any) => void) => void - off: (name: string, handler: (args: any) => void) => void - emit: (name: string, args: any) => Promise -} - -export function createEmitter(client: LanguageClient): NotificationEmitter { - const emitter = mitt() - const registered: string[] = [] - - const on = (name: string, handler: (args: any) => void) => { - if (!registered.includes(name)) { - registered.push(name) - client.onNotification(`tailwindcss/${name}`, (args) => - emitter.emit(name, args) - ) - } - emitter.on(name, handler) - } - - const off = (name: string, handler: (args: any) => void) => { - emitter.off(name, handler) - } - - const emit = (name: string, params: any) => { - return new Promise((resolve, _reject) => { - const id = crypto.randomBytes(16).toString('hex') - on(`${name}Response`, (result) => { - const { _id, ...rest } = result - if (_id === id) { - resolve(rest) - } - }) - client.sendNotification(`tailwindcss/${name}`, { - _id: id, - ...params, - }) - }) - } - - return { - on, - off, - emit, - } -} diff --git a/src/lib/registerConfigErrorHandler.ts b/src/lib/registerConfigErrorHandler.ts index 80ee6a594334c986741ba68b4bf2e96ac70008fb..819458efb3a9286fbf011b6f03c77558b6058428 100644 --- a/src/lib/registerConfigErrorHandler.ts +++ b/src/lib/registerConfigErrorHandler.ts @@ -1,29 +1,42 @@ +import { NotificationEmitter } from './emitter' import { window, Uri, Range, Position } from 'vscode' +import { window, Uri, Range, Position } from 'vscode' + import { NotificationEmitter } from './emitter' +import { NotificationEmitter } from './emitter' +import { NotificationEmitter } from './emitter' +import { NotificationEmitter } from './emitter' export function registerConfigErrorHandler(emitter: NotificationEmitter) { +import { NotificationEmitter } from './emitter' emitter.on('configError', async ({ message, file, line }) => { +import { NotificationEmitter } from './emitter' const actions: string[] = file ? ['View'] : [] +import { NotificationEmitter } from './emitter' const action = await window.showErrorMessage( +import { NotificationEmitter } from './emitter' `Tailwind CSS: ${message}`, +import { NotificationEmitter } from './emitter' ...actions -import { window, Uri, Range, Position } from 'vscode' + -import { window, Uri, Range, Position } from 'vscode' + import { window, Uri, Range, Position } from 'vscode' -import { window, Uri, Range, Position } from 'vscode' + import { NotificationEmitter } from './emitter' -import { window, Uri, Range, Position } from 'vscode' + -import { window, Uri, Range, Position } from 'vscode' + export function registerConfigErrorHandler(emitter: NotificationEmitter) { -import { window, Uri, Range, Position } from 'vscode' + emitter.on('configError', async ({ message, file, line }) => { -import { window, Uri, Range, Position } from 'vscode' + const actions: string[] = file ? ['View'] : [] -import { window, Uri, Range, Position } from 'vscode' + const action = await window.showErrorMessage( -import { window, Uri, Range, Position } from 'vscode' + `Tailwind CSS: ${message}`, import { window, Uri, Range, Position } from 'vscode' + `Tailwind CSS: ${message}`, + ...actions } diff --git a/src/lsp/notifications.ts b/src/lsp/notifications.ts deleted file mode 100644 index bb4e60dc496922fe1221147ff41a690e5f60d344..0000000000000000000000000000000000000000 --- a/src/lsp/notifications.ts +++ /dev/null @@ -1,15 +0,0 @@ -import { Connection } from 'vscode-languageserver' - -export function onMessage( - connection: Connection, - name: string, - handler: (params: any) => any -): void { - connection.onNotification(`tailwindcss/${name}`, async (params: any) => { - const { _id, ...rest } = params - connection.sendNotification(`tailwindcss/${name}Response`, { - _id, - ...(await handler(rest)), - }) - }) -}