style.css 27 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225
  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. a.tsd-index-link {
  775. margin: 0.25rem 0;
  776. font-size: 1rem;
  777. line-height: 1.25rem;
  778. display: inline-flex;
  779. align-items: center;
  780. }
  781. .tsd-accordion-summary > h1,
  782. .tsd-accordion-summary > h2,
  783. .tsd-accordion-summary > h3,
  784. .tsd-accordion-summary > h4,
  785. .tsd-accordion-summary > h5 {
  786. display: inline-flex;
  787. align-items: center;
  788. vertical-align: middle;
  789. margin-bottom: 0;
  790. user-select: none;
  791. -moz-user-select: none;
  792. -webkit-user-select: none;
  793. -ms-user-select: none;
  794. }
  795. .tsd-accordion-summary {
  796. display: block;
  797. cursor: pointer;
  798. }
  799. .tsd-accordion-summary > * {
  800. margin-top: 0;
  801. margin-bottom: 0;
  802. padding-top: 0;
  803. padding-bottom: 0;
  804. }
  805. .tsd-accordion-summary::-webkit-details-marker {
  806. display: none;
  807. }
  808. .tsd-index-accordion .tsd-accordion-summary svg {
  809. margin-right: 0.25rem;
  810. }
  811. .tsd-index-content > :not(:first-child) {
  812. margin-top: 0.75rem;
  813. }
  814. .tsd-index-heading {
  815. margin-top: 1.5rem;
  816. margin-bottom: 0.75rem;
  817. }
  818. .tsd-kind-icon {
  819. margin-right: 0.5rem;
  820. width: 1.25rem;
  821. height: 1.25rem;
  822. min-width: 1.25rem;
  823. min-height: 1.25rem;
  824. }
  825. .tsd-kind-icon path {
  826. transform-origin: center;
  827. transform: scale(1.1);
  828. }
  829. .tsd-signature > .tsd-kind-icon {
  830. margin-right: 0.8rem;
  831. }
  832. @media (min-width: 1024px) {
  833. .col-content {
  834. margin: 2rem auto;
  835. }
  836. .menu-sticky-wrap {
  837. position: sticky;
  838. height: calc(100vh - 2rem);
  839. top: 4rem;
  840. right: 0;
  841. padding: 0 1.5rem;
  842. padding-top: 1rem;
  843. margin-top: 3rem;
  844. transition: 0.3s ease-in-out;
  845. transition-property: top, padding-top, padding, height;
  846. overflow-y: auto;
  847. }
  848. .col-menu {
  849. border-left: 1px solid var(--color-accent);
  850. }
  851. .col-menu--hide {
  852. top: 1rem;
  853. }
  854. .col-menu .tsd-navigation:not(:last-child) {
  855. padding-bottom: 1.75rem;
  856. }
  857. }
  858. .tsd-panel {
  859. margin-bottom: 2.5rem;
  860. }
  861. .tsd-panel.tsd-member {
  862. margin-bottom: 4rem;
  863. }
  864. .tsd-panel:empty {
  865. display: none;
  866. }
  867. .tsd-panel > h1,
  868. .tsd-panel > h2,
  869. .tsd-panel > h3 {
  870. margin: 1.5rem -1.5rem 0.75rem -1.5rem;
  871. padding: 0 1.5rem 0.75rem 1.5rem;
  872. }
  873. .tsd-panel > h1.tsd-before-signature,
  874. .tsd-panel > h2.tsd-before-signature,
  875. .tsd-panel > h3.tsd-before-signature {
  876. margin-bottom: 0;
  877. border-bottom: none;
  878. }
  879. .tsd-panel-group {
  880. margin: 4rem 0;
  881. }
  882. .tsd-panel-group.tsd-index-group {
  883. margin: 2rem 0;
  884. }
  885. .tsd-panel-group.tsd-index-group details {
  886. margin: 2rem 0;
  887. }
  888. #tsd-search {
  889. transition: background-color 0.2s;
  890. }
  891. #tsd-search .title {
  892. position: relative;
  893. z-index: 2;
  894. }
  895. #tsd-search .field {
  896. position: absolute;
  897. left: 0;
  898. top: 0;
  899. right: 2.5rem;
  900. height: 100%;
  901. }
  902. #tsd-search .field input {
  903. box-sizing: border-box;
  904. position: relative;
  905. top: -50px;
  906. z-index: 1;
  907. width: 100%;
  908. padding: 0 10px;
  909. opacity: 0;
  910. outline: 0;
  911. border: 0;
  912. background: transparent;
  913. color: var(--color-text);
  914. }
  915. #tsd-search .field label {
  916. position: absolute;
  917. overflow: hidden;
  918. right: -40px;
  919. }
  920. #tsd-search .field input,
  921. #tsd-search .title {
  922. transition: opacity 0.2s;
  923. }
  924. #tsd-search .results {
  925. position: absolute;
  926. visibility: hidden;
  927. top: 40px;
  928. width: 100%;
  929. margin: 0;
  930. padding: 0;
  931. list-style: none;
  932. box-shadow: 0 0 4px rgba(0, 0, 0, 0.25);
  933. }
  934. #tsd-search .results li {
  935. padding: 0 10px;
  936. background-color: var(--color-background);
  937. }
  938. #tsd-search .results li:nth-child(even) {
  939. background-color: var(--color-background-secondary);
  940. }
  941. #tsd-search .results li.state {
  942. display: none;
  943. }
  944. #tsd-search .results li.current,
  945. #tsd-search .results li:hover {
  946. background-color: var(--color-accent);
  947. }
  948. #tsd-search .results a {
  949. display: block;
  950. }
  951. #tsd-search .results a:before {
  952. top: 10px;
  953. }
  954. #tsd-search .results span.parent {
  955. color: var(--color-text-aside);
  956. font-weight: normal;
  957. }
  958. #tsd-search.has-focus {
  959. background-color: var(--color-accent);
  960. }
  961. #tsd-search.has-focus .field input {
  962. top: 0;
  963. opacity: 1;
  964. }
  965. #tsd-search.has-focus .title {
  966. z-index: 0;
  967. opacity: 0;
  968. }
  969. #tsd-search.has-focus .results {
  970. visibility: visible;
  971. }
  972. #tsd-search.loading .results li.state.loading {
  973. display: block;
  974. }
  975. #tsd-search.failure .results li.state.failure {
  976. display: block;
  977. }
  978. .tsd-signature {
  979. margin: 0 0 1rem 0;
  980. padding: 1rem 0.5rem;
  981. border: 1px solid var(--color-accent);
  982. font-family: Menlo, Monaco, Consolas, "Courier New", monospace;
  983. font-size: 14px;
  984. overflow-x: auto;
  985. }
  986. .tsd-signature-symbol {
  987. color: var(--color-text-aside);
  988. font-weight: normal;
  989. }
  990. .tsd-signature-type {
  991. font-style: italic;
  992. font-weight: normal;
  993. }
  994. .tsd-signatures {
  995. padding: 0;
  996. margin: 0 0 1em 0;
  997. list-style-type: none;
  998. }
  999. .tsd-signatures .tsd-signature {
  1000. margin: 0;
  1001. border-color: var(--color-accent);
  1002. border-width: 1px 0;
  1003. transition: background-color 0.1s;
  1004. }
  1005. .tsd-description .tsd-signatures .tsd-signature {
  1006. border-width: 1px;
  1007. }
  1008. ul.tsd-parameter-list,
  1009. ul.tsd-type-parameter-list {
  1010. list-style: square;
  1011. margin: 0;
  1012. padding-left: 20px;
  1013. }
  1014. ul.tsd-parameter-list > li.tsd-parameter-signature,
  1015. ul.tsd-type-parameter-list > li.tsd-parameter-signature {
  1016. list-style: none;
  1017. margin-left: -20px;
  1018. }
  1019. ul.tsd-parameter-list h5,
  1020. ul.tsd-type-parameter-list h5 {
  1021. font-size: 16px;
  1022. margin: 1em 0 0.5em 0;
  1023. }
  1024. .tsd-sources {
  1025. margin-top: 1rem;
  1026. font-size: 0.875em;
  1027. }
  1028. .tsd-sources a {
  1029. color: var(--color-text-aside);
  1030. text-decoration: underline;
  1031. }
  1032. .tsd-sources ul {
  1033. list-style: none;
  1034. padding: 0;
  1035. }
  1036. .tsd-page-toolbar {
  1037. position: fixed;
  1038. z-index: 1;
  1039. top: 0;
  1040. left: 0;
  1041. width: 100%;
  1042. color: var(--color-text);
  1043. background: var(--color-background-secondary);
  1044. border-bottom: 1px var(--color-accent) solid;
  1045. transition: transform 0.3s ease-in-out;
  1046. }
  1047. .tsd-page-toolbar a {
  1048. color: var(--color-text);
  1049. text-decoration: none;
  1050. }
  1051. .tsd-page-toolbar a.title {
  1052. font-weight: bold;
  1053. }
  1054. .tsd-page-toolbar a.title:hover {
  1055. text-decoration: underline;
  1056. }
  1057. .tsd-page-toolbar .tsd-toolbar-contents {
  1058. display: flex;
  1059. justify-content: space-between;
  1060. height: 2.5rem;
  1061. }
  1062. .tsd-page-toolbar .table-cell {
  1063. position: relative;
  1064. white-space: nowrap;
  1065. line-height: 40px;
  1066. }
  1067. .tsd-page-toolbar .table-cell:first-child {
  1068. width: 100%;
  1069. }
  1070. .tsd-page-toolbar--hide {
  1071. transform: translateY(-100%);
  1072. }
  1073. .tsd-widget {
  1074. display: inline-block;
  1075. overflow: hidden;
  1076. opacity: 0.8;
  1077. height: 40px;
  1078. transition: opacity 0.1s, background-color 0.2s;
  1079. vertical-align: bottom;
  1080. cursor: pointer;
  1081. }
  1082. .tsd-widget:hover {
  1083. opacity: 0.9;
  1084. }
  1085. .tsd-widget.active {
  1086. opacity: 1;
  1087. background-color: var(--color-accent);
  1088. }
  1089. .tsd-widget.no-caption {
  1090. width: 40px;
  1091. }
  1092. .tsd-widget.no-caption:before {
  1093. margin: 0;
  1094. }
  1095. .tsd-widget.options,
  1096. .tsd-widget.menu {
  1097. display: none;
  1098. }
  1099. @media (max-width: 1024px) {
  1100. .tsd-widget.options,
  1101. .tsd-widget.menu {
  1102. display: inline-block;
  1103. }
  1104. }
  1105. input[type="checkbox"] + .tsd-widget:before {
  1106. background-position: -120px 0;
  1107. }
  1108. input[type="checkbox"]:checked + .tsd-widget:before {
  1109. background-position: -160px 0;
  1110. }
  1111. img {
  1112. max-width: 100%;
  1113. }
  1114. .tsd-anchor-icon {
  1115. display: inline-flex;
  1116. align-items: center;
  1117. margin-left: 0.5rem;
  1118. vertical-align: middle;
  1119. color: var(--color-text);
  1120. }
  1121. .tsd-anchor-icon svg {
  1122. width: 1em;
  1123. height: 1em;
  1124. visibility: hidden;
  1125. }
  1126. .tsd-anchor-link:hover > .tsd-anchor-icon svg {
  1127. visibility: visible;
  1128. }
  1129. .deprecated {
  1130. text-decoration: line-through;
  1131. }
  1132. * {
  1133. scrollbar-width: thin;
  1134. scrollbar-color: var(--color-accent) var(--color-icon-background);
  1135. }
  1136. *::-webkit-scrollbar {
  1137. width: 0.75rem;
  1138. }
  1139. *::-webkit-scrollbar-track {
  1140. background: var(--color-icon-background);
  1141. }
  1142. *::-webkit-scrollbar-thumb {
  1143. background-color: var(--color-accent);
  1144. border-radius: 999rem;
  1145. border: 0.25rem solid var(--color-icon-background);
  1146. }