Everwinter
Publisher: woshThemes in package: 1
A wintery, mountain, forest vibe
A wintery, mountain, forest vibe
Full workbench mockup using this variant's colors and tokenColors.
Loading...
Workbench UI color keys from the theme JSON colors map.
TextMate scopes and font styles (syntax highlighting rules).
| scope | foreground | fontStyle |
|---|---|---|
| comment, punctuation.definition.comment | #6e948c | — |
| variable.parameter | #4e88ff | |
| constant | #ae85c9 | — |
| entity.name.function | #6a6152 | |
| string.quoted.double | #89c7a7 | italic |
| keyword.operator | #3b6eab | |
| entity.name.class | #9f72e3 | bold |
| keyword, storage.type.primitive | #9baf6f | |
| punctuation.separator, punctuation.terminator | #d6d6d6 | |
| meta.method.body.java, variable.parameter.java | #d6d6d6 | |
| storage.type.function.arrow.java | #3b6eab | |
| meta.package.java | #c6a7be | italic |
| storage.modifier.import.java | #9678bf | italic underline |
| variable.language.this.java | #4e88ff | |
| entity.name.class, entity.name.type.class.java, storage.type.object.array.java, storage.type.java, entity.other.inherited-class.java, storage.type.generic.java | #7a9adf | bold underline |
| entity.name.type.class.java, entity.name.type.enum.java | #7a9adf | bold underline |
| meta.function-call.java, meta.method-call.java | #d6d6d6 | |
| storage.modifier.java, storage.modifier.extends.java, keyword.other.import.java, keyword.control.java, keyword.control.new.java, keyword.control.try.java, keyword.control.catch.java, keyword.control.finally.java | #9baf6f | italic |
| storage.type.primitive.java, storage.type.primitive.array.java, storage.type.generic.wildcard.java | #9f72e3 | italic |
| meta.definition.variable.java, variable.other.object.property.java, meta.method.body.java, variable.other.object.java | #d6d6d6 | |
| punctuation.separator.period.java, punctuation.separator.delimiter.java, punctuation.terminator, punctuation.separator.java, keyword.control.ternary.java | #d6d6d6 | |
| storage.type.annotation.java, punctuation.definition.annotation.java | #868585 | |
| meta.function-call.python, support.function.magic.python, support.function.builtin.python | #6a6152 | |
| variable.language.special.self.python | #4e88ff | |
| entity.name.type.class.python | #7a9adf | bold underline |
| punctuation.separator.annotation.result.python, storage.type.function.lambda.python | #3b6eab | |
| meta.function.python, keyword.operator.logical.python, meta.class.python, punctuation.separator.colon.python, keyword.control.flow.python, keyword.control.import.python | #9baf6f | italic |
| punctuation.section.function.begin.python | #6a6152 | |
| punctuation.section.class.begin.python | #7a9adf | |
| support.type.python, storage.modifier.declaration.python | #9f72e3 | italic |
| punctuation.separator.period.python, punctuation.separator.arguments.python, punctuation.definition.decorator.python | #d6d6d6 | |
| meta.fstring.python | #d6d6d6 | italic |
| string.quoted.docstring.multi.python | #89c7a7 | italic |
| entity.name.function.decorator.python | #868585 | |
| variable.parameter.function.language.python, source.python, meta.function-call.arguments.python, meta.item-access.arguments.python, meta.function.parameters.python, meta.indexed-name.python | #d6d6d6 | |
| support.type.exception.python | #ab9f62 | |
| string.quoted.single.python | #89c7a7 | italic |
| entity.name.function.rust | #6a6152 | |
| meta.function.call.rust | #6a6152 | |
| punctuation.semi.rust | #d6d6d6 | |
| keyword.other.rust, keyword.control.rust, keyword.other.fn.rust | #9baf6f | italic |
| storage.type.rust, storage.modifier.mut.rust | #9f72e3 | italic |
| entity.name.type.rust, entity.name.type.trait.rust, entity.name.type.enum.rust, entity.name.type.struct.rust | #7a9adf | |
| variable.language.self.rust | #4e88ff | |
| variable.other.rust | #d6d6d6 | |
| entity.name.tag.vue | #ae85c9 | — |
| variable.parameter.vue | #4e88ff | |
| entity.name.tag.html | #6a6152 | — |
| entity.other.attribute-name.html | #89c7a7 | — |
| entity.name.tag.css | #d6d6d6 | italic |
| entity.name.selector.css | #4e88ff | |
| support.type.property-name.css | #6e948c | — |
| constant.other.css | #9baf6f | — |
| support.function.misc.css, support.function.transform.css | #6a6152 | — |
| entity.name.tag.css, entity.name.tag.wildcard.css, entity.other.attribute-name.class.css | #d6d6d6 | italic |
| string.quoted.double.json | #65a9f1 | |
| punctuation.section.braces.begin.json, punctuation.section.braces.end.json | #76f4d8 | |
| entity.name.function.javascript | #6a6152 | |
| variable.other.javascript | #4e88ff | — |
| entity.name.type.class.javascript, entity.name.type.class.js | #7a9adf | bold underline |
| support.class.promise.js, entity.other.inherited-class.js | #7a9adf | bold underline |
| storage.type.class.js, storage.type.function.js, keyword.control.flow.js, keyword.control.conditional.js, keyword.control.trycatch.js, storage.modifier.js, storage.modifier.async.js, keyword.control.loop.js | #9baf6f | italic |
| keyword.operator.new.js, keyword.operator.expression.typeof.js, storage.type.js | #9f72e3 | italic |
| string.template.js, string.quoted.single.js, punctuation.definition.string.begin.js | #89c7a7 | italic |
| punctuation.accessor.js, punctuation.terminator.statement.js, punctuation.separator.comma.js | #d6d6d6 | |
| storage.type.function.arrow.js | #3b6eab | |
| variable.other.readwrite.js, variable.other.property.js, variable.other.object.js, variable.parameter.js | #d6d6d6 | |
| variable.language.this.js | #4e88ff | |
| entity.name.function.c, entity.name.function.cpp, keyword.operator.sizeof.c, entity.name.function.preprocessor.c | #6a6152 | |
| source.c, variable.other.c, variable.parameter.preprocessor.c, meta.function.definition.parameters.c, variable.parameter.probably.c | #d6d6d6 | |
| entity.name.function.preprocessor.c | #4e88ff | — |
| keyword.control.c, storage.modifier.c, keyword.other.typedef.c, keyword.control.directive.define.c, keyword.control.directive.include.c | #9baf6f | italic |
| storage.type.built-in.primitive.c, storage.type.struct.c, storage.type.enum.c | #9f72e3 | italic |
| punctuation.separator.pointer-access.c | #3b6eab | |
| string.quoted.other.lt-gt.include.c | #9678bf | |
| entity.name.function.cpp, meta.function.call.cpp, support.function.cpp | #6a6152 | |
| variable.other.cpp, variable.other.member.cpp, variable.other.object.cpp | #4e88ff | — |
| keyword.control.cpp, keyword.operator.new.cpp, keyword.operator.delete.cpp, keyword.operator.cast.cpp, keyword.other.using.cpp, storage.modifier.cpp, keyword.other.typedef.cpp | #9baf6f | italic |
| storage.type.built-in.primitive.cpp, storage.type.cpp, storage.type.class.cpp, storage.type.struct.cpp, storage.type.enum.cpp, storage.type.union.cpp | #9f72e3 | italic |
| entity.name.class.cpp, entity.name.type.cpp, entity.name.type.class.cpp, entity.name.struct.cpp, entity.name.enum.cpp, entity.name.union.cpp | #9f72e3 | bold |
| entity.name.namespace.cpp, entity.name.scope-resolution.cpp | #ae85c9 | |
| keyword.operator.cpp, punctuation.separator.pointer-access.cpp, punctuation.separator.scope-resolution.cpp, keyword.operator.arithmetic.cpp, keyword.operator.comparison.cpp, keyword.operator.bitwise.shift.cpp, storage.modifier.reference.cpp | #3b6eab | |
| string.quoted.other.lt-gt.include.cpp, keyword.control.directive.include.cpp | #9678bf | |
| keyword.control.directive.cpp, keyword.control.directive.define.cpp, keyword.control.directive.conditional.cpp | #9baf6f | italic |
| storage.type.template.cpp, keyword.other.template.cpp, entity.name.type.template.cpp | #ae85c9 | italic |
| variable.language.this.cpp | #9baf6f | italic |
| constant.language.cpp, constant.language.nullptr.cpp | #ae85c9 | — |
| entity.name.function.csharp | #6a6152 | |
| entity.name.type.class.csharp, entity.name.type.class.cs, entity.name.type.cs, entity.name.type.interface.cs, entity.name.type.namespace.cs, entity.name.variable.property.cs, entity.name.type.type-parameter.cs, entity.name.type.struct.cs | #7a9adf | bold underline |
| keyword.operator.csharp, keyword.control.csharp, keyword.other.directive.using.cs, storage.modifier.public.cs, storage.modifier.abstract.cs, storage.modifier.override.cs, storage.modifier.static.cs, storage.modifier.async.cs | #9baf6f | italic |
| storage.type.interface.cs, storage.type.namespace.cs, storage.type.class.cs, storage.type.struct.cs, keyword.type.string.cs, keyword.type.void.cs, storage.type.var.cs, keyword.type.int.cs | #9f72e3 | italic |
| variable.other.readwrite.cs | #d6d6d6 | |
| markup.heading.markdown | #ae85c9 | bold |
| markup.underline.link.markdown | #4e88ff | — |
| markup..markdown | #6e948c | |
| markup.italic.markdown | #89c7a7 | italic |
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}!`;
}