Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 2 additions & 0 deletions .changeset/prettier-organize-imports.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
---
---
1 change: 1 addition & 0 deletions .prettierrc.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
{
"plugins": ["prettier-plugin-organize-imports"],
"endOfLine": "lf",
"trailingComma": "all",
"tabWidth": 2,
Expand Down
4 changes: 4 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@
"out": true, // set this to false to include "out" folder in search results
"dist": true // set this to false to include "dist" folder in search results
},
// Organize imports (sort + remove unused) on save, matching prettier-plugin-organize-imports
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
},
// Turn off tsc task auto detection since we have the necessary tasks as npm scripts
"typescript.tsc.autoDetect": "off"
}
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
"html-webpack-plugin": "^5.5.0",
"jsdom": "^22.1.0",
"prettier": "^3.0.0",
"prettier-plugin-organize-imports": "^4.3.0",
"ts-loader": "^9.4.2",
"ts-node": "^10.9.1",
"tsconfig-paths-webpack-plugin": "^4.1.0",
Expand Down
8 changes: 4 additions & 4 deletions packages/codemirror-language-client/src/LanguageClient.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,25 @@
import {
CancellationToken,
CancellationTokenSource,
ClientCapabilities,
Disposable,
ExitNotification,
InitializeRequest,
InitializedNotification,
Message,
MessageSignature,
NotificationHandler,
NotificationMessage,
ProtocolNotificationType,
ProtocolNotificationType0,
ProtocolRequestType,
ProtocolRequestType0,
RequestHandler,
RequestMessage,
ResponseError,
ResponseMessage,
ShutdownRequest,
MessageSignature,
ProtocolNotificationType0,
ServerCapabilities,
ClientCapabilities,
ShutdownRequest,
} from 'vscode-languageserver-protocol';

export interface PromiseCompletion {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { Facet } from '@codemirror/state';

import { AbstractLanguageClient } from '../LanguageClient';
import { ServerCapabilities } from 'vscode-languageserver-protocol';
import { AbstractLanguageClient } from '../LanguageClient';

export const clientFacet = Facet.define<AbstractLanguageClient, AbstractLanguageClient>({
combine: (values) => values[0],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { vi, expect, describe, it, beforeEach, assert } from 'vitest';
import { EditorState, Extension } from '@codemirror/state';
import { CompletionContext } from '@codemirror/autocomplete';
import { clientFacet, fileUriFacet, serverCapabilitiesFacet } from './client';
import { MockClient } from '../test/MockClient';
import { EditorState } from '@codemirror/state';
import { assert, beforeEach, describe, expect, it, vi } from 'vitest';
import { CompletionItem, CompletionItemKind, CompletionList } from 'vscode-languageserver-protocol';
import { textDocumentSync } from './textDocumentSync';
import { MockClient } from '../test/MockClient';
import { clientFacet, fileUriFacet, serverCapabilitiesFacet } from './client';
import { complete, infoRendererFacet, lspComplete } from './complete';
import { textDocumentSync } from './textDocumentSync';

describe('Module: complete', () => {
const fileUri = 'browser://input.liquid';
Expand Down
18 changes: 9 additions & 9 deletions packages/codemirror-language-client/src/extensions/complete.ts
Original file line number Diff line number Diff line change
@@ -1,29 +1,29 @@
import {
autocompletion,
Completion,
CompletionContext,
CompletionResult,
CompletionInfo,
CompletionResult,
pickedCompletion,
Completion,
snippet,
} from '@codemirror/autocomplete';
import { Facet } from '@codemirror/state';
import { EditorView } from '@codemirror/view';
import {
CompletionItem,
CompletionItemKind,
CompletionList,
CompletionRequest,
InsertTextFormat,
InsertReplaceEdit,
TextEdit,
CompletionTriggerKind,
InsertReplaceEdit,
InsertTextFormat,
CompletionContext as LSPCompletionContext,
TextEdit,
} from 'vscode-languageserver-protocol';
import { clientFacet, fileUriFacet, serverCapabilitiesFacet } from './client';
import { textDocumentField } from './textDocumentSync';
import { Facet } from '@codemirror/state';
import { EditorView } from '@codemirror/view';
import { TextDocument } from 'vscode-languageserver-textdocument';
import { clientFacet, fileUriFacet, serverCapabilitiesFacet } from './client';
import { translateSnippet } from './snippet';
import { textDocumentField } from './textDocumentSync';

type FirstArgType<F> = F extends (arg: infer A) => any ? A : never;
export type AutocompleteOptions = Partial<FirstArgType<typeof autocompletion>>;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
// @vitest-environment jsdom
import { EditorState, Extension, Range, RangeSet, RangeValue } from '@codemirror/state';
import { EditorState, Extension, Range } from '@codemirror/state';
import { Decoration, DecorationSet, EditorView } from '@codemirror/view';
import { assert, beforeEach, describe, expect, it } from 'vitest';
import { beforeEach, describe, expect, it } from 'vitest';
import { DocumentHighlight } from 'vscode-languageserver-protocol';
import { MockClient } from '../test/MockClient';
import { clientFacet, fileUriFacet } from './client';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@
import { EditorState, Extension } from '@codemirror/state';
import { EditorView } from '@codemirror/view';
import { beforeEach, describe, expect, it, vi } from 'vitest';
import { Hover } from 'vscode-languageserver-protocol';
import { MockClient } from '../test/MockClient';
import { clientFacet, fileUriFacet } from './client';
import { hover, hoverRendererFacet, lspHover } from './hover';
import { textDocumentSync } from './textDocumentSync';
import { Hover } from 'vscode-languageserver-protocol';

describe('Module: hover', () => {
const fileUri = 'browser://input.liquid';
Expand Down
4 changes: 2 additions & 2 deletions packages/codemirror-language-client/src/extensions/hover.ts
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import { Facet } from '@codemirror/state';
import { EditorView, Tooltip, TooltipView, hoverTooltip } from '@codemirror/view';
import { Hover, HoverRequest } from 'vscode-languageserver-protocol';
import { clientFacet, fileUriFacet } from './client';
import { textDocumentField } from './textDocumentSync';
import { Facet } from '@codemirror/state';
import { EditorView, Tooltip, TooltipView, hoverTooltip } from '@codemirror/view';

type SecondArgType<F> = F extends (_: any, arg: infer A) => any ? A : never;
export type HoverOptions = Partial<SecondArgType<typeof hoverTooltip>>;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
// @vitest-environment jsdom
import { expect, describe, it, beforeEach, afterEach } from 'vitest';
import { Diagnostic as CodeMirrorDiagnostic } from '@codemirror/lint';
import { EditorState, Extension } from '@codemirror/state';
import { EditorView } from '@codemirror/view';
import { Diagnostic as CodeMirrorDiagnostic } from '@codemirror/lint';
import { diagnosticsFacet, lspLinter } from './lspLinter';
import { clientFacet, fileUriFacet } from './client';
import { MockClient } from '../test/MockClient';
import { afterEach, beforeEach, describe, expect, it } from 'vitest';
import { DiagnosticSeverity, PublishDiagnosticsNotification } from 'vscode-languageserver-protocol';
import { MockClient } from '../test/MockClient';
import { clientFacet, fileUriFacet } from './client';
import { diagnosticsFacet, lspLinter } from './lspLinter';

describe('Module: lspLinter', () => {
const fileUri = 'browser://input.liquid';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
import { MapMode, RangeSet, RangeValue, StateEffect, StateField, Range } from '@codemirror/state';

/**
* Syntax is $1, ${2}, ${3:foo}, $0
* https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#snippet_syntax
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
// @vitest-environment jsdom
import { expect, describe, it, beforeEach, afterEach } from 'vitest';
import { EditorState, Extension, StateEffect } from '@codemirror/state';
import { textDocumentField, textDocumentSync } from './textDocumentSync';
import { clientFacet, fileUriFacet } from './client';
import { MockClient } from '../test/MockClient';
import { EditorView } from '@codemirror/view';
import { afterEach, beforeEach, describe, expect, it } from 'vitest';
import {
DidChangeTextDocumentNotification,
DidCloseTextDocumentNotification,
DidOpenTextDocumentNotification,
} from 'vscode-languageserver-protocol';
import { EditorView } from '@codemirror/view';
import { MockClient } from '../test/MockClient';
import { clientFacet, fileUriFacet } from './client';
import { textDocumentField, textDocumentSync } from './textDocumentSync';

describe('Module: textDocumentField', () => {
let state;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
import { TextDocument } from 'vscode-languageserver-textdocument';
import { Extension, StateField } from '@codemirror/state';
import { EditorView, PluginValue, ViewPlugin, ViewUpdate } from '@codemirror/view';
import {
DidChangeTextDocumentNotification,
DidCloseTextDocumentNotification,
DidOpenTextDocumentNotification,
} from 'vscode-languageserver-protocol';
import { Extension, StateField } from '@codemirror/state';
import { EditorView, PluginValue, ViewPlugin, ViewUpdate } from '@codemirror/view';
import { TextDocument } from 'vscode-languageserver-textdocument';

import { AbstractLanguageClient } from '../LanguageClient';

Expand Down
2 changes: 1 addition & 1 deletion packages/codemirror-language-client/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
export * from './extensions';
export * from './CodeMirrorLanguageClient';
export * from './extensions';
9 changes: 4 additions & 5 deletions packages/codemirror-language-client/src/test/MockClient.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
import { vi } from 'vitest';
import {
ProtocolRequestType,
ProtocolNotificationType,
CancellationTokenSource,
CancellationToken,
ServerCapabilities,
CancellationTokenSource,
ProtocolNotificationType,
ProtocolRequestType,
} from 'vscode-languageserver-protocol';
import { PromiseCompletion, AbstractLanguageClient, disposable } from '../LanguageClient';
import { AbstractLanguageClient, disposable, PromiseCompletion } from '../LanguageClient';

export class MockClient extends EventTarget implements AbstractLanguageClient {
clientCapabilities: AbstractLanguageClient['clientCapabilities'];
Expand Down
8 changes: 4 additions & 4 deletions packages/lang-jsonc/src/jsonc.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { parser } from './parser';
import {
continuedIndent,
indentNodeProp,
foldNodeProp,
foldInside,
LRLanguage,
foldNodeProp,
indentNodeProp,
LanguageSupport,
LRLanguage,
} from '@codemirror/language';
import { parser } from './parser';

/// A language provider that provides JSON parsing.
export const jsoncLanguage = LRLanguage.define({
Expand Down
2 changes: 1 addition & 1 deletion packages/liquid-html-parser/src/grammar.spec.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { expect, it, describe } from 'vitest';
import { describe, expect, it } from 'vitest';
import { placeholderGrammars, strictGrammars, tolerantGrammars } from './grammar';

describe('Unit: liquidHtmlGrammar', () => {
Expand Down
2 changes: 1 addition & 1 deletion packages/liquid-html-parser/src/grammar.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { grammars, Grammar } from 'ohm-js';
import { Grammar, grammars } from 'ohm-js';

export const liquidHtmlGrammars = grammars(require('../grammar/liquid-html.ohm.js'));

Expand Down
6 changes: 3 additions & 3 deletions packages/liquid-html-parser/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
export { getConditionalComment } from './conditional-comment';
export * from './errors';
export { BLOCKS, RAW_TAGS, TAGS_WITHOUT_MARKUP, VOID_ELEMENTS } from './grammar';
export * from './stage-2-ast';
export * from './types';
export * from './errors';
export { TAGS_WITHOUT_MARKUP, RAW_TAGS, VOID_ELEMENTS, BLOCKS } from './grammar';
export { getConditionalComment } from './conditional-comment';
10 changes: 5 additions & 5 deletions packages/liquid-html-parser/src/stage-1-cst.spec.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
import { expect, it, describe } from 'vitest';
import { describe, expect, it } from 'vitest';
import { VOID_ELEMENTS } from './grammar';
import {
ConcreteLiquidTagLiquid,
LiquidCST,
LiquidHtmlCST,
toLiquidHtmlCST,
toLiquidCST,
LiquidCST,
ConcreteLiquidTagLiquid,
toLiquidHtmlCST,
} from './stage-1-cst';
import { VOID_ELEMENTS } from './grammar';
import { deepGet } from './utils';

describe('Unit: Stage 1 (CST)', () => {
Expand Down
4 changes: 2 additions & 2 deletions packages/liquid-html-parser/src/stage-1-cst.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,9 +30,10 @@
*
*/

import { Parser } from 'prettier';
import { Grammar, Node } from 'ohm-js';
import { toAST } from 'ohm-js/extras';
import { Parser } from 'prettier';
import { LiquidHTMLCSTParsingError } from './errors';
import {
LiquidDocGrammar,
LiquidGrammars,
Expand All @@ -41,7 +42,6 @@ import {
strictGrammars,
tolerantGrammars,
} from './grammar';
import { LiquidHTMLCSTParsingError } from './errors';
import { Comparators, NamedTags } from './types';

export enum ConcreteNodeTypes {
Expand Down
4 changes: 2 additions & 2 deletions packages/liquid-html-parser/src/stage-2-ast.spec.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { expect, it, describe } from 'vitest';
import { toLiquidHtmlAST, toLiquidAST, LiquidHtmlNode, DocumentNode } from './stage-2-ast';
import { describe, expect, it } from 'vitest';
import { DocumentNode, LiquidHtmlNode, toLiquidAST, toLiquidHtmlAST } from './stage-2-ast';
import { deepGet } from './utils';

describe('Unit: Stage 2 (AST)', () => {
Expand Down
Loading
Loading