@vscode/component-explorer-vite-plugin 0.1.1-2 → 0.1.1-20
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/SECURITY.md +14 -0
- package/dist/plugin.d.ts +14 -2
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +188 -27
- package/dist/plugin.js.map +1 -1
- package/package.json +25 -5
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) Microsoft Corporation.
|
|
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
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!-- BEGIN MICROSOFT SECURITY.MD V1.0.0 BLOCK -->
|
|
2
|
+
|
|
3
|
+
## Security
|
|
4
|
+
|
|
5
|
+
Microsoft takes the security of our software products and services seriously, which
|
|
6
|
+
includes all source code repositories in our GitHub organizations.
|
|
7
|
+
|
|
8
|
+
**Please do not report security vulnerabilities through public GitHub issues.**
|
|
9
|
+
|
|
10
|
+
For security reporting information, locations, contact information, and policies,
|
|
11
|
+
please review the latest guidance for Microsoft repositories at
|
|
12
|
+
[https://aka.ms/SECURITY.md](https://aka.ms/SECURITY.md).
|
|
13
|
+
|
|
14
|
+
<!-- END MICROSOFT SECURITY.MD BLOCK -->
|
package/dist/plugin.d.ts
CHANGED
|
@@ -1,9 +1,21 @@
|
|
|
1
1
|
import type { Plugin } from 'vite';
|
|
2
|
-
|
|
2
|
+
declare global {
|
|
3
|
+
interface Window {
|
|
4
|
+
__EXPLORER_DAEMON__?: {
|
|
5
|
+
sessionName: string;
|
|
6
|
+
};
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
export type LogLevel = 'silent' | 'info' | 'verbose' | 'warn' | 'error';
|
|
3
10
|
/** Controls what the plugin includes during `vite build`. Has no effect on dev serve. */
|
|
4
11
|
export type BuildMode = 'app-only' | 'all' | 'explorer-only';
|
|
5
12
|
export interface ComponentExplorerOptions {
|
|
6
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Root directory for fixture discovery.
|
|
15
|
+
* Default: undefined (uses Vite's project root - the folder containing vite.config.ts)
|
|
16
|
+
*/
|
|
17
|
+
root?: string;
|
|
18
|
+
/** Glob pattern for fixture files (relative to root). Default: '**\/*.fixture.{ts,tsx}' */
|
|
7
19
|
include?: string;
|
|
8
20
|
/** Explorer route path. Default: '/___explorer' */
|
|
9
21
|
route?: string;
|
package/dist/plugin.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAkB,MAAM,MAAM,CAAC;AAkBnD,OAAO,CAAC,MAAM,CAAC;IACd,UAAU,MAAM;QACf,mBAAmB,CAAC,EAAE;YAAE,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC;KAC9C;CACD;AAED,MAAM,MAAM,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,CAAC;AAExE,0FAA0F;AAC1F,MAAM,MAAM,SAAS,GACjB,UAAU,GACV,KAAK,GACL,eAAe,CAAC;AAapB,MAAM,WAAW,wBAAwB;IACvC;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,2FAA2F;IAC3F,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iHAAiH;IACjH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;;OAKG;IACH,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,iCAAiC;IACjC,QAAQ,CAAC,EAAE,QAAQ,CAAC;CACrB;AAED,wBAAgB,iBAAiB,CAAC,OAAO,GAAE,wBAA6B,GAAG,MAAM,CA6RhF"}
|
package/dist/plugin.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import http from 'node:http';
|
|
2
2
|
import { glob } from 'tinyglobby';
|
|
3
3
|
import path from 'node:path';
|
|
4
|
-
const _require = createRequire(import.meta.url);
|
|
5
4
|
const VIRTUAL_ENTRY_ID = 'virtual:component-explorer/entry';
|
|
6
5
|
const VIRTUAL_FIXTURES_ID = 'virtual:component-explorer/fixtures';
|
|
7
6
|
const RESOLVED_VIRTUAL_ENTRY_ID = '\0' + VIRTUAL_ENTRY_ID;
|
|
8
7
|
const RESOLVED_VIRTUAL_FIXTURES_ID = '\0' + VIRTUAL_FIXTURES_ID;
|
|
8
|
+
const DAEMON_API_PREFIX = '/__explorer/daemon-api';
|
|
9
9
|
/** Normalize a glob pattern for use with import.meta.glob (must start with '/') */
|
|
10
10
|
function normalizeGlobForImportMeta(fixtureGlob) {
|
|
11
11
|
if (fixtureGlob.startsWith('./')) {
|
|
@@ -19,12 +19,15 @@ function normalizeGlobForImportMeta(fixtureGlob) {
|
|
|
19
19
|
}
|
|
20
20
|
}
|
|
21
21
|
export function componentExplorer(options = {}) {
|
|
22
|
-
const
|
|
22
|
+
const rawRoot = options.root;
|
|
23
|
+
const rawInclude = options.include ?? (rawRoot ? '**/*.fixture.{ts,tsx}' : './src/**/*.fixture.{ts,tsx}');
|
|
23
24
|
const explorerRoute = options.route ?? '/___explorer';
|
|
24
25
|
const buildMode = options.build ?? 'app-only';
|
|
25
26
|
const outFile = options.outFile ?? (buildMode === 'explorer-only' ? 'index.html' : '___explorer.html');
|
|
26
27
|
const logLevel = options.logLevel ?? 'info';
|
|
27
28
|
let config;
|
|
29
|
+
let fixtureGlob;
|
|
30
|
+
let fixtureRoot;
|
|
28
31
|
const log = (level, message) => {
|
|
29
32
|
const levels = ['silent', 'info', 'verbose'];
|
|
30
33
|
if (levels.indexOf(level) <= levels.indexOf(logLevel)) {
|
|
@@ -35,19 +38,34 @@ export function componentExplorer(options = {}) {
|
|
|
35
38
|
name: 'component-explorer',
|
|
36
39
|
async configResolved(resolvedConfig) {
|
|
37
40
|
config = resolvedConfig;
|
|
41
|
+
// Resolve fixture root - default to Vite's project root
|
|
42
|
+
if (rawRoot) {
|
|
43
|
+
fixtureRoot = path.isAbsolute(rawRoot)
|
|
44
|
+
? rawRoot
|
|
45
|
+
: path.resolve(config.root, rawRoot);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
fixtureRoot = config.root;
|
|
49
|
+
}
|
|
50
|
+
// If the include glob is absolute, make it relative to fixtureRoot so both
|
|
51
|
+
// tinyglobby and import.meta.glob resolve consistently.
|
|
52
|
+
if (path.isAbsolute(rawInclude)) {
|
|
53
|
+
fixtureGlob = './' + path.relative(fixtureRoot, rawInclude).split(path.sep).join('/');
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
fixtureGlob = rawInclude.startsWith('./') ? rawInclude : './' + rawInclude;
|
|
57
|
+
}
|
|
38
58
|
if (logLevel === 'verbose') {
|
|
39
|
-
const rootDir = config.root;
|
|
40
59
|
const normalizedGlob = fixtureGlob.startsWith('./') ? fixtureGlob.slice(2) : fixtureGlob;
|
|
41
|
-
const fixtures = await glob(normalizedGlob, { cwd:
|
|
60
|
+
const fixtures = await glob(normalizedGlob, { cwd: fixtureRoot });
|
|
42
61
|
const resolvedGlob = normalizeGlobForImportMeta(fixtureGlob);
|
|
43
62
|
if (fixtures.length === 0) {
|
|
44
63
|
log('verbose', `No fixtures found`);
|
|
45
64
|
log('verbose', ` Glob: ${fixtureGlob}`);
|
|
46
|
-
log('verbose', `
|
|
47
|
-
log('verbose', ` Root: ${rootDir}`);
|
|
65
|
+
log('verbose', ` Root: ${fixtureRoot}`);
|
|
48
66
|
}
|
|
49
67
|
else {
|
|
50
|
-
log('verbose', `Found ${fixtures.length} fixture(s) (glob: ${resolvedGlob}):`);
|
|
68
|
+
log('verbose', `Found ${fixtures.length} fixture(s) (glob: ${resolvedGlob}, root: ${fixtureRoot}):`);
|
|
51
69
|
for (const fixture of fixtures) {
|
|
52
70
|
log('verbose', ` - ${fixture}`);
|
|
53
71
|
}
|
|
@@ -59,11 +77,17 @@ export function componentExplorer(options = {}) {
|
|
|
59
77
|
return;
|
|
60
78
|
}
|
|
61
79
|
if (buildMode === 'explorer-only') {
|
|
80
|
+
// Mutate directly — returning `input` would deep-merge with the
|
|
81
|
+
// user's existing entries (e.g. MPA pages), but we want only the
|
|
82
|
+
// explorer entry.
|
|
83
|
+
userConfig.build ??= {};
|
|
84
|
+
userConfig.build.rollupOptions ??= {};
|
|
85
|
+
userConfig.build.rollupOptions.input = { '___explorer': VIRTUAL_ENTRY_ID };
|
|
86
|
+
// Clear lib mode so the explorer gets a proper HTML build
|
|
87
|
+
delete userConfig.build.lib;
|
|
62
88
|
return {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
input: { '___explorer': VIRTUAL_ENTRY_ID },
|
|
66
|
-
},
|
|
89
|
+
define: {
|
|
90
|
+
'process.env.NODE_ENV': JSON.stringify('production'),
|
|
67
91
|
},
|
|
68
92
|
};
|
|
69
93
|
}
|
|
@@ -83,25 +107,51 @@ export function componentExplorer(options = {}) {
|
|
|
83
107
|
else {
|
|
84
108
|
input = { ...currentInput, '___explorer': VIRTUAL_ENTRY_ID };
|
|
85
109
|
}
|
|
110
|
+
// When lib mode is used, lib.fileName controls entryFileNames for ALL
|
|
111
|
+
// entries, causing the explorer chunk to get the same filename as the
|
|
112
|
+
// app entry (e.g. both become "index.js"). Override entryFileNames to
|
|
113
|
+
// give the explorer entry a distinct name while preserving the lib
|
|
114
|
+
// naming for the app entry.
|
|
115
|
+
const lib = userConfig.build?.lib;
|
|
116
|
+
const libFileName = lib && typeof lib === 'object' && !Array.isArray(lib)
|
|
117
|
+
? lib.fileName
|
|
118
|
+
: undefined;
|
|
119
|
+
const outputOverrides = {};
|
|
120
|
+
if (typeof libFileName === 'string') {
|
|
121
|
+
outputOverrides.entryFileNames = (chunkInfo) => {
|
|
122
|
+
if (chunkInfo.name === '___explorer') {
|
|
123
|
+
return '___explorer-[hash].js';
|
|
124
|
+
}
|
|
125
|
+
return `${libFileName}.js`;
|
|
126
|
+
};
|
|
127
|
+
}
|
|
86
128
|
return {
|
|
129
|
+
define: {
|
|
130
|
+
'process.env.NODE_ENV': JSON.stringify('production'),
|
|
131
|
+
},
|
|
87
132
|
build: {
|
|
88
133
|
rollupOptions: {
|
|
89
134
|
input,
|
|
135
|
+
output: outputOverrides,
|
|
90
136
|
},
|
|
91
137
|
},
|
|
92
138
|
};
|
|
93
139
|
},
|
|
94
|
-
resolveId(id, importer) {
|
|
140
|
+
async resolveId(id, importer) {
|
|
95
141
|
if (id === VIRTUAL_ENTRY_ID) {
|
|
96
142
|
return RESOLVED_VIRTUAL_ENTRY_ID;
|
|
97
143
|
}
|
|
98
144
|
if (id === VIRTUAL_FIXTURES_ID) {
|
|
99
145
|
return RESOLVED_VIRTUAL_FIXTURES_ID;
|
|
100
146
|
}
|
|
101
|
-
// Resolve @vscode/component-explorer from the plugin's own location,
|
|
102
|
-
// so it works regardless of the consumer's node_modules layout.
|
|
103
147
|
if (importer === RESOLVED_VIRTUAL_ENTRY_ID && id.startsWith('@vscode/component-explorer')) {
|
|
104
|
-
|
|
148
|
+
const fakeImporter = config.configFile; // file must exist for vite resolution to work
|
|
149
|
+
const result = await this.resolve(id, fakeImporter, { skipSelf: true });
|
|
150
|
+
if (result) {
|
|
151
|
+
log('verbose', `Resolving ${id}: Resolved to ${result.id}`);
|
|
152
|
+
return result;
|
|
153
|
+
}
|
|
154
|
+
log('verbose', `Resolving ${id}: Failed to resolve from ${fakeImporter}`);
|
|
105
155
|
}
|
|
106
156
|
},
|
|
107
157
|
load(id) {
|
|
@@ -121,8 +171,27 @@ export function componentExplorer(options = {}) {
|
|
|
121
171
|
if (explorerChunk && explorerChunk.type === 'chunk') {
|
|
122
172
|
const base = config.base ?? '/';
|
|
123
173
|
const scriptPath = `${base}${explorerChunk.fileName}`;
|
|
124
|
-
// Collect CSS
|
|
125
|
-
|
|
174
|
+
// Collect CSS from the explorer chunk and all transitively imported chunks.
|
|
175
|
+
// viteMetadata.importedCss on the entry chunk alone may miss CSS from shared chunks.
|
|
176
|
+
const cssFiles = new Set();
|
|
177
|
+
const visited = new Set();
|
|
178
|
+
const collectCss = (chunkFileName) => {
|
|
179
|
+
if (visited.has(chunkFileName)) {
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
visited.add(chunkFileName);
|
|
183
|
+
const chunk = bundle[chunkFileName];
|
|
184
|
+
if (!chunk || chunk.type !== 'chunk') {
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
for (const css of chunk.viteMetadata?.importedCss ?? []) {
|
|
188
|
+
cssFiles.add(css);
|
|
189
|
+
}
|
|
190
|
+
for (const imported of chunk.imports ?? []) {
|
|
191
|
+
collectCss(imported);
|
|
192
|
+
}
|
|
193
|
+
};
|
|
194
|
+
collectCss(explorerChunk.fileName);
|
|
126
195
|
const cssLinks = Array.from(cssFiles)
|
|
127
196
|
.map((file) => ` <link rel="stylesheet" href="${base}${file}">`)
|
|
128
197
|
.join('\n');
|
|
@@ -135,6 +204,18 @@ export function componentExplorer(options = {}) {
|
|
|
135
204
|
},
|
|
136
205
|
configureServer(viteServer) {
|
|
137
206
|
log('info', `Explorer available at: ${explorerRoute}`);
|
|
207
|
+
// Parse daemon config from env var (set by daemon process)
|
|
208
|
+
const daemonEnv = process.env.COMPONENT_EXPLORER_DAEMON_CONFIG;
|
|
209
|
+
let daemonConfig;
|
|
210
|
+
if (daemonEnv) {
|
|
211
|
+
try {
|
|
212
|
+
daemonConfig = JSON.parse(daemonEnv);
|
|
213
|
+
log('info', `Daemon mode enabled (session: ${daemonConfig.sessionName})`);
|
|
214
|
+
}
|
|
215
|
+
catch (e) {
|
|
216
|
+
log('error', `Failed to parse daemon config: ${e}`);
|
|
217
|
+
}
|
|
218
|
+
}
|
|
138
219
|
// Watch for fixture file additions/deletions to reload the fixtures module
|
|
139
220
|
const isFixtureFile = (file) => file.match(/\.fixture\.(ts|tsx)$/);
|
|
140
221
|
const invalidateFixturesModule = (file, event) => {
|
|
@@ -156,12 +237,21 @@ export function componentExplorer(options = {}) {
|
|
|
156
237
|
});
|
|
157
238
|
viteServer.middlewares.use(async (req, res, next) => {
|
|
158
239
|
const url = req.url ?? '';
|
|
159
|
-
|
|
160
|
-
|
|
240
|
+
const parsedUrl = new URL(url, 'http://localhost');
|
|
241
|
+
// Proxy daemon API requests to the named pipe
|
|
242
|
+
if (daemonConfig && parsedUrl.pathname.startsWith(DAEMON_API_PREFIX + '/')) {
|
|
243
|
+
const daemonPath = '/api' + parsedUrl.pathname.slice(DAEMON_API_PREFIX.length);
|
|
244
|
+
proxyToDaemon(req, res, daemonConfig.pipeName, daemonPath, log);
|
|
245
|
+
return;
|
|
246
|
+
}
|
|
247
|
+
// Serve explorer HTML for the explorer route (all modes via query params)
|
|
248
|
+
if (parsedUrl.pathname === explorerRoute || parsedUrl.pathname === explorerRoute + '/') {
|
|
161
249
|
log('verbose', `Serving explorer HTML for: ${url}`);
|
|
162
|
-
const html = getExplorerHtml();
|
|
163
|
-
// Transform HTML through Vite to inject React preamble and client
|
|
164
|
-
|
|
250
|
+
const html = getExplorerHtml(daemonConfig);
|
|
251
|
+
// Transform HTML through Vite to inject React preamble and client.
|
|
252
|
+
// Use only the pathname — passing query params (e.g. ?report=...url.json)
|
|
253
|
+
// confuses Vite's JSON plugin into treating inline CSS as JSON.
|
|
254
|
+
const transformedHtml = await viteServer.transformIndexHtml(parsedUrl.pathname, html);
|
|
165
255
|
res.setHeader('Content-Type', 'text/html');
|
|
166
256
|
res.end(transformedHtml);
|
|
167
257
|
return;
|
|
@@ -184,18 +274,38 @@ export function componentExplorer(options = {}) {
|
|
|
184
274
|
}
|
|
185
275
|
function generateEntryModule() {
|
|
186
276
|
return `
|
|
277
|
+
import { ExplorerApp, CliRuntime } from '@vscode/component-explorer/viewer';
|
|
187
278
|
import '@vscode/component-explorer/styles.css';
|
|
188
|
-
import { ExplorerApp } from '@vscode/component-explorer';
|
|
189
279
|
import { fixtures } from 'virtual:component-explorer/fixtures';
|
|
190
280
|
|
|
191
|
-
const
|
|
281
|
+
const params = new URLSearchParams(location.search);
|
|
282
|
+
const root = document.getElementById('root');
|
|
283
|
+
|
|
284
|
+
const target = params.get('mode') === 'render'
|
|
285
|
+
? new CliRuntime(root, fixtures)
|
|
286
|
+
: new ExplorerApp(root, fixtures);
|
|
287
|
+
|
|
288
|
+
const autoFixture = params.get('fixture');
|
|
289
|
+
if (autoFixture && target instanceof CliRuntime) {
|
|
290
|
+
target.renderFixture(autoFixture);
|
|
291
|
+
}
|
|
192
292
|
|
|
193
293
|
if (import.meta.hot) {
|
|
194
294
|
import.meta.hot.accept('virtual:component-explorer/fixtures', (newModule) => {
|
|
195
295
|
if (newModule) {
|
|
196
|
-
|
|
296
|
+
target.updateFixtures(newModule.fixtures);
|
|
297
|
+
}
|
|
298
|
+
});
|
|
299
|
+
|
|
300
|
+
import.meta.hot.on('vite:afterUpdate', (payload) => {
|
|
301
|
+
if (payload.updates.length > 0) {
|
|
302
|
+
target.bumpVersion();
|
|
197
303
|
}
|
|
198
304
|
});
|
|
305
|
+
|
|
306
|
+
import.meta.hot.on('vite:beforeFullReload', () => {
|
|
307
|
+
console.log('[component-explorer] Full page reload incoming');
|
|
308
|
+
});
|
|
199
309
|
}
|
|
200
310
|
`;
|
|
201
311
|
}
|
|
@@ -205,7 +315,10 @@ function generateFixturesModule(fixtureGlob) {
|
|
|
205
315
|
export const fixtures = import.meta.glob('${normalizedGlob}', { eager: true });
|
|
206
316
|
`;
|
|
207
317
|
}
|
|
208
|
-
function getExplorerHtml() {
|
|
318
|
+
function getExplorerHtml(daemonConfig) {
|
|
319
|
+
const daemonScript = daemonConfig
|
|
320
|
+
? `<script>window.__EXPLORER_DAEMON__ = ${JSON.stringify({ sessionName: daemonConfig.sessionName })};</script>`
|
|
321
|
+
: '';
|
|
209
322
|
return `<!DOCTYPE html>
|
|
210
323
|
<html lang="en">
|
|
211
324
|
<head>
|
|
@@ -216,6 +329,7 @@ function getExplorerHtml() {
|
|
|
216
329
|
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
217
330
|
html, body, #root { height: 100%; width: 100%; }
|
|
218
331
|
</style>
|
|
332
|
+
${daemonScript}
|
|
219
333
|
</head>
|
|
220
334
|
<body>
|
|
221
335
|
<div id="root"></div>
|
|
@@ -223,6 +337,53 @@ function getExplorerHtml() {
|
|
|
223
337
|
</body>
|
|
224
338
|
</html>`;
|
|
225
339
|
}
|
|
340
|
+
/**
|
|
341
|
+
* Proxies a request to the daemon's named pipe server.
|
|
342
|
+
*/
|
|
343
|
+
function proxyToDaemon(req, res, pipeName, daemonPath, log) {
|
|
344
|
+
const body = [];
|
|
345
|
+
req.on('data', chunk => body.push(chunk));
|
|
346
|
+
req.on('end', () => {
|
|
347
|
+
const reqBody = Buffer.concat(body);
|
|
348
|
+
const options = {
|
|
349
|
+
socketPath: pipeName,
|
|
350
|
+
path: daemonPath || '/',
|
|
351
|
+
method: req.method,
|
|
352
|
+
headers: {
|
|
353
|
+
'Content-Type': 'application/json',
|
|
354
|
+
'Content-Length': reqBody.byteLength,
|
|
355
|
+
},
|
|
356
|
+
};
|
|
357
|
+
const daemonReq = http.request(options, (daemonRes) => {
|
|
358
|
+
const isStreaming = (daemonRes.headers['content-type'] ?? '').includes('application/jsonl');
|
|
359
|
+
if (isStreaming) {
|
|
360
|
+
res.writeHead(daemonRes.statusCode || 200, daemonRes.headers);
|
|
361
|
+
daemonRes.pipe(res);
|
|
362
|
+
res.on('close', () => { daemonReq.destroy(); });
|
|
363
|
+
}
|
|
364
|
+
else {
|
|
365
|
+
const chunks = [];
|
|
366
|
+
daemonRes.on('data', chunk => chunks.push(chunk));
|
|
367
|
+
daemonRes.on('end', () => {
|
|
368
|
+
const responseBuffer = Buffer.concat(chunks);
|
|
369
|
+
res.writeHead(daemonRes.statusCode || 200, daemonRes.headers);
|
|
370
|
+
res.end(responseBuffer);
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
});
|
|
374
|
+
daemonReq.on('error', (err) => {
|
|
375
|
+
if (res.writableEnded)
|
|
376
|
+
return;
|
|
377
|
+
log('info', `Daemon proxy error: ${err.message}`);
|
|
378
|
+
if (!res.headersSent) {
|
|
379
|
+
res.writeHead(503, { 'Content-Type': 'application/json' });
|
|
380
|
+
}
|
|
381
|
+
res.end(JSON.stringify({ error: 'Daemon unavailable' }));
|
|
382
|
+
});
|
|
383
|
+
daemonReq.write(reqBody);
|
|
384
|
+
daemonReq.end();
|
|
385
|
+
});
|
|
386
|
+
}
|
|
226
387
|
function getExplorerHtmlForBuild(scriptPath, cssLinks) {
|
|
227
388
|
return `<!DOCTYPE html>
|
|
228
389
|
<html lang="en">
|
package/dist/plugin.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../src/plugin.ts"],"names":[],"mappings":"AAEA,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,gBAAgB,GAAG,kCAAkC,CAAC;AAC5D,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;AAClE,MAAM,yBAAyB,GAAG,IAAI,GAAG,gBAAgB,CAAC;AAC1D,MAAM,4BAA4B,GAAG,IAAI,GAAG,mBAAmB,CAAC;AAChE,MAAM,iBAAiB,GAAG,wBAAwB,CAAC;AAsBnD,mFAAmF;AACnF,SAAS,0BAA0B,CAAC,WAAmB;IACrD,IAAI,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;QACjC,OAAO,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;SAAM,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,WAAW,CAAC;IACrB,CAAC;SAAM,CAAC;QACN,OAAO,GAAG,GAAG,WAAW,CAAC;IAC3B,CAAC;AACH,CAAC;AAyBD,MAAM,UAAU,iBAAiB,CAAC,UAAoC,EAAE;IACtE,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAC7B,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,6BAA6B,CAAC,CAAC;IAC1G,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,IAAI,cAAc,CAAC;IACtD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC;IAC9C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,CAAC,SAAS,KAAK,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC;IACvG,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,MAAM,CAAC;IAC5C,IAAI,MAAsB,CAAC;IAC3B,IAAI,WAAmB,CAAC;IACxB,IAAI,WAAmB,CAAC;IAExB,MAAM,GAAG,GAAG,CAAC,KAAe,EAAE,OAAe,EAAE,EAAE;QAC/C,MAAM,MAAM,GAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;QACjD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO;QACL,IAAI,EAAE,oBAAoB;QAE1B,KAAK,CAAC,cAAc,CAAC,cAAc;YACjC,MAAM,GAAG,cAAc,CAAC;YAExB,wDAAwD;YACxD,IAAI,OAAO,EAAE,CAAC;gBACZ,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;oBACpC,CAAC,CAAC,OAAO;oBACT,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACzC,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC;YAC5B,CAAC;YAED,2EAA2E;YAC3E,wDAAwD;YACxD,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;gBAChC,WAAW,GAAG,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACN,WAAW,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC;YAC7E,CAAC;YAED,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC3B,MAAM,cAAc,GAAG,WAAW,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;gBACzF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,EAAE,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;gBAClE,MAAM,YAAY,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAAC;gBAE7D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,GAAG,CAAC,SAAS,EAAE,mBAAmB,CAAC,CAAC;oBACpC,GAAG,CAAC,SAAS,EAAE,WAAW,WAAW,EAAE,CAAC,CAAC;oBACzC,GAAG,CAAC,SAAS,EAAE,WAAW,WAAW,EAAE,CAAC,CAAC;gBAC3C,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,SAAS,EAAE,SAAS,QAAQ,CAAC,MAAM,sBAAsB,YAAY,WAAW,WAAW,IAAI,CAAC,CAAC;oBACrG,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;wBAC/B,GAAG,CAAC,SAAS,EAAE,OAAO,OAAO,EAAE,CAAC,CAAC;oBACnC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,UAAU;YACf,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;gBAClC,gEAAgE;gBAChE,iEAAiE;gBACjE,kBAAkB;gBAClB,UAAU,CAAC,KAAK,KAAK,EAAE,CAAC;gBACxB,UAAU,CAAC,KAAK,CAAC,aAAa,KAAK,EAAE,CAAC;gBACtC,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,KAAK,GAAG,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;gBAC3E,0DAA0D;gBAC1D,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC;gBAC5B,OAAO;oBACL,MAAM,EAAE;wBACN,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;qBACrD;iBACF,CAAC;YACJ,CAAC;YAED,+DAA+D;YAC/D,MAAM,YAAY,GAAG,UAAU,CAAC,KAAK,EAAE,aAAa,EAAE,KAAK,CAAC;YAC5D,IAAI,KAA6B,CAAC;YAElC,IAAI,CAAC,YAAY,EAAE,CAAC;gBAClB,KAAK,GAAG,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;YAC9C,CAAC;iBAAM,IAAI,OAAO,YAAY,KAAK,QAAQ,EAAE,CAAC;gBAC5C,KAAK,GAAG,EAAE,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;YAClE,CAAC;iBAAM,IAAI,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;gBACvC,KAAK,GAAG,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;gBACzE,KAAK,CAAC,aAAa,CAAC,GAAG,gBAAgB,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,KAAK,GAAG,EAAE,GAAG,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,CAAC;YAC/D,CAAC;YAED,sEAAsE;YACtE,sEAAsE;YACtE,sEAAsE;YACtE,mEAAmE;YACnE,4BAA4B;YAC5B,MAAM,GAAG,GAAG,UAAU,CAAC,KAAK,EAAE,GAAG,CAAC;YAClC,MAAM,WAAW,GAAG,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;gBACvE,CAAC,CAAC,GAAG,CAAC,QAAQ;gBACd,CAAC,CAAC,SAAS,CAAC;YAEd,MAAM,eAAe,GAA4B,EAAE,CAAC;YACpD,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;gBACpC,eAAe,CAAC,cAAc,GAAG,CAAC,SAA2B,EAAE,EAAE;oBAC/D,IAAI,SAAS,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;wBACrC,OAAO,uBAAuB,CAAC;oBACjC,CAAC;oBACD,OAAO,GAAG,WAAW,KAAK,CAAC;gBAC7B,CAAC,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,MAAM,EAAE;oBACN,sBAAsB,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;iBACrD;gBACD,KAAK,EAAE;oBACL,aAAa,EAAE;wBACb,KAAK;wBACL,MAAM,EAAE,eAAe;qBACxB;iBACF;aACF,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,SAAS,CAAC,EAAE,EAAE,QAAQ;YAC1B,IAAI,EAAE,KAAK,gBAAgB,EAAE,CAAC;gBAC5B,OAAO,yBAAyB,CAAC;YACnC,CAAC;YACD,IAAI,EAAE,KAAK,mBAAmB,EAAE,CAAC;gBAC/B,OAAO,4BAA4B,CAAC;YACtC,CAAC;YAGD,IAAI,QAAQ,KAAK,yBAAyB,IAAI,EAAE,CAAC,UAAU,CAAC,4BAA4B,CAAC,EAAE,CAAC;gBAC1F,MAAM,YAAY,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,8CAA8C;gBACtF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,EAAE,YAAY,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;gBACxE,IAAI,MAAM,EAAE,CAAC;oBACX,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,iBAAiB,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC;oBAC5D,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,GAAG,CAAC,SAAS,EAAE,aAAa,EAAE,4BAA4B,YAAY,EAAE,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAED,IAAI,CAAC,EAAE;YACL,IAAI,EAAE,KAAK,yBAAyB,EAAE,CAAC;gBACrC,OAAO,mBAAmB,EAAE,CAAC;YAC/B,CAAC;YACD,IAAI,EAAE,KAAK,4BAA4B,EAAE,CAAC;gBACxC,OAAO,sBAAsB,CAAC,WAAW,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,cAAc,CAAC,CAAC,EAAE,MAAM;YACtB,IAAI,SAAS,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO;YACT,CAAC;YAED,gCAAgC;YAChC,MAAM,aAAa,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAC9C,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,IAAI,KAAK,CAAC,OAAO,CACnF,CAAC;YAEF,IAAI,aAAa,IAAI,aAAa,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACpD,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,GAAG,CAAC;gBAChC,MAAM,UAAU,GAAG,GAAG,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,CAAC;gBAEtD,4EAA4E;gBAC5E,qFAAqF;gBACrF,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;gBACnC,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;gBAElC,MAAM,UAAU,GAAG,CAAC,aAAqB,EAAE,EAAE;oBAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;wBAAC,OAAO;oBAAC,CAAC;oBAC3C,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;oBAE3B,MAAM,KAAK,GAAG,MAAM,CAAC,aAAa,CAAC,CAAC;oBACpC,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;wBAAC,OAAO;oBAAC,CAAC;oBAEjD,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,YAAY,EAAE,WAAW,IAAI,EAAE,EAAE,CAAC;wBACxD,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oBACpB,CAAC;oBAED,KAAK,MAAM,QAAQ,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;wBAC3C,UAAU,CAAC,QAAQ,CAAC,CAAC;oBACvB,CAAC;gBACH,CAAC,CAAC;gBAEF,UAAU,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;gBAEnC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;qBAClC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kCAAkC,IAAI,GAAG,IAAI,IAAI,CAAC;qBAChE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEd,IAAI,CAAC,QAAQ,CAAC;oBACZ,IAAI,EAAE,OAAO;oBACb,QAAQ,EAAE,OAAO;oBACjB,MAAM,EAAE,uBAAuB,CAAC,UAAU,EAAE,QAAQ,CAAC;iBACtD,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,eAAe,CAAC,UAAU;YACxB,GAAG,CAAC,MAAM,EAAE,0BAA0B,aAAa,EAAE,CAAC,CAAC;YAEvD,2DAA2D;YAC3D,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC;YAC/D,IAAI,YAAyC,CAAC;YAC9C,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC;oBACH,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAoB,CAAC;oBACxD,GAAG,CAAC,MAAM,EAAE,iCAAiC,YAAa,CAAC,WAAW,GAAG,CAAC,CAAC;gBAC7E,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,GAAG,CAAC,OAAO,EAAE,kCAAkC,CAAC,EAAE,CAAC,CAAC;gBACtD,CAAC;YACH,CAAC;YAED,2EAA2E;YAC3E,MAAM,aAAa,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YAE3E,MAAM,wBAAwB,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;gBAC/D,GAAG,CAAC,SAAS,EAAE,WAAW,KAAK,KAAK,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACxE,MAAM,GAAG,GAAG,UAAU,CAAC,WAAW,CAAC,aAAa,CAAC,4BAA4B,CAAC,CAAC;gBAC/E,IAAI,GAAG,EAAE,CAAC;oBACR,UAAU,CAAC,WAAW,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;gBAC/C,CAAC;YACH,CAAC,CAAC;YAEF,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;gBACpC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,wBAAwB,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAC1C,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,EAAE;gBACvC,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;oBACxB,wBAAwB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;gBAC5C,CAAC;YACH,CAAC,CAAC,CAAC;YAEH,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,EAAE,GAAoB,EAAE,GAAmB,EAAE,IAAgB,EAAE,EAAE;gBAC/F,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;gBAC1B,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;gBAEnD,8CAA8C;gBAC9C,IAAI,YAAY,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,iBAAiB,GAAG,GAAG,CAAC,EAAE,CAAC;oBAC3E,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;oBAC/E,aAAa,CAAC,GAAG,EAAE,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,UAAU,EAAE,GAAG,CAAC,CAAC;oBAChE,OAAO;gBACT,CAAC;gBAED,0EAA0E;gBAC1E,IAAI,SAAS,CAAC,QAAQ,KAAK,aAAa,IAAI,SAAS,CAAC,QAAQ,KAAK,aAAa,GAAG,GAAG,EAAE,CAAC;oBACvF,GAAG,CAAC,SAAS,EAAE,8BAA8B,GAAG,EAAE,CAAC,CAAC;oBACpD,MAAM,IAAI,GAAG,eAAe,CAAC,YAAY,CAAC,CAAC;oBAE3C,mEAAmE;oBACnE,0EAA0E;oBAC1E,gEAAgE;oBAChE,MAAM,eAAe,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACtF,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;oBAC3C,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;oBACzB,OAAO;gBACT,CAAC;gBAED,IAAI,EAAE,CAAC;YACT,CAAC,CAAC,CAAC;QACL,CAAC;QAED,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE;YAC9B,8CAA8C;YAC9C,IAAI,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAAE,CAAC;gBACvC,GAAG,CAAC,SAAS,EAAE,oBAAoB,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;gBACvE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC;oBACb,IAAI,EAAE,QAAQ;oBACd,KAAK,EAAE,mCAAmC;oBAC1C,IAAI,EAAE,EAAE,IAAI,EAAE;iBACf,CAAC,CAAC;YACL,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,mBAAmB;IAC1B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkCR,CAAC;AACF,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAmB;IACjD,MAAM,cAAc,GAAG,0BAA0B,CAAC,WAAW,CAAC,CAAC;IAC/D,OAAO;4CACmC,cAAc;CACzD,CAAC;AACF,CAAC;AAED,SAAS,eAAe,CAAC,YAA8B;IACrD,MAAM,YAAY,GAAG,YAAY;QAC/B,CAAC,CAAC,wCAAwC,IAAI,CAAC,SAAS,CAAC,EAAE,WAAW,EAAE,YAAY,CAAC,WAAW,EAAE,CAAC,YAAY;QAC/G,CAAC,CAAC,EAAE,CAAC;IAEP,OAAO;;;;;;;;;;IAUL,YAAY;;;;;;QAMR,CAAC;AACT,CAAC;AAED;;GAEG;AACH,SAAS,aAAa,CACpB,GAAoB,EACpB,GAAmB,EACnB,QAAgB,EAChB,UAAkB,EAClB,GAA+C;IAE/C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1C,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;QACjB,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,OAAO,GAAG;YACd,UAAU,EAAE,QAAQ;YACpB,IAAI,EAAE,UAAU,IAAI,GAAG;YACvB,MAAM,EAAE,GAAG,CAAC,MAAM;YAClB,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,gBAAgB,EAAE,OAAO,CAAC,UAAU;aACrC;SACF,CAAC;QAEF,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,EAAE;YACpD,MAAM,WAAW,GAAG,CAAC,SAAS,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;YAE5F,IAAI,WAAW,EAAE,CAAC;gBAChB,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;gBAC9D,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACpB,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,MAAM,MAAM,GAAa,EAAE,CAAC;gBAC5B,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;gBAClD,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,EAAE;oBACvB,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBAC7C,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,IAAI,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;oBAC9D,GAAG,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAC1B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;YAC5B,IAAI,GAAG,CAAC,aAAa;gBAAE,OAAO;YAC9B,GAAG,CAAC,MAAM,EAAE,uBAAuB,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;YAClD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;gBACrB,GAAG,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC,CAAC;YAC7D,CAAC;YACD,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,oBAAoB,EAAE,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzB,SAAS,CAAC,GAAG,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,uBAAuB,CAAC,UAAkB,EAAE,QAAgB;IACnE,OAAO;;;;;;EAMP,QAAQ;;;;;;;;+BAQqB,UAAU;;QAEjC,CAAC;AACT,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,17 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vscode/component-explorer-vite-plugin",
|
|
3
|
-
"version": "0.1.1-
|
|
3
|
+
"version": "0.1.1-20",
|
|
4
4
|
"type": "module",
|
|
5
|
+
"repository": {
|
|
6
|
+
"type": "git",
|
|
7
|
+
"url": "git+https://github.com/microsoft/vscode-packages.git",
|
|
8
|
+
"directory": "js-component-explorer/packages/vite-plugin"
|
|
9
|
+
},
|
|
10
|
+
"homepage": "https://github.com/microsoft/vscode-packages/tree/main/js-component-explorer/packages/vite-plugin",
|
|
11
|
+
"bugs": {
|
|
12
|
+
"url": "https://github.com/microsoft/vscode-packages/issues"
|
|
13
|
+
},
|
|
14
|
+
"license": "MIT",
|
|
5
15
|
"main": "./dist/index.js",
|
|
6
16
|
"types": "./dist/index.d.ts",
|
|
7
17
|
"exports": {
|
|
@@ -11,20 +21,30 @@
|
|
|
11
21
|
}
|
|
12
22
|
},
|
|
13
23
|
"files": [
|
|
14
|
-
"dist"
|
|
24
|
+
"dist",
|
|
25
|
+
"README.md",
|
|
26
|
+
"LICENSE",
|
|
27
|
+
"SECURITY.md"
|
|
15
28
|
],
|
|
16
29
|
"scripts": {
|
|
17
30
|
"build": "tsc",
|
|
18
|
-
"
|
|
31
|
+
"dev": "tsc --watch",
|
|
32
|
+
"test": "vitest --run",
|
|
33
|
+
"test:update": "vitest --run --update"
|
|
19
34
|
},
|
|
20
35
|
"dependencies": {
|
|
21
36
|
"tinyglobby": "^0.2.0"
|
|
22
37
|
},
|
|
23
38
|
"devDependencies": {
|
|
24
39
|
"@vscode/component-explorer": "workspace:*",
|
|
25
|
-
"@types/node": "^
|
|
40
|
+
"@types/node": "^22.0.0",
|
|
41
|
+
"@vitejs/plugin-react": "^4.3.0",
|
|
42
|
+
"playwright": "^1.40.0",
|
|
43
|
+
"react": "^18.3.0",
|
|
44
|
+
"react-dom": "^18.3.0",
|
|
26
45
|
"typescript": "^5.4.0",
|
|
27
|
-
"vite": "^6.0.0"
|
|
46
|
+
"vite": "^6.0.0",
|
|
47
|
+
"vitest": "^1.3.0"
|
|
28
48
|
},
|
|
29
49
|
"peerDependencies": {
|
|
30
50
|
"@vscode/component-explorer": "*",
|