Skip to content

Commit 79e224d

Browse files
refactor: move source scripts from src to lib (#3913)
1 parent 3fa6c1f commit 79e224d

File tree

96 files changed

+154
-161
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+154
-161
lines changed

.gitignore

+7
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,10 @@ node_modules
66
.vscode-test-web
77
extensions/*/meta.json
88
extensions/*/stats.html
9+
10+
packages/*/*.d.ts
11+
packages/*/*.js
12+
packages/*/*.map
13+
packages/*/lib/**/*.d.ts
14+
packages/*/lib/**/*.js
15+
packages/*/lib/**/*.map

.vscode/launch.json

+6-3
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@
1212
"--extensionDevelopmentPath=${workspaceRoot}/extensions/vscode"
1313
],
1414
"outFiles": [
15-
"${workspaceRoot}/*/*/out/**/*.js"
15+
"${workspaceRoot}/*/*/*.js",
16+
"${workspaceRoot}/*/*/lib/**/*.js"
1617
],
1718
"preLaunchTask": {
1819
"type": "npm",
@@ -30,7 +31,8 @@
3031
"--extensionDevelopmentKind=web"
3132
],
3233
"outFiles": [
33-
"${workspaceRoot}/*/*/out/**/*.js"
34+
"${workspaceRoot}/*/*/*.js",
35+
"${workspaceRoot}/*/*/lib/**/*.js"
3436
],
3537
"preLaunchTask": {
3638
"type": "npm",
@@ -44,7 +46,8 @@
4446
"port": 6009,
4547
"restart": true,
4648
"outFiles": [
47-
"${workspaceRoot}/*/*/out/**/*.js"
49+
"${workspaceRoot}/*/*/*.js",
50+
"${workspaceRoot}/*/*/lib/**/*.js"
4851
]
4952
}
5053
],

.vscode/settings.json

+8
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,12 @@
1717
"editor.defaultFormatter": "vscode.json-language-features"
1818
},
1919
"vue.server.path": "./extensions/vscode/server.js",
20+
"files.exclude": {
21+
"packages/*/*.d.ts": true,
22+
"packages/*/*.js": true,
23+
"packages/*/*.map": true,
24+
"packages/*/lib/**/*.d.ts": true,
25+
"packages/*/lib/**/*.js": true,
26+
"packages/*/lib/**/*.map": true
27+
}
2028
}

extensions/vscode/scripts/build.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,7 @@ require('esbuild').context({
6464
})
6565

6666
require('esbuild').context({
67-
entryPoints: ['./node_modules/@vue/typescript-plugin/out/index.js'],
67+
entryPoints: ['./node_modules/@vue/typescript-plugin/index.js'],
6868
bundle: true,
6969
outfile: './node_modules/typescript-vue-plugin-bundle/index.js',
7070
external: ['vscode'],

extensions/vscode/src/common.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import {
77
} from '@volar/vscode';
88
import { DiagnosticModel, VueInitializationOptions } from '@vue/language-server';
99
import * as vscode from 'vscode';
10-
import * as lsp from 'vscode-languageclient';
10+
import type * as lsp from 'vscode-languageclient';
1111
import { config } from './config';
1212
import * as doctor from './features/doctor';
1313
import * as nameCasing from './features/nameCasing';

extensions/vscode/src/features/doctor.ts

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
import * as vscode from 'vscode';
2-
import * as semver from 'semver';
3-
import { BaseLanguageClient } from 'vscode-languageclient';
4-
import { ParseSFCRequest } from '@vue/language-server';
51
import { getTsdk } from '@volar/vscode';
2+
import { ParseSFCRequest } from '@vue/language-server';
3+
import * as semver from 'semver';
4+
import * as vscode from 'vscode';
5+
import type { BaseLanguageClient } from 'vscode-languageclient';
66
import { config } from '../config';
77

88
const scheme = 'vue-doctor';

extensions/vscode/src/features/splitEditors.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
1-
import * as vscode from 'vscode';
2-
import { BaseLanguageClient } from 'vscode-languageclient';
31
import { ParseSFCRequest } from '@vue/language-server';
2+
import * as vscode from 'vscode';
3+
import type { BaseLanguageClient } from 'vscode-languageclient';
44
import { config } from '../config';
55

66
type SFCBlock = ParseSFCRequest.ResponseType['descriptor']['customBlocks'][number];

extensions/vscode/src/middleware.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
import { AttrNameCasing, TagNameCasing } from '@vue/language-server';
21
import { middleware as baseMiddleware } from '@volar/vscode';
2+
import { AttrNameCasing, TagNameCasing } from '@vue/language-server';
33
import * as vscode from 'vscode';
4-
import * as lsp from 'vscode-languageclient';
4+
import type * as lsp from 'vscode-languageclient';
55
import { attrNameCasings, tagNameCasings } from './features/nameCasing';
66

77
export const middleware: lsp.Middleware = {

packages/component-meta/src/index.ts renamed to packages/component-meta/index.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
import * as ts from 'typescript';
2-
import { createCheckerByJsonConfigBase, createCheckerBase } from './base';
3-
import type { MetaCheckerOptions } from './types';
2+
import { createCheckerByJsonConfigBase, createCheckerBase } from './lib/base';
3+
import type { MetaCheckerOptions } from './lib/types';
44

5-
export * from './types';
5+
export * from './lib/types';
66

77
/**
88
* @deprecated Use `createCheckerByJson` instead.

packages/component-meta/package.json

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"name": "vue-component-meta",
33
"version": "1.8.27",
4-
"main": "out/index.js",
54
"license": "MIT",
65
"files": [
76
"out/**/*.js",

packages/component-meta/tests/index.spec.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import * as path from 'path';
22
import { describe, expect, test } from 'vitest';
3-
import { createComponentMetaChecker, createComponentMetaCheckerByJsonConfig, MetaCheckerOptions, ComponentMetaChecker, TypeMeta } from '../out';
3+
import { createComponentMetaChecker, createComponentMetaCheckerByJsonConfig, MetaCheckerOptions, ComponentMetaChecker, TypeMeta } from '..';
44

55
const worker = (checker: ComponentMetaChecker, withTsconfig: boolean) => describe(`vue-component-meta ${withTsconfig ? 'with tsconfig' : 'without tsconfig'}`, () => {
66

packages/component-meta/tsconfig.json

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
{
22
"extends": "../../tsconfig.base.json",
3-
"compilerOptions": {
4-
"outDir": "out",
5-
"rootDir": "src",
6-
},
7-
"include": [ "src" ],
3+
"include": [ "*", "lib/**/*" ],
4+
"exclude": [ "tests" ],
85
"references": [
96
{ "path": "../language-core/tsconfig.json" },
107
],

packages/language-core/index.ts

+15
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
export * from './lib/generators/template';
2+
export * from './lib/languageModule';
3+
export * from './lib/parsers/scriptSetupRanges';
4+
export * from './lib/plugins';
5+
export * from './lib/virtualFile/vueFile';
6+
export * from './lib/types';
7+
export * from './lib/utils/ts';
8+
export * from './lib/utils/parseSfc';
9+
10+
export * as scriptRanges from './lib/parsers/scriptRanges';
11+
export * from './lib/utils/shared';
12+
export { tsCodegen } from './lib/plugins/vue-tsx';
13+
14+
export * from '@volar/language-core';
15+
export type * as CompilerDOM from '@vue/compiler-dom';

packages/language-core/src/generators/script.ts renamed to packages/language-core/lib/generators/script.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
1-
import { Mapping } from '@volar/language-core';
1+
import type { Mapping } from '@volar/language-core';
22
import * as path from 'path-browserify';
33
import type * as ts from 'typescript';
44
import type { ScriptRanges } from '../parsers/scriptRanges';
55
import type { ScriptSetupRanges } from '../parsers/scriptSetupRanges';
6-
import type { Code, CodeAndStack, SfcBlock, VueCompilerOptions } from '../types';
7-
import { Sfc } from '../types';
6+
import type { Code, CodeAndStack, Sfc, SfcBlock, VueCompilerOptions } from '../types';
87
import { getSlotsPropertyName, hyphenateTag } from '../utils/shared';
98
import { eachInterpolationSegment } from '../utils/transform';
109
import { disableAllFeatures, enableAllFeatures, withStack } from './utils';

packages/language-core/src/generators/template.ts renamed to packages/language-core/lib/generators/template.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import * as CompilerDOM from '@vue/compiler-dom';
33
import { camelize, capitalize } from '@vue/shared';
44
import { minimatch } from 'minimatch';
55
import type * as ts from 'typescript';
6-
import { Code, CodeAndStack, Sfc, VueCodeInformation, VueCompilerOptions } from '../types';
6+
import type { Code, CodeAndStack, Sfc, VueCodeInformation, VueCompilerOptions } from '../types';
77
import { hyphenateAttr, hyphenateTag } from '../utils/shared';
88
import { collectVars, eachInterpolationSegment } from '../utils/transform';
99
import { disableAllFeatures, enableAllFeatures, getStack, mergeFeatureSettings } from './utils';

packages/language-core/src/generators/utils.ts renamed to packages/language-core/lib/generators/utils.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Code, CodeAndStack, VueCodeInformation } from '../types';
1+
import type { Code, CodeAndStack, VueCodeInformation } from '../types';
22

33
export function withStack(code: Code): CodeAndStack {
44
return [code, getStack()];

packages/language-core/src/languageModule.ts renamed to packages/language-core/lib/languageModule.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { forEachEmbeddedCode, type LanguagePlugin } from '@volar/language-core';
2-
import { getDefaultVueLanguagePlugins, createPluginContext } from './plugins';
3-
import { VueGeneratedCode } from './virtualFile/vueFile';
4-
import { VueCompilerOptions, VueLanguagePlugin } from './types';
52
import type * as ts from 'typescript';
3+
import { createPluginContext, getDefaultVueLanguagePlugins } from './plugins';
4+
import type { VueCompilerOptions, VueLanguagePlugin } from './types';
65
import { resolveVueCompilerOptions } from './utils/ts';
6+
import { VueGeneratedCode } from './virtualFile/vueFile';
77

88
const fileRegistries: {
99
key: string;

packages/language-core/src/plugins.ts renamed to packages/language-core/lib/plugins.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
import * as CompilerDOM from '@vue/compiler-dom';
12
import type * as ts from 'typescript';
23
import useHtmlFilePlugin from './plugins/file-html';
34
import useMdFilePlugin from './plugins/file-md';
@@ -8,8 +9,7 @@ import useVueSfcStyles from './plugins/vue-sfc-styles';
89
import useVueSfcTemplate from './plugins/vue-sfc-template';
910
import useHtmlTemplatePlugin from './plugins/vue-template-html';
1011
import useVueTsx from './plugins/vue-tsx';
11-
import { VueCompilerOptions, VueLanguagePlugin } from './types';
12-
import * as CompilerDOM from '@vue/compiler-dom';
12+
import type { VueCompilerOptions, VueLanguagePlugin } from './types';
1313
import * as CompilerVue2 from './utils/vue2TemplateCompiler';
1414

1515
export function createPluginContext(

packages/language-core/src/plugins/file-html.ts renamed to packages/language-core/lib/plugins/file-html.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type { SFCParseResult } from '@vue/compiler-sfc';
2-
import { VueLanguagePlugin } from '../types';
2+
import type { VueLanguagePlugin } from '../types';
33

44
const sfcBlockReg = /\<(script|style)\b([\s\S]*?)\>([\s\S]*?)\<\/\1\>/g;
55
const langReg = /\blang\s*=\s*(['\"]?)(\S*)\b\1/;

packages/language-core/src/plugins/file-md.ts renamed to packages/language-core/lib/plugins/file-md.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { buildMappings, Segment, SourceMap, toString } from '@volar/language-core';
22
import type { SFCBlock } from '@vue/compiler-sfc';
3-
import { VueLanguagePlugin } from '../types';
3+
import type { VueLanguagePlugin } from '../types';
44
import { parse } from '../utils/parseSfc';
55

66
const codeblockReg = /(`{3,})[\s\S]+?\1/g;

packages/language-core/src/plugins/file-vue.ts renamed to packages/language-core/lib/plugins/file-vue.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { VueLanguagePlugin } from '../types';
1+
import type { VueLanguagePlugin } from '../types';
22
import { parse } from '../utils/parseSfc';
33

44
const plugin: VueLanguagePlugin = (_ctx) => {

packages/language-core/src/plugins/vue-sfc-customblocks.ts renamed to packages/language-core/lib/plugins/vue-sfc-customblocks.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { enableAllFeatures } from '../generators/utils';
2-
import { VueLanguagePlugin } from '../types';
2+
import type { VueLanguagePlugin } from '../types';
33

44
const plugin: VueLanguagePlugin = () => {
55

packages/language-core/src/plugins/vue-sfc-scripts.ts renamed to packages/language-core/lib/plugins/vue-sfc-scripts.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { disableAllFeatures } from '../generators/utils';
2-
import { VueLanguagePlugin } from '../types';
2+
import type { VueLanguagePlugin } from '../types';
33

44
const plugin: VueLanguagePlugin = () => {
55

packages/language-core/src/plugins/vue-sfc-styles.ts renamed to packages/language-core/lib/plugins/vue-sfc-styles.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { enableAllFeatures } from '../generators/utils';
2-
import { VueLanguagePlugin } from '../types';
2+
import type { VueLanguagePlugin } from '../types';
33

44
const plugin: VueLanguagePlugin = () => {
55

packages/language-core/src/plugins/vue-sfc-template.ts renamed to packages/language-core/lib/plugins/vue-sfc-template.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { enableAllFeatures } from '../generators/utils';
2-
import { VueLanguagePlugin } from '../types';
2+
import type { VueLanguagePlugin } from '../types';
33

44
const plugin: VueLanguagePlugin = () => {
55

packages/language-core/src/plugins/vue-template-html.ts renamed to packages/language-core/lib/plugins/vue-template-html.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { VueLanguagePlugin } from '../types';
21
import type * as CompilerDOM from '@vue/compiler-dom';
2+
import type { VueLanguagePlugin } from '../types';
33

44
interface Loc {
55
start: { offset: number; };

packages/language-core/src/plugins/vue-tsx.ts renamed to packages/language-core/lib/plugins/vue-tsx.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,10 @@ import { CodeInformation, Mapping, Segment, StackNode, track } from '@volar/lang
22
import { computed, computedSet } from 'computeds';
33
import { generate as generateScript } from '../generators/script';
44
import { generate as generateTemplate } from '../generators/template';
5+
import { enableAllFeatures } from '../generators/utils';
56
import { parseScriptRanges } from '../parsers/scriptRanges';
67
import { parseScriptSetupRanges } from '../parsers/scriptSetupRanges';
7-
import { Code, Sfc, VueLanguagePlugin } from '../types';
8-
import { enableAllFeatures } from '../generators/utils';
8+
import type { Code, Sfc, VueLanguagePlugin } from '../types';
99

1010
export const tsCodegen = new WeakMap<Sfc, ReturnType<typeof createTsx>>();
1111

packages/language-core/src/utils/transform.ts renamed to packages/language-core/lib/utils/transform.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { isGloballyWhitelisted } from '@vue/shared';
22
import type * as ts from 'typescript';
3-
import { VueCompilerOptions } from '../types';
43
import { getNodeText, getStartEnd } from '../parsers/scriptSetupRanges';
4+
import type { VueCompilerOptions } from '../types';
55

66
export function* eachInterpolationSegment(
77
ts: typeof import('typescript'),

packages/language-core/src/virtualFile/computedMappings.ts renamed to packages/language-core/lib/virtualFile/computedMappings.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { Mapping, Segment, replaceSourceRange } from '@volar/language-core';
22
import { computed } from 'computeds';
33
import type * as ts from 'typescript';
44
import { enableAllFeatures } from '../generators/utils';
5-
import { Sfc, VueCodeInformation } from '../types';
5+
import type { Sfc, VueCodeInformation } from '../types';
66

77
export function computedMappings(
88
snapshot: () => ts.IScriptSnapshot,

packages/language-core/src/virtualFile/computedSfc.ts renamed to packages/language-core/lib/virtualFile/computedSfc.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import type * as CompilerDOM from '@vue/compiler-dom';
22
import type { SFCBlock, SFCParseResult } from '@vue/compiler-sfc';
3+
import { computed, computedArray, pauseTracking, resetTracking } from 'computeds';
34
import type * as ts from 'typescript';
4-
import { Sfc, SfcBlock, VueLanguagePlugin } from '../types';
5+
import type { Sfc, SfcBlock, VueLanguagePlugin } from '../types';
56
import { parseCssClassNames } from '../utils/parseCssClassNames';
67
import { parseCssVars } from '../utils/parseCssVars';
7-
import { computed, pauseTracking, resetTracking, computedArray } from 'computeds';
88

99
export function computedSfc(
1010
ts: typeof import('typescript'),

packages/language-core/src/virtualFile/computedVueSfc.ts renamed to packages/language-core/lib/virtualFile/computedVueSfc.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { SFCParseResult } from '@vue/compiler-sfc';
2-
import type * as ts from 'typescript';
3-
import { VueLanguagePlugin } from '../types';
42
import { computed } from 'computeds';
3+
import type * as ts from 'typescript';
4+
import type { VueLanguagePlugin } from '../types';
55

66
export function computedVueSfc(
77
plugins: ReturnType<VueLanguagePlugin>[],

packages/language-core/src/virtualFile/embeddedFile.ts renamed to packages/language-core/lib/virtualFile/embeddedFile.ts

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
import { Mapping, StackNode } from '@volar/language-core';
2-
import { Code } from '../types';
1+
import type { Mapping, StackNode } from '@volar/language-core';
2+
import type { Code } from '../types';
33

44
export class VueEmbeddedFile {
55

packages/language-core/src/virtualFile/vueFile.ts renamed to packages/language-core/lib/virtualFile/vueFile.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
1-
import { Stack, VirtualCode } from '@volar/language-core';
1+
import type { Stack, VirtualCode } from '@volar/language-core';
2+
import { Signal, signal } from 'computeds';
23
import type * as ts from 'typescript';
3-
import { VueCompilerOptions, VueLanguagePlugin } from '../types';
4+
import type { VueCompilerOptions, VueLanguagePlugin } from '../types';
45
import { computedFiles } from './computedFiles';
56
import { computedMappings } from './computedMappings';
67
import { computedSfc } from './computedSfc';
78
import { computedVueSfc } from './computedVueSfc';
8-
import { Signal, signal } from 'computeds';
99

1010
export class VueGeneratedCode implements VirtualCode {
1111

packages/language-core/package.json

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"name": "@vue/language-core",
33
"version": "1.8.27",
4-
"main": "out/index.js",
54
"license": "MIT",
65
"files": [
76
"out/**/*.js",

packages/language-core/src/index.ts

-15
This file was deleted.

packages/language-core/tsconfig.json

+2-5
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,5 @@
11
{
22
"extends": "../../tsconfig.base.json",
3-
"compilerOptions": {
4-
"outDir": "out",
5-
"rootDir": "src",
6-
},
7-
"include": [ "src" ],
3+
"include": [ "*", "lib/**/*" ],
4+
"exclude": [ "tests" ],
85
}

packages/language-plugin-pug/package.json

-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
{
22
"name": "@vue/language-plugin-pug",
33
"version": "1.8.27",
4-
"main": "out/index.js",
54
"license": "MIT",
65
"files": [
76
"out/**/*.js",

0 commit comments

Comments
 (0)