style.css 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257
  1. :root {
  2. /* Light */
  3. --light-color-background: #f2f4f8;
  4. --light-color-background-secondary: #eff0f1;
  5. --light-color-icon-background: var(--light-color-background);
  6. --light-color-accent: #c5c7c9;
  7. --light-color-text: #222;
  8. --light-color-text-aside: #707070;
  9. --light-color-link: #4da6ff;
  10. --light-color-ts: #db1373;
  11. --light-color-ts-interface: #139d2c;
  12. --light-color-ts-enum: #9c891a;
  13. --light-color-ts-class: #2484e5;
  14. --light-color-ts-function: #572be7;
  15. --light-color-ts-namespace: #b111c9;
  16. --light-color-ts-private: #707070;
  17. --light-color-ts-variable: #4d68ff;
  18. --light-external-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' width='10' height='10'><path fill-opacity='0' stroke='%23000' stroke-width='10' d='m43,35H5v60h60V57M45,5v10l10,10-30,30 20,20 30-30 10,10h10V5z'/></svg>");
  19. --light-color-scheme: light;
  20. /* Dark */
  21. --dark-color-background: #2b2e33;
  22. --dark-color-background-secondary: #1e2024;
  23. --dark-color-icon-background: var(--dark-color-background-secondary);
  24. --dark-color-accent: #9096a2;
  25. --dark-color-text: #f5f5f5;
  26. --dark-color-text-aside: #dddddd;
  27. --dark-color-link: #00aff4;
  28. --dark-color-ts: #ff6492;
  29. --dark-color-ts-interface: #6cff87;
  30. --dark-color-ts-enum: #f4d93e;
  31. --dark-color-ts-class: #61b0ff;
  32. --dark-color-ts-function: #9772ff;
  33. --dark-color-ts-namespace: #e14dff;
  34. --dark-color-ts-private: #e2e2e2;
  35. --dark-color-ts-variable: #4d68ff;
  36. --dark-external-icon: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' width='10' height='10'><path fill-opacity='0' stroke='%23fff' stroke-width='10' d='m43,35H5v60h60V57M45,5v10l10,10-30,30 20,20 30-30 10,10h10V5z'/></svg>");
  37. --dark-color-scheme: dark;
  38. }
  39. @media (prefers-color-scheme: light) {
  40. :root {
  41. --color-background: var(--light-color-background);
  42. --color-background-secondary: var(--light-color-background-secondary);
  43. --color-icon-background: var(--light-color-icon-background);
  44. --color-accent: var(--light-color-accent);
  45. --color-text: var(--light-color-text);
  46. --color-text-aside: var(--light-color-text-aside);
  47. --color-link: var(--light-color-link);
  48. --color-ts: var(--light-color-ts);
  49. --color-ts-interface: var(--light-color-ts-interface);
  50. --color-ts-enum: var(--light-color-ts-enum);
  51. --color-ts-class: var(--light-color-ts-class);
  52. --color-ts-function: var(--light-color-ts-function);
  53. --color-ts-namespace: var(--light-color-ts-namespace);
  54. --color-ts-private: var(--light-color-ts-private);
  55. --color-ts-variable: var(--light-color-ts-variable);
  56. --external-icon: var(--light-external-icon);
  57. --color-scheme: var(--light-color-scheme);
  58. }
  59. }
  60. @media (prefers-color-scheme: dark) {
  61. :root {
  62. --color-background: var(--dark-color-background);
  63. --color-background-secondary: var(--dark-color-background-secondary);
  64. --color-icon-background: var(--dark-color-icon-background);
  65. --color-accent: var(--dark-color-accent);
  66. --color-text: var(--dark-color-text);
  67. --color-text-aside: var(--dark-color-text-aside);
  68. --color-link: var(--dark-color-link);
  69. --color-ts: var(--dark-color-ts);
  70. --color-ts-interface: var(--dark-color-ts-interface);
  71. --color-ts-enum: var(--dark-color-ts-enum);
  72. --color-ts-class: var(--dark-color-ts-class);
  73. --color-ts-function: var(--dark-color-ts-function);
  74. --color-ts-namespace: var(--dark-color-ts-namespace);
  75. --color-ts-private: var(--dark-color-ts-private);
  76. --color-ts-variable: var(--dark-color-ts-variable);
  77. --external-icon: var(--dark-external-icon);
  78. --color-scheme: var(--dark-color-scheme);
  79. }
  80. }
  81. html {
  82. color-scheme: var(--color-scheme);
  83. }
  84. body {
  85. margin: 0;
  86. }
  87. :root[data-theme="light"] {
  88. --color-background: var(--light-color-background);
  89. --color-background-secondary: var(--light-color-background-secondary);
  90. --color-icon-background: var(--light-color-icon-background);
  91. --color-accent: var(--light-color-accent);
  92. --color-text: var(--light-color-text);
  93. --color-text-aside: var(--light-color-text-aside);
  94. --color-link: var(--light-color-link);
  95. --color-ts: var(--light-color-ts);
  96. --color-ts-interface: var(--light-color-ts-interface);
  97. --color-ts-enum: var(--light-color-ts-enum);
  98. --color-ts-class: var(--light-color-ts-class);
  99. --color-ts-function: var(--light-color-ts-function);
  100. --color-ts-namespace: var(--light-color-ts-namespace);
  101. --color-ts-private: var(--light-color-ts-private);
  102. --color-ts-variable: var(--light-color-ts-variable);
  103. --external-icon: var(--light-external-icon);
  104. --color-scheme: var(--light-color-scheme);
  105. }
  106. :root[data-theme="dark"] {
  107. --color-background: var(--dark-color-background);
  108. --color-background-secondary: var(--dark-color-background-secondary);
  109. --color-icon-background: var(--dark-color-icon-background);
  110. --color-accent: var(--dark-color-accent);
  111. --color-text: var(--dark-color-text);
  112. --color-text-aside: var(--dark-color-text-aside);
  113. --color-link: var(--dark-color-link);
  114. --color-ts: var(--dark-color-ts);
  115. --color-ts-interface: var(--dark-color-ts-interface);
  116. --color-ts-enum: var(--dark-color-ts-enum);
  117. --color-ts-class: var(--dark-color-ts-class);
  118. --color-ts-function: var(--dark-color-ts-function);
  119. --color-ts-namespace: var(--dark-color-ts-namespace);
  120. --color-ts-private: var(--dark-color-ts-private);
  121. --color-ts-variable: var(--dark-color-ts-variable);
  122. --external-icon: var(--dark-external-icon);
  123. --color-scheme: var(--dark-color-scheme);
  124. }
  125. h1,
  126. h2,
  127. h3,
  128. h4,
  129. h5,
  130. h6 {
  131. line-height: 1.2;
  132. }
  133. h1 {
  134. font-size: 1.875rem;
  135. margin: 0.67rem 0;
  136. }
  137. h2 {
  138. font-size: 1.5rem;
  139. margin: 0.83rem 0;
  140. }
  141. h3 {
  142. font-size: 1.25rem;
  143. margin: 1rem 0;
  144. }
  145. h4 {
  146. font-size: 1.05rem;
  147. margin: 1.33rem 0;
  148. }
  149. h5 {
  150. font-size: 1rem;
  151. margin: 1.5rem 0;
  152. }
  153. h6 {
  154. font-size: 0.875rem;
  155. margin: 2.33rem 0;
  156. }
  157. .uppercase {
  158. text-transform: uppercase;
  159. }
  160. pre {
  161. white-space: pre;
  162. white-space: pre-wrap;
  163. word-wrap: break-word;
  164. }
  165. dl,
  166. menu,
  167. ol,
  168. ul {
  169. margin: 1em 0;
  170. }
  171. dd {
  172. margin: 0 0 0 40px;
  173. }
  174. .container {
  175. max-width: 1600px;
  176. padding: 0 2rem;
  177. }
  178. @media (min-width: 640px) {
  179. .container {
  180. padding: 0 4rem;
  181. }
  182. }
  183. @media (min-width: 1200px) {
  184. .container {
  185. padding: 0 8rem;
  186. }
  187. }
  188. @media (min-width: 1600px) {
  189. .container {
  190. padding: 0 12rem;
  191. }
  192. }
  193. /* Footer */
  194. .tsd-generator {
  195. border-top: 1px solid var(--color-accent);
  196. padding-top: 1rem;
  197. padding-bottom: 1rem;
  198. max-height: 3.5rem;
  199. }
  200. .tsd-generator > p {
  201. margin-top: 0;
  202. margin-bottom: 0;
  203. padding: 0 1rem;
  204. }
  205. .container-main {
  206. display: flex;
  207. justify-content: space-between;
  208. position: relative;
  209. margin: 0 auto;
  210. }
  211. .col-4,
  212. .col-8 {
  213. box-sizing: border-box;
  214. float: left;
  215. padding: 2rem 1rem;
  216. }
  217. .col-4 {
  218. flex: 0 0 25%;
  219. }
  220. .col-8 {
  221. flex: 1 0;
  222. flex-wrap: wrap;
  223. padding-left: 0;
  224. }
  225. @keyframes fade-in {
  226. from {
  227. opacity: 0;
  228. }
  229. to {
  230. opacity: 1;
  231. }
  232. }
  233. @keyframes fade-out {
  234. from {
  235. opacity: 1;
  236. visibility: visible;
  237. }
  238. to {
  239. opacity: 0;
  240. }
  241. }
  242. @keyframes fade-in-delayed {
  243. 0% {
  244. opacity: 0;
  245. }
  246. 33% {
  247. opacity: 0;
  248. }
  249. 100% {
  250. opacity: 1;
  251. }
  252. }
  253. @keyframes fade-out-delayed {
  254. 0% {
  255. opacity: 1;
  256. visibility: visible;
  257. }
  258. 66% {
  259. opacity: 0;
  260. }
  261. 100% {
  262. opacity: 0;
  263. }
  264. }
  265. @keyframes shift-to-left {
  266. from {
  267. transform: translate(0, 0);
  268. }
  269. to {
  270. transform: translate(-25%, 0);
  271. }
  272. }
  273. @keyframes unshift-to-left {
  274. from {
  275. transform: translate(-25%, 0);
  276. }
  277. to {
  278. transform: translate(0, 0);
  279. }
  280. }
  281. @keyframes pop-in-from-right {
  282. from {
  283. transform: translate(100%, 0);
  284. }
  285. to {
  286. transform: translate(0, 0);
  287. }
  288. }
  289. @keyframes pop-out-to-right {
  290. from {
  291. transform: translate(0, 0);
  292. visibility: visible;
  293. }
  294. to {
  295. transform: translate(100%, 0);
  296. }
  297. }
  298. body {
  299. background: var(--color-background);
  300. font-family: "Segoe UI", sans-serif;
  301. font-size: 16px;
  302. color: var(--color-text);
  303. }
  304. a {
  305. color: var(--color-link);
  306. text-decoration: none;
  307. }
  308. a:hover {
  309. text-decoration: underline;
  310. }
  311. a.external[target="_blank"] {
  312. background-image: var(--external-icon);
  313. background-position: top 3px right;
  314. background-repeat: no-repeat;
  315. padding-right: 13px;
  316. }
  317. code,
  318. pre {
  319. font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  320. padding: 0.2em;
  321. margin: 0;
  322. font-size: 0.875rem;
  323. border-radius: 0.8em;
  324. }
  325. pre {
  326. padding: 10px;
  327. border: 0.1em solid var(--color-accent);
  328. }
  329. pre code {
  330. padding: 0;
  331. font-size: 100%;
  332. }
  333. blockquote {
  334. margin: 1em 0;
  335. padding-left: 1em;
  336. border-left: 4px solid gray;
  337. }
  338. .tsd-typography {
  339. line-height: 1.333em;
  340. }
  341. .tsd-typography ul {
  342. list-style: square;
  343. padding: 0 0 0 20px;
  344. margin: 0;
  345. }
  346. .tsd-typography h4,
  347. .tsd-typography .tsd-index-panel h3,
  348. .tsd-index-panel .tsd-typography h3,
  349. .tsd-typography h5,
  350. .tsd-typography h6 {
  351. font-size: 1em;
  352. margin: 0;
  353. }
  354. .tsd-typography h5,
  355. .tsd-typography h6 {
  356. font-weight: normal;
  357. }
  358. .tsd-typography p,
  359. .tsd-typography ul,
  360. .tsd-typography ol {
  361. margin: 1em 0;
  362. }
  363. @media (max-width: 1024px) {
  364. html .col-content {
  365. float: none;
  366. max-width: 100%;
  367. width: 100%;
  368. padding-top: 3rem;
  369. }
  370. html .col-menu {
  371. position: fixed !important;
  372. overflow-y: auto;
  373. -webkit-overflow-scrolling: touch;
  374. z-index: 1024;
  375. top: 0 !important;
  376. bottom: 0 !important;
  377. left: auto !important;
  378. right: 0 !important;
  379. padding: 1.5rem 1.5rem 0 0;
  380. max-width: 25rem;
  381. visibility: hidden;
  382. background-color: var(--color-background);
  383. transform: translate(100%, 0);
  384. }
  385. html .col-menu > *:last-child {
  386. padding-bottom: 20px;
  387. }
  388. html .overlay {
  389. content: "";
  390. display: block;
  391. position: fixed;
  392. z-index: 1023;
  393. top: 0;
  394. left: 0;
  395. right: 0;
  396. bottom: 0;
  397. background-color: rgba(0, 0, 0, 0.75);
  398. visibility: hidden;
  399. }
  400. .to-has-menu .overlay {
  401. animation: fade-in 0.4s;
  402. }
  403. .to-has-menu :is(header, footer, .col-content) {
  404. animation: shift-to-left 0.4s;
  405. }
  406. .to-has-menu .col-menu {
  407. animation: pop-in-from-right 0.4s;
  408. }
  409. .from-has-menu .overlay {
  410. animation: fade-out 0.4s;
  411. }
  412. .from-has-menu :is(header, footer, .col-content) {
  413. animation: unshift-to-left 0.4s;
  414. }
  415. .from-has-menu .col-menu {
  416. animation: pop-out-to-right 0.4s;
  417. }
  418. .has-menu body {
  419. overflow: hidden;
  420. }
  421. .has-menu .overlay {
  422. visibility: visible;
  423. }
  424. .has-menu :is(header, footer, .col-content) {
  425. transform: translate(-25%, 0);
  426. }
  427. .has-menu .col-menu {
  428. visibility: visible;
  429. transform: translate(0, 0);
  430. display: grid;
  431. align-items: center;
  432. grid-template-rows: auto 1fr;
  433. grid-gap: 1.5rem;
  434. max-height: 100vh;
  435. padding: 1rem 2rem;
  436. }
  437. .has-menu .tsd-navigation {
  438. max-height: 100%;
  439. }
  440. }
  441. .tsd-breadcrumb {
  442. margin: 0;
  443. padding: 0;
  444. color: var(--color-text-aside);
  445. }
  446. .tsd-breadcrumb a {
  447. color: var(--color-text-aside);
  448. text-decoration: none;
  449. }
  450. .tsd-breadcrumb a:hover {
  451. text-decoration: underline;
  452. }
  453. .tsd-breadcrumb li {
  454. display: inline;
  455. }
  456. .tsd-breadcrumb li:after {
  457. content: " / ";
  458. }
  459. .tsd-comment-tags {
  460. display: flex;
  461. flex-direction: column;
  462. }
  463. dl.tsd-comment-tag-group {
  464. display: flex;
  465. align-items: center;
  466. overflow: hidden;
  467. margin: 0.5em 0;
  468. }
  469. dl.tsd-comment-tag-group dt {
  470. display: flex;
  471. margin-right: 0.5em;
  472. font-size: 0.875em;
  473. font-weight: normal;
  474. }
  475. dl.tsd-comment-tag-group dd {
  476. margin: 0;
  477. }
  478. code.tsd-tag {
  479. padding: 0.25em 0.4em;
  480. border: 0.1em solid var(--color-accent);
  481. margin-right: 0.25em;
  482. font-size: 70%;
  483. }
  484. h1 code.tsd-tag:first-of-type {
  485. margin-left: 0.25em;
  486. }
  487. dl.tsd-comment-tag-group dd:before,
  488. dl.tsd-comment-tag-group dd:after {
  489. content: " ";
  490. }
  491. dl.tsd-comment-tag-group dd pre,
  492. dl.tsd-comment-tag-group dd:after {
  493. clear: both;
  494. }
  495. dl.tsd-comment-tag-group p {
  496. margin: 0;
  497. }
  498. .tsd-panel.tsd-comment .lead {
  499. font-size: 1.1em;
  500. line-height: 1.333em;
  501. margin-bottom: 2em;
  502. }
  503. .tsd-panel.tsd-comment .lead:last-child {
  504. margin-bottom: 0;
  505. }
  506. .tsd-filter-visibility h4 {
  507. font-size: 1rem;
  508. padding-top: 0.75rem;
  509. padding-bottom: 0.5rem;
  510. margin: 0;
  511. }
  512. .tsd-filter-item:not(:last-child) {
  513. margin-bottom: 0.5rem;
  514. }
  515. .tsd-filter-input {
  516. display: flex;
  517. width: fit-content;
  518. width: -moz-fit-content;
  519. align-items: center;
  520. user-select: none;
  521. -webkit-user-select: none;
  522. -moz-user-select: none;
  523. -ms-user-select: none;
  524. cursor: pointer;
  525. }
  526. .tsd-filter-input input[type="checkbox"] {
  527. cursor: pointer;
  528. position: absolute;
  529. width: 1.5em;
  530. height: 1.5em;
  531. opacity: 0;
  532. }
  533. .tsd-filter-input input[type="checkbox"]:disabled {
  534. pointer-events: none;
  535. }
  536. .tsd-filter-input svg {
  537. cursor: pointer;
  538. width: 1.5em;
  539. height: 1.5em;
  540. margin-right: 0.5em;
  541. border-radius: 0.33em;
  542. /* Leaving this at full opacity breaks event listeners on Firefox.
  543. Don't remove unless you know what you're doing. */
  544. opacity: 0.99;
  545. }
  546. .tsd-filter-input input[type="checkbox"]:focus + svg {
  547. transform: scale(0.95);
  548. }
  549. .tsd-filter-input input[type="checkbox"]:focus:not(:focus-visible) + svg {
  550. transform: scale(1);
  551. }
  552. .tsd-checkbox-background {
  553. fill: var(--color-accent);
  554. }
  555. input[type="checkbox"]:checked ~ svg .tsd-checkbox-checkmark {
  556. stroke: var(--color-text);
  557. }
  558. .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-background {
  559. fill: var(--color-background);
  560. stroke: var(--color-accent);
  561. stroke-width: 0.25rem;
  562. }
  563. .tsd-filter-input input:disabled ~ svg > .tsd-checkbox-checkmark {
  564. stroke: var(--color-accent);
  565. }
  566. .tsd-theme-toggle {
  567. padding-top: 0.75rem;
  568. }
  569. .tsd-theme-toggle > h4 {
  570. display: inline;
  571. vertical-align: middle;
  572. margin-right: 0.75rem;
  573. }
  574. .tsd-hierarchy {
  575. list-style: square;
  576. margin: 0;
  577. }
  578. .tsd-hierarchy .target {
  579. font-weight: bold;
  580. }
  581. .tsd-panel-group.tsd-index-group {
  582. margin-bottom: 0;
  583. }
  584. .tsd-index-panel .tsd-index-list {
  585. list-style: none;
  586. line-height: 1.333em;
  587. margin: 0;
  588. padding: 0.25rem 0 0 0;
  589. overflow: hidden;
  590. display: grid;
  591. grid-template-columns: repeat(3, 1fr);
  592. column-gap: 1rem;
  593. grid-template-rows: auto;
  594. }
  595. @media (max-width: 1024px) {
  596. .tsd-index-panel .tsd-index-list {
  597. grid-template-columns: repeat(2, 1fr);
  598. }
  599. }
  600. @media (max-width: 768px) {
  601. .tsd-index-panel .tsd-index-list {
  602. grid-template-columns: repeat(1, 1fr);
  603. }
  604. }
  605. .tsd-index-panel .tsd-index-list li {
  606. -webkit-page-break-inside: avoid;
  607. -moz-page-break-inside: avoid;
  608. -ms-page-break-inside: avoid;
  609. -o-page-break-inside: avoid;
  610. page-break-inside: avoid;
  611. }
  612. .tsd-index-panel a,
  613. .tsd-index-panel a.tsd-parent-kind-module {
  614. color: var(--color-ts);
  615. }
  616. .tsd-index-panel a.tsd-parent-kind-interface {
  617. color: var(--color-ts-interface);
  618. }
  619. .tsd-index-panel a.tsd-parent-kind-enum {
  620. color: var(--color-ts-enum);
  621. }
  622. .tsd-index-panel a.tsd-parent-kind-class {
  623. color: var(--color-ts-class);
  624. }
  625. .tsd-index-panel a.tsd-kind-module {
  626. color: var(--color-ts-namespace);
  627. }
  628. .tsd-index-panel a.tsd-kind-interface {
  629. color: var(--color-ts-interface);
  630. }
  631. .tsd-index-panel a.tsd-kind-enum {
  632. color: var(--color-ts-enum);
  633. }
  634. .tsd-index-panel a.tsd-kind-class {
  635. color: var(--color-ts-class);
  636. }
  637. .tsd-index-panel a.tsd-kind-function {
  638. color: var(--color-ts-function);
  639. }
  640. .tsd-index-panel a.tsd-kind-namespace {
  641. color: var(--color-ts-namespace);
  642. }
  643. .tsd-index-panel a.tsd-kind-variable {
  644. color: var(--color-ts-variable);
  645. }
  646. .tsd-index-panel a.tsd-is-private {
  647. color: var(--color-ts-private);
  648. }
  649. .tsd-flag {
  650. display: inline-block;
  651. padding: 0.25em 0.4em;
  652. border-radius: 4px;
  653. color: var(--color-comment-tag-text);
  654. background-color: var(--color-comment-tag);
  655. text-indent: 0;
  656. font-size: 75%;
  657. line-height: 1;
  658. font-weight: normal;
  659. }
  660. .tsd-anchor {
  661. position: absolute;
  662. top: -100px;
  663. }
  664. .tsd-member {
  665. position: relative;
  666. }
  667. .tsd-member .tsd-anchor + h3 {
  668. display: flex;
  669. align-items: center;
  670. margin-top: 0;
  671. margin-bottom: 0;
  672. border-bottom: none;
  673. }
  674. .tsd-member [data-tsd-kind] {
  675. color: var(--color-ts);
  676. }
  677. .tsd-member [data-tsd-kind="Interface"] {
  678. color: var(--color-ts-interface);
  679. }
  680. .tsd-member [data-tsd-kind="Enum"] {
  681. color: var(--color-ts-enum);
  682. }
  683. .tsd-member [data-tsd-kind="Class"] {
  684. color: var(--color-ts-class);
  685. }
  686. .tsd-member [data-tsd-kind="Private"] {
  687. color: var(--color-ts-private);
  688. }
  689. .tsd-navigation a {
  690. display: block;
  691. margin: 0.4rem 0;
  692. border-left: 2px solid transparent;
  693. color: var(--color-text);
  694. text-decoration: none;
  695. transition: border-left-color 0.1s;
  696. }
  697. .tsd-navigation a:hover {
  698. text-decoration: underline;
  699. }
  700. .tsd-navigation ul {
  701. margin: 0;
  702. padding: 0;
  703. list-style: none;
  704. }
  705. .tsd-navigation li {
  706. padding: 0;
  707. }
  708. .tsd-navigation.primary .tsd-accordion-details > ul {
  709. margin-top: 0.75rem;
  710. }
  711. .tsd-navigation.primary a {
  712. padding: 0.75rem 0.5rem;
  713. margin: 0;
  714. }
  715. .tsd-navigation.primary ul li a {
  716. margin-left: 0.5rem;
  717. }
  718. .tsd-navigation.primary ul li li a {
  719. margin-left: 1.5rem;
  720. }
  721. .tsd-navigation.primary ul li li li a {
  722. margin-left: 2.5rem;
  723. }
  724. .tsd-navigation.primary ul li li li li a {
  725. margin-left: 3.5rem;
  726. }
  727. .tsd-navigation.primary ul li li li li li a {
  728. margin-left: 4.5rem;
  729. }
  730. .tsd-navigation.primary ul li li li li li li a {
  731. margin-left: 5.5rem;
  732. }
  733. .tsd-navigation.primary li.current > a {
  734. border-left: 0.15rem var(--color-text) solid;
  735. }
  736. .tsd-navigation.primary li.selected > a {
  737. font-weight: bold;
  738. border-left: 0.2rem var(--color-text) solid;
  739. }
  740. .tsd-navigation.primary ul li a:hover {
  741. border-left: 0.2rem var(--color-text-aside) solid;
  742. }
  743. .tsd-navigation.primary li.globals + li > span,
  744. .tsd-navigation.primary li.globals + li > a {
  745. padding-top: 20px;
  746. }
  747. .tsd-navigation.secondary.tsd-navigation--toolbar-hide {
  748. max-height: calc(100vh - 1rem);
  749. top: 0.5rem;
  750. }
  751. .tsd-navigation.secondary > ul {
  752. display: inline;
  753. padding-right: 0.5rem;
  754. transition: opacity 0.2s;
  755. }
  756. .tsd-navigation.secondary ul li a {
  757. padding-left: 0;
  758. }
  759. .tsd-navigation.secondary ul li li a {
  760. padding-left: 1.1rem;
  761. }
  762. .tsd-navigation.secondary ul li li li a {
  763. padding-left: 2.2rem;
  764. }
  765. .tsd-navigation.secondary ul li li li li a {
  766. padding-left: 3.3rem;
  767. }
  768. .tsd-navigation.secondary ul li li li li li a {
  769. padding-left: 4.4rem;
  770. }
  771. .tsd-navigation.secondary ul li li li li li li a {
  772. padding-left: 5.5rem;
  773. }
  774. #tsd-sidebar-links a {
  775. margin-top: 0;
  776. margin-bottom: 0.5rem;
  777. line-height: 1.25rem;
  778. }
  779. #tsd-sidebar-links a:last-of-type {
  780. margin-bottom: 0;
  781. }
  782. a.tsd-index-link {
  783. margin: 0.25rem 0;
  784. font-size: 1rem;
  785. line-height: 1.25rem;
  786. display: inline-flex;
  787. align-items: center;
  788. }
  789. .tsd-accordion-summary > h1,
  790. .tsd-accordion-summary > h2,
  791. .tsd-accordion-summary > h3,
  792. .tsd-accordion-summary > h4,
  793. .tsd-accordion-summary > h5 {
  794. display: inline-flex;
  795. align-items: center;
  796. vertical-align: middle;
  797. margin-bottom: 0;
  798. user-select: none;
  799. -moz-user-select: none;
  800. -webkit-user-select: none;
  801. -ms-user-select: none;
  802. }
  803. .tsd-accordion-summary {
  804. display: block;
  805. cursor: pointer;
  806. }
  807. .tsd-accordion-summary > * {
  808. margin-top: 0;
  809. margin-bottom: 0;
  810. padding-top: 0;
  811. padding-bottom: 0;
  812. }
  813. .tsd-accordion-summary::-webkit-details-marker {
  814. display: none;
  815. }
  816. .tsd-index-accordion .tsd-accordion-summary svg {
  817. margin-right: 0.25rem;
  818. }
  819. .tsd-index-content > :not(:first-child) {
  820. margin-top: 0.75rem;
  821. }
  822. .tsd-index-heading {
  823. margin-top: 1.5rem;
  824. margin-bottom: 0.75rem;
  825. }
  826. .tsd-kind-icon {
  827. margin-right: 0.5rem;
  828. width: 1.25rem;
  829. height: 1.25rem;
  830. min-width: 1.25rem;
  831. min-height: 1.25rem;
  832. }
  833. .tsd-kind-icon path {
  834. transform-origin: center;
  835. transform: scale(1.1);
  836. }
  837. .tsd-signature > .tsd-kind-icon {
  838. margin-right: 0.8rem;
  839. }
  840. @media (min-width: 1024px) {
  841. .col-content {
  842. margin: 2rem auto;
  843. }
  844. .menu-sticky-wrap {
  845. position: sticky;
  846. height: calc(100vh - 2rem);
  847. top: 4rem;
  848. right: 0;
  849. padding: 0 1.5rem;
  850. padding-top: 1rem;
  851. margin-top: 3rem;
  852. transition: 0.3s ease-in-out;
  853. transition-property: top, padding-top, padding, height;
  854. overflow-y: auto;
  855. }
  856. .col-menu {
  857. border-left: 1px solid var(--color-accent);
  858. }
  859. .col-menu--hide {
  860. top: 1rem;
  861. }
  862. .col-menu .tsd-navigation:not(:last-child) {
  863. padding-bottom: 1.75rem;
  864. }
  865. }
  866. .tsd-panel {
  867. margin-bottom: 2.5rem;
  868. }
  869. .tsd-panel.tsd-member {
  870. margin-bottom: 4rem;
  871. }
  872. .tsd-panel:empty {
  873. display: none;
  874. }
  875. .tsd-panel > h1,
  876. .tsd-panel > h2,
  877. .tsd-panel > h3 {
  878. margin: 1.5rem -1.5rem 0.75rem -1.5rem;
  879. padding: 0 1.5rem 0.75rem 1.5rem;
  880. }
  881. .tsd-panel > h1.tsd-before-signature,
  882. .tsd-panel > h2.tsd-before-signature,
  883. .tsd-panel > h3.tsd-before-signature {
  884. margin-bottom: 0;
  885. border-bottom: none;
  886. }
  887. .tsd-panel-group {
  888. margin: 4rem 0;
  889. }
  890. .tsd-panel-group.tsd-index-group {
  891. margin: 2rem 0;
  892. }
  893. .tsd-panel-group.tsd-index-group details {
  894. margin: 2rem 0;
  895. }
  896. #tsd-search {
  897. transition: background-color 0.2s;
  898. }
  899. #tsd-search .title {
  900. position: relative;
  901. z-index: 2;
  902. }
  903. #tsd-search .field {
  904. position: absolute;
  905. left: 0;
  906. top: 0;
  907. right: 2.5rem;
  908. height: 100%;
  909. }
  910. #tsd-search .field input {
  911. box-sizing: border-box;
  912. position: relative;
  913. top: -50px;
  914. z-index: 1;
  915. width: 100%;
  916. padding: 0 10px;
  917. opacity: 0;
  918. outline: 0;
  919. border: 0;
  920. background: transparent;
  921. color: var(--color-text);
  922. }
  923. #tsd-search .field label {
  924. position: absolute;
  925. overflow: hidden;
  926. right: -40px;
  927. }
  928. #tsd-search .field input,
  929. #tsd-search .title,
  930. #tsd-toolbar-links a {
  931. transition: opacity 0.2s;
  932. }
  933. #tsd-search .results {
  934. position: absolute;
  935. visibility: hidden;
  936. top: 40px;
  937. width: 100%;
  938. margin: 0;
  939. padding: 0;
  940. list-style: none;
  941. box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  942. }
  943. #tsd-search .results li {
  944. padding: 0 10px;
  945. background-color: var(--color-background);
  946. }
  947. #tsd-search .results li:nth-child(even) {
  948. background-color: var(--color-background-secondary);
  949. }
  950. #tsd-search .results li.state {
  951. display: none;
  952. }
  953. #tsd-search .results li.current,
  954. #tsd-search .results li:hover {
  955. background-color: var(--color-accent);
  956. }
  957. #tsd-search .results a {
  958. display: block;
  959. }
  960. #tsd-search .results a:before {
  961. top: 10px;
  962. }
  963. #tsd-search .results span.parent {
  964. color: var(--color-text-aside);
  965. font-weight: normal;
  966. }
  967. #tsd-search.has-focus {
  968. background-color: var(--color-accent);
  969. }
  970. #tsd-search.has-focus .field input {
  971. top: 0;
  972. opacity: 1;
  973. }
  974. #tsd-search.has-focus .title,
  975. #tsd-search.has-focus #tsd-toolbar-links a {
  976. z-index: 0;
  977. opacity: 0;
  978. }
  979. #tsd-search.has-focus .results {
  980. visibility: visible;
  981. }
  982. #tsd-search.loading .results li.state.loading {
  983. display: block;
  984. }
  985. #tsd-search.failure .results li.state.failure {
  986. display: block;
  987. }
  988. #tsd-toolbar-links {
  989. position: absolute;
  990. top: 0;
  991. right: 2rem;
  992. height: 100%;
  993. display: flex;
  994. align-items: center;
  995. justify-content: flex-end;
  996. }
  997. #tsd-toolbar-links a {
  998. margin-left: 1.5rem;
  999. }
  1000. #tsd-toolbar-links a:hover {
  1001. text-decoration: underline;
  1002. }
  1003. .tsd-signature {
  1004. margin: 0 0 1rem 0;
  1005. padding: 1rem 0.5rem;
  1006. border: 1px solid var(--color-accent);
  1007. font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  1008. font-size: 14px;
  1009. overflow-x: auto;
  1010. }
  1011. .tsd-signature-symbol {
  1012. color: var(--color-text-aside);
  1013. font-weight: normal;
  1014. }
  1015. .tsd-signature-type {
  1016. font-style: italic;
  1017. font-weight: normal;
  1018. }
  1019. .tsd-signatures {
  1020. padding: 0;
  1021. margin: 0 0 1em 0;
  1022. list-style-type: none;
  1023. }
  1024. .tsd-signatures .tsd-signature {
  1025. margin: 0;
  1026. border-color: var(--color-accent);
  1027. border-width: 1px 0;
  1028. transition: background-color 0.1s;
  1029. }
  1030. .tsd-description .tsd-signatures .tsd-signature {
  1031. border-width: 1px;
  1032. }
  1033. ul.tsd-parameter-list,
  1034. ul.tsd-type-parameter-list {
  1035. list-style: square;
  1036. margin: 0;
  1037. padding-left: 20px;
  1038. }
  1039. ul.tsd-parameter-list > li.tsd-parameter-signature,
  1040. ul.tsd-type-parameter-list > li.tsd-parameter-signature {
  1041. list-style: none;
  1042. margin-left: -20px;
  1043. }
  1044. ul.tsd-parameter-list h5,
  1045. ul.tsd-type-parameter-list h5 {
  1046. font-size: 16px;
  1047. margin: 1em 0 0.5em 0;
  1048. }
  1049. .tsd-sources {
  1050. margin-top: 1rem;
  1051. font-size: 0.875em;
  1052. }
  1053. .tsd-sources a {
  1054. color: var(--color-text-aside);
  1055. text-decoration: underline;
  1056. }
  1057. .tsd-sources ul {
  1058. list-style: none;
  1059. padding: 0;
  1060. }
  1061. .tsd-page-toolbar {
  1062. position: fixed;
  1063. z-index: 1;
  1064. top: 0;
  1065. left: 0;
  1066. width: 100%;
  1067. color: var(--color-text);
  1068. background: var(--color-background-secondary);
  1069. border-bottom: 1px var(--color-accent) solid;
  1070. transition: transform 0.3s ease-in-out;
  1071. }
  1072. .tsd-page-toolbar a {
  1073. color: var(--color-text);
  1074. text-decoration: none;
  1075. }
  1076. .tsd-page-toolbar a.title {
  1077. font-weight: bold;
  1078. }
  1079. .tsd-page-toolbar a.title:hover {
  1080. text-decoration: underline;
  1081. }
  1082. .tsd-page-toolbar .tsd-toolbar-contents {
  1083. display: flex;
  1084. justify-content: space-between;
  1085. height: 2.5rem;
  1086. margin: 0 auto;
  1087. }
  1088. .tsd-page-toolbar .table-cell {
  1089. position: relative;
  1090. white-space: nowrap;
  1091. line-height: 40px;
  1092. }
  1093. .tsd-page-toolbar .table-cell:first-child {
  1094. width: 100%;
  1095. }
  1096. .tsd-page-toolbar .tsd-toolbar-icon {
  1097. box-sizing: border-box;
  1098. line-height: 0;
  1099. padding: 12px 0;
  1100. }
  1101. .tsd-page-toolbar--hide {
  1102. transform: translateY(-100%);
  1103. }
  1104. .tsd-widget {
  1105. display: inline-block;
  1106. overflow: hidden;
  1107. opacity: 0.8;
  1108. height: 40px;
  1109. transition: opacity 0.1s, background-color 0.2s;
  1110. vertical-align: bottom;
  1111. cursor: pointer;
  1112. }
  1113. .tsd-widget:hover {
  1114. opacity: 0.9;
  1115. }
  1116. .tsd-widget.active {
  1117. opacity: 1;
  1118. background-color: var(--color-accent);
  1119. }
  1120. .tsd-widget.no-caption {
  1121. width: 40px;
  1122. }
  1123. .tsd-widget.no-caption:before {
  1124. margin: 0;
  1125. }
  1126. .tsd-widget.options,
  1127. .tsd-widget.menu {
  1128. display: none;
  1129. }
  1130. @media (max-width: 1024px) {
  1131. .tsd-widget.options,
  1132. .tsd-widget.menu {
  1133. display: inline-block;
  1134. }
  1135. }
  1136. input[type="checkbox"] + .tsd-widget:before {
  1137. background-position: -120px 0;
  1138. }
  1139. input[type="checkbox"]:checked + .tsd-widget:before {
  1140. background-position: -160px 0;
  1141. }
  1142. img {
  1143. max-width: 100%;
  1144. }
  1145. .tsd-anchor-icon {
  1146. display: inline-flex;
  1147. align-items: center;
  1148. margin-left: 0.5rem;
  1149. vertical-align: middle;
  1150. color: var(--color-text);
  1151. }
  1152. .tsd-anchor-icon svg {
  1153. width: 1em;
  1154. height: 1em;
  1155. visibility: hidden;
  1156. }
  1157. .tsd-anchor-link:hover > .tsd-anchor-icon svg {
  1158. visibility: visible;
  1159. }
  1160. .deprecated {
  1161. text-decoration: line-through;
  1162. }
  1163. * {
  1164. scrollbar-width: thin;
  1165. scrollbar-color: var(--color-accent) var(--color-icon-background);
  1166. }
  1167. *::-webkit-scrollbar {
  1168. width: 0.75rem;
  1169. }
  1170. *::-webkit-scrollbar-track {
  1171. background: var(--color-icon-background);
  1172. }
  1173. *::-webkit-scrollbar-thumb {
  1174. background-color: var(--color-accent);
  1175. border-radius: 999rem;
  1176. border: 0.25rem solid var(--color-icon-background);
  1177. }