mirror of
https://github.com/filecoin-project/slate.git
synced 2024-12-30 12:37:19 +03:00
353 lines
8.0 KiB
JavaScript
353 lines
8.0 KiB
JavaScript
import * as Constants from "~/common/constants";
|
|
|
|
import { css } from "@emotion/react";
|
|
|
|
/* prettier-ignore */
|
|
export const injectTooltipStyles = () =>
|
|
css`
|
|
.tippy-touch {
|
|
cursor: pointer !important;
|
|
}
|
|
|
|
.tippy-notransition {
|
|
transition: none !important;
|
|
}
|
|
|
|
.tippy-popper {
|
|
z-index: ${Constants.zindex.tooltip};
|
|
max-width: 400px;
|
|
perspective: 800px;
|
|
outline: 0;
|
|
transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1);
|
|
pointer-events: none;
|
|
}
|
|
|
|
.tippy-popper.html-template {
|
|
max-width: 96%;
|
|
max-width: calc(100% - 20px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="top"] [x-arrow] {
|
|
border-top: 7px solid ${Constants.system.white};
|
|
border-right: 7px solid transparent;
|
|
border-left: 7px solid transparent;
|
|
bottom: -7px;
|
|
margin: 0 9px;
|
|
}
|
|
|
|
.tippy-popper[x-placement^="top"] [data-animation="fade"].enter {
|
|
opacity: 1;
|
|
transform: translateY(-10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="top"] [data-animation="fade"].leave {
|
|
opacity: 0;
|
|
transform: translateY(-10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="bottom"] [x-arrow] {
|
|
border-bottom: 7px solid ${Constants.system.white};
|
|
border-right: 7px solid transparent;
|
|
border-left: 7px solid transparent;
|
|
top: -7px;
|
|
margin: 0 9px;
|
|
}
|
|
|
|
.tippy-popper[x-placement^="bottom"] [data-animation="fade"].enter {
|
|
opacity: 1;
|
|
transform: translateY(10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="bottom"] [data-animation="fade"].leave {
|
|
opacity: 0;
|
|
transform: translateY(10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="left"] [x-arrow] {
|
|
border-left: 7px solid ${Constants.system.white};
|
|
border-top: 7px solid transparent;
|
|
border-bottom: 7px solid transparent;
|
|
right: -7px;
|
|
margin: 6px 0;
|
|
}
|
|
|
|
.tippy-popper[x-placement^="left"] [data-animation="fade"].enter {
|
|
opacity: 1;
|
|
transform: translateX(-10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="left"] [data-animation="fade"].leave {
|
|
opacity: 0;
|
|
transform: translateX(-10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="right"] [x-arrow] {
|
|
border-right: 7px solid ${Constants.system.white};
|
|
border-top: 7px solid transparent;
|
|
border-bottom: 7px solid transparent;
|
|
left: -7px;
|
|
margin: 6px 0;
|
|
}
|
|
|
|
.tippy-popper[x-placement^="right"] [data-animation="fade"].enter {
|
|
opacity: 1;
|
|
transform: translateX(10px);
|
|
}
|
|
|
|
.tippy-popper[x-placement^="right"] [data-animation="fade"].leave {
|
|
opacity: 0;
|
|
transform: translateX(10px);
|
|
}
|
|
|
|
.tippy-tooltip {
|
|
font-family: ${Constants.font.text};
|
|
color: ${Constants.system.white};
|
|
background-color: ${Constants.system.pitchBlack};
|
|
position: relative;
|
|
border-radius: 4px;
|
|
font-size: 1rem;
|
|
padding: 12px;
|
|
text-align: center;
|
|
will-change: transform;
|
|
border: 1px solid transparent;
|
|
}
|
|
|
|
.tippy-tooltip[data-animatefill] {
|
|
overflow: hidden;
|
|
background-color: transparent;
|
|
}
|
|
|
|
.tippy-tooltip[data-interactive] {
|
|
pointer-events: auto;
|
|
}
|
|
|
|
.tippy-tooltip[data-inertia] {
|
|
transition-timing-function: cubic-bezier(0.53, 2, 0.36, 0.85);
|
|
}
|
|
|
|
.tippy-tooltip [x-arrow] {
|
|
position: absolute;
|
|
width: 0;
|
|
height: 0;
|
|
}
|
|
|
|
@media (max-width: 450px) {
|
|
.tippy-popper {
|
|
max-width: 96%;
|
|
max-width: calc(100% - 20px);
|
|
}
|
|
}
|
|
`;
|
|
|
|
/* prettier-ignore */
|
|
export const injectGlobalStyles = () => css`
|
|
@font-face {
|
|
font-family: 'mono';
|
|
src: url('/static/SFMono-Medium.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'mono-bold';
|
|
src: url('/static/SFMono-Bold.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'inter-regular';
|
|
src: url('/static/Inter-Regular.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'inter-semi-bold';
|
|
src: url('/static/Inter-SemiBold.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'inter-medium';
|
|
src: url('/static/Inter-Medium.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'fira-code-regular';
|
|
src: url('/static/FiraCode-Regular.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'fira-code-bold';
|
|
src: url('/static/FiraCode-Bold.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'jet-brains-regular';
|
|
src: url('/static/JetBrainsMono-Regular.woff');
|
|
}
|
|
|
|
@font-face {
|
|
font-family: 'jet-brains-bold';
|
|
src: url('/static/JetBrainsMono-Bold.woff');
|
|
}
|
|
|
|
html, body, div, span, applet, object, iframe,
|
|
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
|
|
a, abbr, acronym, address, big, cite, code,
|
|
del, dfn, em, img, ins, kbd, q, s, samp,
|
|
small, strike, strong, sub, sup, tt, var,
|
|
b, u, i, center,
|
|
dl, dt, dd, ol, ul, li,
|
|
fieldset, form, label, legend,
|
|
table, caption, tbody, tfoot, thead, tr, th, td,
|
|
article, aside, canvas, details, embed,
|
|
figure, figcaption, footer, header, hgroup,
|
|
menu, nav, output, ruby, section, summary,
|
|
time, mark, audio, video {
|
|
box-sizing: border-box;
|
|
margin: 0;
|
|
padding: 0;
|
|
border: 0;
|
|
vertical-align: baseline;
|
|
}
|
|
|
|
article, aside, details, figcaption, figure,
|
|
footer, header, hgroup, menu, nav, section {
|
|
display: block;
|
|
}
|
|
|
|
html, body {
|
|
background: ${Constants.system.foreground};
|
|
color: ${Constants.system.black};
|
|
font-size: 16px;
|
|
font-family: ${Constants.font.text};
|
|
scrollbar-width: none;
|
|
-ms-overflow-style: -ms-autohiding-scrollbar;
|
|
|
|
::-webkit-scrollbar {
|
|
display: none;
|
|
}
|
|
-webkit-font-feature-settings: "liga"1, "ss01"1, "zero"1, "cv11"1, 'frac'1, 'calt'1, 'tnum'1;
|
|
-moz-font-feature-settings: "liga"1, "ss01"1, "zero"1, "cv11"1, 'frac'1, 'calt'1, 'tnum'1;
|
|
-ms-font-feature-settings: "liga"1, "ss01"1, "zero"1, "cv11"1, 'frac'1, 'calt'1, 'tnum'1;
|
|
font-feature-settings: "liga"1, "ss01"1, "zero"1, "cv11"1, 'frac'1, 'calt'1, 'tnum'1;
|
|
}
|
|
`;
|
|
|
|
/* prettier-ignore */
|
|
export const injectCodeBlockStyles = () => css`
|
|
.language-javascript {
|
|
code,
|
|
pre {
|
|
color: #fff5b1;
|
|
text-shadow: 0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3;
|
|
font-family: ${Constants.font.code};
|
|
font-size: 12px;
|
|
text-align: left;
|
|
white-space: pre;
|
|
word-spacing: normal;
|
|
word-break: normal;
|
|
word-wrap: normal;
|
|
tab-size: 2;
|
|
hyphens: none;
|
|
}
|
|
|
|
/* Code blocks */
|
|
pre {
|
|
padding: none;
|
|
margin: none;
|
|
overflow: auto;
|
|
}
|
|
|
|
:not(pre) > code,
|
|
pre {
|
|
background: none;
|
|
}
|
|
|
|
/* Inline code */
|
|
:not(pre) > code {
|
|
padding: .1em;
|
|
border-radius: .3em;
|
|
white-space: normal;
|
|
}
|
|
|
|
.token.comment,
|
|
.token.block-comment,
|
|
.token.prolog,
|
|
.token.doctype,
|
|
.token.cdata {
|
|
color: #FF00FF;
|
|
}
|
|
|
|
.token.punctuation {
|
|
color: #ffd33d;
|
|
}
|
|
|
|
.token.tag,
|
|
.token.attr-name,
|
|
.token.namespace,
|
|
.token.number,
|
|
.token.unit,
|
|
.token.hexcode,
|
|
.token.deleted {
|
|
color: cyan;
|
|
}
|
|
|
|
.token.property,
|
|
.token.selector {
|
|
color: #ffdf5d;
|
|
text-shadow: 0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475;
|
|
}
|
|
|
|
.token.function-name {
|
|
color: #ffd33d;
|
|
}
|
|
|
|
.token.boolean,
|
|
.token.selector .token.id,
|
|
.token.class-name,
|
|
.token.function,
|
|
.token.constant,
|
|
.token.symbol {
|
|
color: #c8e1ff;
|
|
text-shadow: 0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975;
|
|
}
|
|
|
|
.token.important,
|
|
.token.atrule,
|
|
.token.keyword,
|
|
.token.selector .token.class,
|
|
.token.builtin {
|
|
color: #f9c513;
|
|
text-shadow: 0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575;
|
|
}
|
|
|
|
.token.string,
|
|
.token.char,
|
|
.token.attr-value,
|
|
.token.regex,
|
|
.token.variable {
|
|
color: #fff;
|
|
}
|
|
|
|
.token.operator,
|
|
.token.entity,
|
|
.token.url {
|
|
color: #f9c513;
|
|
}
|
|
|
|
.token.important,
|
|
.token.bold {
|
|
font-weight: 400;
|
|
font-family: ${Constants.font.codeBold};
|
|
}
|
|
|
|
.token.italic {
|
|
font-style: italic;
|
|
}
|
|
|
|
.token.entity {
|
|
cursor: help;
|
|
}
|
|
|
|
.token.inserted {
|
|
color: ${Constants.system.brand};
|
|
}
|
|
}
|
|
`;
|