mirror of
https://github.com/zed-industries/zed.git
synced 2025-01-04 23:31:57 +00:00
8b33a58076
Co-Authored-By: Nate Butler <1714999+iamnbutler@users.noreply.github.com>
133 lines
2.9 KiB
TypeScript
133 lines
2.9 KiB
TypeScript
import { backgroundColor, border, iconColor, text } from "./components";
|
|
import Theme from "./theme";
|
|
|
|
export default function workspace(theme: Theme) {
|
|
const signInPrompt = {
|
|
...text(theme, "sans", "secondary"),
|
|
size: 13,
|
|
underline: true,
|
|
padding: {
|
|
right: 8,
|
|
},
|
|
};
|
|
|
|
const tab = {
|
|
height: 34,
|
|
iconClose: iconColor(theme, "secondary"),
|
|
iconCloseActive: iconColor(theme, "active"),
|
|
iconConflict: iconColor(theme, "warning"),
|
|
iconDirty: iconColor(theme, "info"),
|
|
iconWidth: 8,
|
|
spacing: 10,
|
|
text: text(theme, "mono", "secondary"),
|
|
border: border(theme, "primary", {
|
|
left: true,
|
|
bottom: true,
|
|
overlay: true,
|
|
}),
|
|
padding: {
|
|
left: 12,
|
|
right: 12,
|
|
},
|
|
};
|
|
|
|
const activeTab = {
|
|
...tab,
|
|
background: backgroundColor(theme, 300),
|
|
text: text(theme, "mono", "primary"),
|
|
border: {
|
|
...tab.border,
|
|
bottom: false,
|
|
},
|
|
};
|
|
|
|
const sidebarItem = {
|
|
height: "$workspace.tab.height",
|
|
iconColor: "$text.muted.color",
|
|
iconSize: 18,
|
|
};
|
|
const sidebar = {
|
|
width: 30,
|
|
border: border(theme, "primary", { right: true }),
|
|
item: sidebarItem,
|
|
activeItem: {
|
|
...sidebarItem,
|
|
iconColor: iconColor(theme, "primary"),
|
|
},
|
|
resizeHandle: {
|
|
background: border(theme, "primary").color,
|
|
padding: {
|
|
left: 1,
|
|
},
|
|
},
|
|
};
|
|
|
|
return {
|
|
background: backgroundColor(theme, 500),
|
|
leaderBorderOpacity: 0.7,
|
|
leaderBorderWidth: 2.0,
|
|
tab,
|
|
activeTab,
|
|
leftSidebar: {
|
|
...sidebar,
|
|
border: border(theme, "primary", { right: true }),
|
|
},
|
|
rightSidebar: {
|
|
...sidebar,
|
|
border: border(theme, "primary", { left: true }),
|
|
},
|
|
paneDivider: {
|
|
color: border(theme, "primary").color,
|
|
width: 1,
|
|
},
|
|
status_bar: {
|
|
height: 24,
|
|
itemSpacing: 8,
|
|
padding: {
|
|
left: 6,
|
|
right: 6,
|
|
},
|
|
cursorPosition: text(theme, "sans", "muted"),
|
|
diagnosticMessage: text(theme, "sans", "muted"),
|
|
lspMessage: text(theme, "sans", "muted"),
|
|
},
|
|
titlebar: {
|
|
avatarWidth: 18,
|
|
height: 32,
|
|
shareIconColor: iconColor(theme, "secondary"),
|
|
shareIconActiveColor: iconColor(theme, "active"),
|
|
title: text(theme, "sans", "primary"),
|
|
avatar: {
|
|
cornerRadius: 10,
|
|
border: {
|
|
color: "#00000088",
|
|
width: 1,
|
|
},
|
|
},
|
|
avatarRibbon: {
|
|
height: 3,
|
|
width: 12,
|
|
},
|
|
border: border(theme, "primary", { bottom: true }),
|
|
signInPrompt,
|
|
hoveredSignInPrompt: {
|
|
...signInPrompt,
|
|
...text(theme, "mono", "active"),
|
|
},
|
|
offlineIcon: {
|
|
color: iconColor(theme, "muted"),
|
|
width: 16,
|
|
padding: {
|
|
right: 4,
|
|
},
|
|
},
|
|
outdatedWarning: {
|
|
...text(theme, "sans", "muted"),
|
|
size: 13,
|
|
},
|
|
},
|
|
toolbar: {
|
|
height: 44,
|
|
},
|
|
};
|
|
}
|