VS Code preview Full workbench mockup using this variant's colors and tokenColors.
fetchUser.tssrc/components index.ts README.md
src
components fetchUser.ts Button.tsx Modal.tsx legacy.tsx fetch Config.tsindex.ts renamed.ts staged.ts removed.ts
vendor package.json broken.ts slow.ts tsconfig.json README.md package-lock.json 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
export interface User {
id: string ;
name: string ;
role: "admin" | "member" ;
tags: string [];
}
/**
* Fetch user data by ID
* @param id
* @returns User object or null if ID is invalid
*/
export async function fetchUser(id: string ): Promise < User | null > {
if (!id) {
return null ;
}
const response = await fetch( `/api/users/${ id }` , {
method: "GET" ,
headers: { Accept: "application/json" },
});
if (!response.ok) {
throw new Error( `HTTP ${ response . status }` );
}
return ( await response.json()) as User ;
}
function greet(user: User ): string {
// Simple greeting function that uses the user's name
return `Hello, ${ user . name }!` ;
}
Problems1
Output
Debug Console
Terminal
Ports
✓ fetchUser passed 12 blk
✗ Cannot find name 'user'. error ▲ warning 412 ready localhost
Ln 5, Col 12
Spaces: 2
UTF-8
LF
TypeScript
Bonsai
tokenColors Foregrounds this theme assigns to the token scope catalog. A rule with only a font style is skipped, and a longer matching scope wins. Italic and bold rules are not listed — the preview above shows them in the code.
scope HEX RGB RGBA comment
#D1D1D1 RGB(209, 209, 209) RGBA(209, 209, 209, 1) comment.block
#D1D1D1 RGB(209, 209, 209) RGBA(209, 209, 209, 1) comment.block.documentation
#D1D1D1 RGB(209, 209, 209) RGBA(209, 209, 209, 1) comment.line
#D1D1D1 RGB(209, 209, 209) RGBA(209, 209, 209, 1) constant
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) constant.character
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) constant.character.escape
#26B31A RGB(38, 179, 26) RGBA(38, 179, 26, 1) constant.numeric
#DB2EBE RGB(219, 46, 190) RGBA(219, 46, 190, 1) constant.numeric.integer
#DB2EBE RGB(219, 46, 190) RGBA(219, 46, 190, 1) constant.numeric.float
#DB2EBE RGB(219, 46, 190) RGBA(219, 46, 190, 1) constant.numeric.hex
#DB2EBE RGB(219, 46, 190) RGBA(219, 46, 190, 1) constant.numeric.octal
#DB2EBE RGB(219, 46, 190) RGBA(219, 46, 190, 1) constant.other
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) constant.other.placeholder
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) constant.regexp
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) constant.rgb-value
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity
#016AC0 RGB(1, 106, 192) RGBA(1, 106, 192, 1) entity.name
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.function
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.section
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.tag
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.type
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.type.enum
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.type.interface
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.name.type.struct
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.other
#016AC0 RGB(1, 106, 192) RGBA(1, 106, 192, 1) entity.other.attribute-name
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) entity.other.inherited-class
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.control
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.control.flow
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.operator
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.operator.new
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.operator.assignment
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.operator.arithmetic
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.operator.logical
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) keyword.other
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) markup
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) markup.deleted
#FFF3EE RGB(255, 243, 238) RGBA(255, 243, 238, 1) markup.heading
#016AC0 RGB(1, 106, 192) RGBA(1, 106, 192, 1) markup.inserted
#EEFFF8 RGB(238, 255, 248) RGBA(238, 255, 248, 1) markup.quote
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) meta
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) meta.preprocessor
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) meta.tag
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) punctuation.separator
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) storage
#70727E RGB(112, 114, 126) RGBA(112, 114, 126, 1) storage.modifier
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) storage.type
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) string
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.interpolated
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.other
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.quoted
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.quoted.double
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.quoted.other
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.quoted.single
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.quoted.triple
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.regexp
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.template
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) string.unquoted
#016AC9 RGB(1, 106, 201) RGBA(1, 106, 201, 1) support
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.class
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.constant
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.function
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.type
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.type.primitive
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.type.property-name
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) support.variable
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.function
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.language
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.name
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.other
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.other.constant
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.other.property
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.other.readwrite
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1) variable.parameter
#000000 RGB(0, 0, 0) RGBA(0, 0, 0, 1)