Tamp
Publisher: tamp-workshopThemes in package: 6
Six cinematic themes: three identities, night and day.
Six cinematic themes: three identities, night and day.
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, comment.line, comment.line.double-slash, comment.line.double-dash, comment.line.number-sign, comment.block, punctuation.definition.comment | #9088A0 | italic |
| comment.block.documentation, comment.line.documentation, comment.block.documentation.rust, comment.line.documentation.rust | #9088A0 | italic |
| comment.line.shebang, punctuation.definition.comment.shebang | #C88E60 | italic |
| string, string.quoted.single, string.quoted.double, string.quoted.triple, string.quoted.backtick, string.unquoted, string.template, string.quoted.raw, string.quoted.raw.rust | #E2B07C | — |
| constant.character.escape, constant.character.unicode.escape, punctuation.definition.escape | #C88E60 | — |
| meta.interpolation, punctuation.section.interpolation, punctuation.definition.template-expression, meta.template.expression, meta.embedded.expression, punctuation.section.interpolation.begin.python, punctuation.section.interpolation.end.python, meta.interpolation.python | #eeedf2 | — |
| meta.interpolation.cs, punctuation.section.interpolation.begin.cs, punctuation.section.interpolation.end.cs, meta.string.interpolated.cs | #eeedf2 | — |
| constant.character.format.placeholder.other.python, storage.type.format.python, constant.other.placeholder.rust | #7cc5c4 | — |
| string.regexp, string.regex, meta.regexp, constant.other.character-class.regexp, keyword.control.anchor.regexp | #E2B07C | — |
| string.quoted.double.block.python, string.quoted.single.block.python | #9088A0 | italic |
| string.unquoted.heredoc, keyword.operator.heredoc | #E2B07C | — |
| constant.numeric, constant.numeric.integer, constant.numeric.decimal, constant.numeric.hex, constant.numeric.binary, constant.numeric.float, constant.numeric.octal, constant.decimal, constant.numeric.rust, constant.numeric.c, constant.numeric.sql | #68BCBA | — |
| constant.language.boolean, constant.language.true, constant.language.false | #68BCBA | — |
| constant.language.null, constant.language.nil, constant.language.none, constant.language.undefined, constant.language.nan | #68BCBA | — |
| constant.other.caps, variable.other.constant, constant.other.rust, variable.other.enummember | #68BCBA | — |
| keyword.other.unit, keyword.other.unit.px.css, keyword.other.unit.em.css, keyword.other.unit.rem.css, constant.numeric.suffix | #68BCBA | — |
| keyword, keyword.other, keyword.reserved, keyword.control.go, keyword.control.java, keyword.control.cpp, keyword.control.cs, keyword.control.ts, keyword.operator.ts, keyword.other.go, keyword.other.java, keyword.other.cs, keyword.query.cs, keyword.type.go | #D07878 | bold |
| keyword.control, keyword.control.conditional, keyword.control.loop, keyword.control.flow, keyword.control.c, keyword.control.rust, keyword.control.exception, keyword.control.trycatch, keyword.control.conditional.python, keyword.control.flow.python | #D07878 | bold |
| keyword.control.import, keyword.control.from, keyword.other.import, keyword.other.use.rust, keyword.control.import.python, keyword.import.go, keyword.package.go, keyword.other.import.java, keyword.control.using.cs, keyword.control.namespace.cs | #D07878 | bold |
| keyword.control.return, keyword.control.yield, keyword.control.await, keyword.control.async, keyword.other.async, keyword.control.return.go, keyword.control.return.java, keyword.control.return.cs, keyword.control.return.cpp | #D07878 | bold |
| keyword.operator.logical.python, keyword.operator.word, keyword.operator.new, keyword.operator.typeof, keyword.operator.instanceof, keyword.operator.in, keyword.operator.is, keyword.operator.delete, keyword.operator.void, keyword.operator.expression.in, keyword.operator.expression.typeof, keyword.operator.expression.instanceof | #D07878 | bold |
| keyword.other.sql, keyword.other.DML.sql, keyword.other.DDL.sql, keyword.other.DCL.sql, keyword.other.create.sql, keyword.other.drop.sql, keyword.other.table.sql, keyword.reserved.sql, keyword.other.data-manipulation.sql | #D07878 | bold |
| keyword.control.shell, keyword.control.bash, keyword.reserved.shell, keyword.other.shell | #D07878 | bold |
| storage, storage.type, storage.type.function, storage.type.function.python, storage.type.class, storage.type.struct, storage.type.enum, storage.type.interface, storage.type.trait, storage.type.c, storage.type.rust, storage.type.let, storage.type.const, storage.type.var, storage.type.go, storage.type.java, storage.type.cpp, storage.type.cs, storage.type.ts, storage.type.tsx, storage.type.type.ts, storage.type.interface.ts, storage.type.class.ts, storage.type.function.ts, storage.type.function.go | #D07878 | bold |
| storage.modifier, storage.modifier.static, storage.modifier.async, storage.modifier.abstract, storage.modifier.override, storage.modifier.mut, storage.modifier.ref, storage.modifier.pub, storage.modifier.visibility, storage.modifier.java, storage.modifier.cpp, storage.modifier.cs, storage.modifier.ts, storage.modifier.tsx, storage.modifier.async.ts, storage.modifier.async.tsx | #76A8C8 | bold |
| storage.modifier.lifetime.rust, entity.name.lifetime.rust, punctuation.definition.lifetime.rust | #C88E60 | italic |
| entity.name.function, entity.name.function.definition, meta.function entity.name.function, entity.name.function.go, entity.name.function.java, entity.name.function.cpp, entity.name.function.cs, entity.name.function.ts, entity.name.function.tsx, entity.name.function.js | #8CA870 | — |
| meta.function-call entity.name.function, meta.function-call.generic entity.name.function, variable.function, entity.name.function.go, entity.name.function.java, entity.name.function.cpp, entity.name.function.cs, entity.name.function.ts, entity.name.function.tsx, entity.name.function.js | #8CA870 | — |
| support.function, support.function.builtin, support.function.magic, support.function.magic.python, support.function.misc.python, support.function.builtin.shell, support.function.builtin.bash, support.function.posix | #C88E60 | — |
| support.function.magic.python, entity.name.function.magic.python | #8CA870 | italic |
| meta.decorator, entity.name.function.decorator, entity.name.function.decorator.python, punctuation.definition.decorator.python, meta.attribute.rust, entity.name.attribute.rust, punctuation.definition.attribute.rust, keyword.other.attribute | #C88E60 | italic |
| storage.type.annotation.java, entity.name.type.annotation.java, punctuation.definition.annotation.java | #C88E60 | italic |
| entity.name.function.macro, entity.name.function.macro.rules, support.macro, meta.macro, variable.macro, entity.name.function.macro.bang.rust | #68BCBA | italic |
| meta.preprocessor, meta.preprocessor.c, meta.preprocessor.cpp, keyword.control.directive, keyword.control.directive.include, keyword.control.directive.define, keyword.control.directive.pragma, keyword.control.directive.conditional, keyword.control.directive.line, keyword.control.directive.undef, keyword.control.directive.ifdef, keyword.control.directive.ifndef, keyword.control.directive.endif | #D07878 | italic |
| string.quoted.other.lt-gt.include.c, string.quoted.other.lt-gt.include.cpp, punctuation.definition.string.begin.c, punctuation.definition.string.end.c | #E2B07C | — |
| support.function.sql, support.function.aggregate.sql, support.function.scalar.sql, support.function.string.sql, support.function.datetime.sql, entity.name.function.sql | #8CA870 | — |
| entity.name.function.shell, storage.modifier.shell function | #8CA870 | — |
| entity.name.type, entity.name.class, entity.name.type.class, entity.name.struct, entity.name.type.struct, entity.name.union, entity.name.enum, entity.name.type.enum, support.type, support.class, entity.name.class.go, entity.name.class.java, entity.name.class.cpp, entity.name.class.cs, entity.name.class.ts, entity.name.class.tsx, entity.name.type.go, entity.name.type.ts, entity.name.type.tsx, entity.name.type.java, entity.name.type.cs, entity.name.type.alias.ts, support.type.builtin.go, support.class.java, support.type.java, support.class.cs | #76A8C8 | italic |
| entity.name.interface, entity.name.type.interface, entity.name.type.trait, entity.name.type.protocol, support.type.protocol, entity.name.interface.go, entity.name.type.interface.ts, entity.name.type.interface.tsx | #76A8C8 | italic |
| support.type.primitive, support.type.builtin, keyword.type, storage.type.boolean, storage.type.string, storage.type.numeric, storage.type.c, storage.type.posix-reserved.c | #76A8C8 | italic |
| entity.name.type.parameter, meta.type.parameters, storage.type.generic | #76A8C8 | italic |
| keyword.operator.type.annotation.ts, keyword.operator.type.annotation.tsx, punctuation.separator.key-value.ts | #746E80 | — |
| storage.type.sql, entity.name.type.sql, support.type.sql, keyword.other.data-type.sql | #76A8C8 | — |
| entity.name.namespace, entity.name.module, support.module | #9E98AA | italic |
| variable, variable.other, variable.other.readwrite, variable.other.local, variable.other.block, variable.other.c, variable.other.rust, variable.other.go, variable.other.java, variable.other.cpp, variable.other.cs, variable.other.ts, variable.other.tsx, variable.other.readwrite.js, variable.other.readwrite.ts, variable.other.readwrite.tsx | #DDDCE6 | — |
| variable.parameter, variable.parameter.python, variable.parameter.c, variable.parameter.rust, variable.parameter.function-call, variable.parameter.go, variable.parameter.java, variable.parameter.cpp, variable.parameter.cs, variable.parameter.ts, variable.parameter.tsx | #9E98AA | italic |
| variable.other.property, variable.other.member, variable.other.object.property, entity.name.field, variable.other.member.c, variable.other.property.go, variable.other.property.ts, variable.other.property.tsx, variable.other.property.java, variable.other.member.cpp, variable.other.object.property.ts | #9E98AA | — |
| variable.language, variable.language.this, variable.language.self, variable.language.super, variable.language.special.self.python, variable.language.special.cls.python, variable.parameter.function.language.special.self.python | #C88E60 | italic |
| variable.other.normal.shell, variable.other.special.shell, variable.other.positional.shell, variable.other.bracket.shell, variable.other.readonly.shell, variable.other.global.shell, variable.other.local.shell, variable.other.modify.shell | #68BCBA | — |
| punctuation.definition.variable.shell, punctuation.section.parameter.shell | #746E80 | — |
| constant.other.table-name.sql, constant.other.database-name.sql, constant.other.column-name.sql | #9E98AA | — |
| variable.other.substitution.sql, variable.placeholder.sql, keyword.other.named-query.sql | #68BCBA | — |
| keyword.operator, keyword.operator.arithmetic, keyword.operator.assignment, keyword.operator.comparison, keyword.operator.logical, keyword.operator.bitwise, keyword.operator.arrow, keyword.operator.pipe, keyword.operator.range, keyword.operator.c, keyword.operator.rust, keyword.operator.type, keyword.operator.question-mark, keyword.operator.logical.shell, keyword.operator.redirect.shell, keyword.operator.pipe.shell, keyword.operator.assignment.shell, keyword.operator.comparison.sql, keyword.operator.logical.sql, keyword.operator.arithmetic.sql | #746E80 | — |
| punctuation, punctuation.separator, punctuation.terminator, punctuation.accessor, punctuation.definition.parameters | #746E80 | — |
| punctuation.section.block.begin, punctuation.section.block.end, punctuation.definition.parameters.begin, punctuation.definition.parameters.end, punctuation.section.brackets.begin, punctuation.section.brackets.end, punctuation.section.parens.begin, punctuation.section.parens.end, punctuation.section.function-call.begin, punctuation.section.function-call.end | #746E80 | — |
| entity.name.tag, entity.name.tag.html, entity.name.tag.xml, entity.name.tag.jsx, entity.name.tag.tsx | #D07878 | italic |
| entity.other.attribute-name, entity.other.attribute-name.html, entity.other.attribute-name.jsx, entity.other.attribute-name.tsx | #8CA870 | italic |
| constant.character.entity, punctuation.definition.entity | #68BCBA | — |
| punctuation.definition.tag, punctuation.definition.tag.begin, punctuation.definition.tag.end, punctuation.definition.tag.html, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, punctuation.definition.tag.begin.js, punctuation.definition.tag.end.js, punctuation.definition.tag.begin.tsx, punctuation.definition.tag.end.tsx | #746E80 | — |
| meta.tag.metadata.doctype.html, entity.name.tag.doctype.html, entity.other.attribute-name.doctype.html, constant.other.doctype.html | #9E98AA | italic |
| support.type.property-name.css, support.type.property-name.scss, support.type.property-name.less, source.css entity.other.attribute-name | #8CA870 | — |
| support.constant.property-value.css, support.constant.property-value.scss, support.constant.font-name.css | #E2B07C | — |
| entity.other.attribute-name.class.css, entity.other.attribute-name.id.css, entity.other.attribute-name.pseudo-class.css, entity.other.attribute-name.pseudo-element.css | #C88E60 | — |
| keyword.control.at-rule.css, keyword.control.at-rule.scss, punctuation.definition.keyword.css | #D07878 | italic |
| entity.name.tag.css, entity.name.tag.wildcard.css, entity.name.tag.reference.css, entity.name.tag.scss | #D07878 | — |
| variable.css, variable.other.custom-property.css, support.type.custom-property.css, entity.other.custom-property.css, support.type.property-name.custom-property.css, variable.other.custom-property.scss | #68BCBA | — |
| keyword.operator.combinator.css, keyword.operator.css, punctuation.separator.list.comma.css, punctuation.terminator.rule.css | #746E80 | — |
| variable.scss, variable.other.scss, variable.other.less, variable.declaration.scss | #68BCBA | — |
| constant.other.color.rgb-value.css, support.constant.color | #68BCBA | — |
| support.type.property-name.json, meta.object-literal.key | #8CA870 | — |
| entity.name.variable.field.go | #9E98AA | — |
| entity.name.tag.yaml, string.unquoted.plain.out.yaml | #8CA870 | — |
| support.type.property-name.toml, variable.key.toml | #8CA870 | — |
| entity.name.section.toml, punctuation.definition.table.toml | #76A8C8 | — |
| variable.other.alias.yaml, entity.name.type.anchor.yaml, punctuation.definition.alias.yaml | #C88E60 | — |
| markup.heading, markup.heading.setext, entity.name.section.markdown | #ffffff | bold |
| punctuation.definition.heading.markdown | #C88E60 | — |
| markup.bold | #f9f9fb | bold |
| markup.italic | #E2B07C | italic |
| markup.strikethrough | #746E80 | strikethrough |
| markup.inline.raw, markup.inline.raw.string | #ebeaf0 | — |
| markup.fenced_code, markup.raw.block | #ebeaf0 | — |
| string.other.link.title.markdown, meta.link.inline.markdown | #8CA870 | — |
| markup.underline.link, markup.underline.link.image | #76A8C8 | underline |
| markup.quote, punctuation.definition.blockquote.markdown | #726A7A | italic |
| punctuation.definition.list.begin.markdown | #C88E60 | — |
| markup.inserted | #8CA870 | — |
| markup.deleted | #D07878 | — |
| markup.changed | #76A8C8 | — |
| meta.diff.header, meta.diff.range | #B49AE0 | bold |
| invalid, invalid.illegal | #e4b4b4 | bold underline |
| invalid.deprecated | #746E80 | strikethrough |
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}!`;
}