Skip to content

Commit f32a4b8

Browse files
committed
Add json document to playground
1 parent f23d3ee commit f32a4b8

File tree

5 files changed

+33
-7
lines changed

5 files changed

+33
-7
lines changed

package-lock.json

Lines changed: 5 additions & 5 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
{
2+
"$schema": "http://json.schemastore.org/coffeelint",
3+
"line_endings": {"value": "unix"}
4+
}

packages/examples/src/appPlayground/common.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,8 @@ export const configurePostStart = async (apiWrapper: MonacoVscodeApiWrapper, con
1414

1515
await Promise.all([
1616
await vscode.workspace.openTextDocument(configResult.helloTsUri),
17-
await vscode.workspace.openTextDocument(configResult.testerTsUri)
17+
await vscode.workspace.openTextDocument(configResult.testerTsUri),
18+
await vscode.workspace.openTextDocument(configResult.helloJsonUri)
1819
]);
1920

2021
await Promise.all([

packages/examples/src/appPlayground/config.ts

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@ import getTitleBarServiceOverride from '@codingame/monaco-vscode-view-title-bar-
2121
import * as vscode from 'vscode';
2222

2323
// this is required syntax highlighting
24+
import '@codingame/monaco-vscode-javascript-default-extension';
25+
import '@codingame/monaco-vscode-json-default-extension';
26+
import '@codingame/monaco-vscode-json-language-features-default-extension';
2427
import '@codingame/monaco-vscode-search-result-default-extension';
2528
import '@codingame/monaco-vscode-typescript-basics-default-extension';
2629
import '@codingame/monaco-vscode-typescript-language-features-default-extension';
@@ -32,13 +35,15 @@ import { defaultHtmlAugmentationInstructions, defaultViewsInit, type MonacoVscod
3235
import { configureDefaultWorkerFactory } from 'monaco-languageclient/workerFactory';
3336
import helloTsCode from '../../resources/appPlayground/hello.ts?raw';
3437
import testerTsCode from '../../resources/appPlayground/tester.ts?raw';
38+
import helloJsonCode from '../../resources/appPlayground/hello.json?raw';
3539
import { createDefaultWorkspaceContent } from '../common/client/utils.js';
3640

3741
export type ConfigResult = {
3842
vscodeApiConfig: MonacoVscodeApiConfig;
3943
workspaceFileUri: vscode.Uri;
4044
helloTsUri: vscode.Uri;
4145
testerTsUri: vscode.Uri;
46+
helloJsonUri: vscode.Uri;
4247
};
4348

4449
export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResult> => {
@@ -123,6 +128,7 @@ export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResu
123128
const workspaceUri = vscode.Uri.file('/workspace');
124129
const helloTsUri = vscode.Uri.file('/workspace/hello.ts');
125130
const testerTsUri = vscode.Uri.file('/workspace/tester.ts');
131+
const helloJsonUri = vscode.Uri.file('/workspace/hello.json');
126132
const fileSystemProvider = new InMemoryFileSystemProvider();
127133
const textEncoder = new TextEncoder();
128134

@@ -135,13 +141,15 @@ export const configure = async (htmlContainer?: HTMLElement): Promise<ConfigResu
135141
await fileSystemProvider.mkdir(workspaceUri);
136142
await fileSystemProvider.writeFile(helloTsUri, textEncoder.encode(helloTsCode), options);
137143
await fileSystemProvider.writeFile(testerTsUri, textEncoder.encode(testerTsCode), options);
144+
await fileSystemProvider.writeFile(helloJsonUri, textEncoder.encode(helloJsonCode), options);
138145
await fileSystemProvider.writeFile(workspaceFileUri, textEncoder.encode(createDefaultWorkspaceContent('/workspace')), options);
139146
registerFileSystemOverlay(1, fileSystemProvider);
140147

141148
return {
142149
vscodeApiConfig,
143150
workspaceFileUri,
144151
helloTsUri,
145-
testerTsUri
152+
testerTsUri,
153+
helloJsonUri
146154
};
147155
};

vite.config.ts

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,19 @@ export const definedViteConfig = defineConfig({
8282
]
8383
},
8484
plugins: [
85+
{
86+
// For the *-language-features extensions which use SharedArrayBuffer
87+
name: 'configure-response-headers',
88+
apply: 'serve',
89+
configureServer: (server) => {
90+
server.middlewares.use((_req, res, next) => {
91+
res.setHeader('Cross-Origin-Embedder-Policy', 'credentialless')
92+
res.setHeader('Cross-Origin-Opener-Policy', 'same-origin')
93+
res.setHeader('Cross-Origin-Resource-Policy', 'cross-origin')
94+
next()
95+
})
96+
}
97+
},
8598
vsixPlugin(),
8699
react()
87100
],

0 commit comments

Comments
 (0)