Pigs in Space
Publisher: kreekThemes in package: 1
A dark color theme designed to be easy on the eyes. Inspired by Solarized with a pastel twist.
A dark color theme designed to be easy on the eyes. Inspired by Solarized with a pastel twist.
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, string.quoted.docstring, string.quoted.docstring.multi.python, string.quoted.docstring.single.python, punctuation.definition.string.begin.python, punctuation.definition.string.end.python | #526057 | italic |
| variable, string constant.other.placeholder | #90A0B1 | — |
| constant.other.color | #ffffff | — |
| invalid, invalid.illegal | #FF5370 | — |
| keyword, storage.type, storage.modifier | #A2758A | — |
| keyword.control, constant.other.color, punctuation, meta.tag, punctuation.definition.tag, punctuation.separator.inheritance.php, punctuation.definition.tag.html, punctuation.definition.tag.begin.html, punctuation.definition.tag.end.html, keyword.other.template, keyword.other.substitution | #A2758A | — |
| punctuation.section.embedded | #6D854E | — |
| punctuation | #A9B7C6 | — |
| entity.name.tag, meta.tag.sgml, markup.deleted.git_gutter | #f07178 | — |
| entity.name.function, meta.function-call, variable.function, keyword.other.special-method | #FFC66D | — |
| support.function | #cccccc | — |
| meta.block variable.other | #A9B7C6 | — |
| support.other.variable, string.other.link | #f07178 | — |
| constant.numeric | #e87366 | — |
| constant.language, support.constant, constant.character, constant.escape, keyword.other.unit, keyword.other | #4C9C9D | — |
| constant.language.boolean | #A2758A | — |
| variable.parameter, variable.other.block.ruby | #DFD890 | — |
| string, constant.other.symbol, constant.other.key, markup.heading, markup.inserted.git_gutter, meta.group.braces.curly constant.other.object.key.js string.unquoted.label.js, string.quoted.single.ruby, punctuation.definition.string.begin.ruby, punctuation.definition.string.end.ruby | #A5C25C | — |
| support.type, support.class, support.other.namespace.use.php, meta.use.php, support.other.namespace.php, markup.changed.git_gutter, support.type.sys-types | #899CAA | — |
| support.type | #B2CCD6 | — |
| source.css support.type.property-name, source.sass support.type.property-name, source.scss support.type.property-name, source.less support.type.property-name, source.stylus support.type.property-name, source.postcss support.type.property-name | #B2CCD6 | — |
| entity.name.module.js, variable.import.parameter.js, variable.other.class.js | #FF5370 | — |
| variable.language | #F4CDCF | — |
| entity.name.method.js | #82AAFF | italic |
| meta.class-method.js entity.name.function.js, variable.function.constructor | #82AAFF | — |
| entity.other.attribute-name | #C792EA | — |
| text.html.basic entity.other.attribute-name.html, text.html.basic entity.other.attribute-name | #FFCB6B | italic |
| entity.other.attribute-name.class | #FFCB6B | — |
| source.sass keyword.control | #82AAFF | — |
| markup.inserted | #C3E88D | — |
| markup.deleted | #FF5370 | — |
| markup.changed | #C792EA | — |
| string.regexp | #F4CDCF | — |
| constant.character.escape | #CC7832 | — |
| string.other.link, markup.underline.link | — | underline |
| tag.decorator.js entity.name.tag.js, tag.decorator.js punctuation.definition.tag.js | #82AAFF | italic |
| source.js constant.other.object.key.js string.unquoted.label.js | #FF5370 | italic |
| source.json support.type.property-name | #4C9C9D | — |
| text.html.markdown, punctuation.definition.list_item.markdown | #EEFFFF | — |
| text.html.markdown markup.inline.raw.markdown | #C792EA | — |
| text.html.markdown markup.inline.raw.markdown punctuation.definition.raw.markdown | #65737E | — |
| markdown.heading, markup.heading, markup.heading entity.name, markup.heading.markdown punctuation.definition.heading.markdown | #C3E88D | — |
| markup.italic | #f07178 | italic |
| markup.bold, markup.bold string | #f07178 | bold |
| markup.bold markup.italic, markup.italic markup.bold, markup.quote markup.bold, markup.bold markup.italic string, markup.italic markup.bold string, markup.quote markup.bold string | #f07178 | bold |
| markup.underline | #F78C6C | underline |
| markup.quote punctuation.definition.blockquote.markdown | #65737E | — |
| markup.quote | — | italic |
| string.other.link.title.markdown | #82AAFF | — |
| string.other.link.description.title.markdown | #C792EA | — |
| constant.other.reference.link.markdown | #FFCB6B | — |
| markup.raw.block | #C792EA | — |
| markup.raw.block.fenced.markdown | #00000050 | — |
| punctuation.definition.fenced.markdown | #00000050 | — |
| markup.raw.block.fenced.markdown, variable.language.fenced.markdown, punctuation.section.class.end | #EEFFFF | — |
| variable.language.fenced.markdown | #65737E | — |
| meta.separator | #65737E | bold |
| markup.table | #EEFFFF | — |
| variable.other.readwrite.instance.ruby, punctuation.definition.variable.ruby, constant.language.symbol.hashkey.ruby, punctuation.definition.constant.ruby, entity.name.function.decorator.python | #55A2A0 | — |
| punctuation.section.regexp.ruby | #F4908A | — |
| punctuation.separator.key-value | #FF852B | — |
| variable.other.readwrite.class.ruby, punctuation.definition.constant.hashkey.ruby | #4C9C9D | — |
| keyword.operator.assignment.ruby, keyword.operator.assignment.augmented.ruby, keyword.operator.other.ruby, keyword.operator.comparison.ruby, keyword.operator.arithmetic.ruby, keyword.operator.logical.ruby, punctuation.section.array.begin.ruby, punctuation.section.array.end.ruby, punctuation.section.scope.begin.ruby, punctuation.section.scope.end.ruby | #90A0B1 | — |
| constant.language.symbol.hashkey.ruby | #4C9C9D | — |
| punctuation.section.block.begin, punctuation.section.block.end, punctuation.definition.block | #90A0B1 | — |
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}!`;
}