Browse Source

Generate API docs with custom theme

Alex Dima 8 years ago
parent
commit
b817dda06a
34 changed files with 1698 additions and 2 deletions
  1. 5 2
      gulpfile.js
  2. 865 0
      website/typedoc-theme/assets/css/main.css
  3. 2 0
      website/typedoc-theme/assets/css/main.css.map
  4. BIN
      website/typedoc-theme/assets/images/icons.png
  5. BIN
      website/typedoc-theme/assets/images/icons@2x.png
  6. BIN
      website/typedoc-theme/assets/images/widgets.png
  7. BIN
      website/typedoc-theme/assets/images/widgets@2x.png
  8. 0 0
      website/typedoc-theme/assets/js/main.js
  9. 51 0
      website/typedoc-theme/layouts/default.hbs
  10. 11 0
      website/typedoc-theme/partials/analytics.hbs
  11. 16 0
      website/typedoc-theme/partials/breadcrumb.hbs
  12. 22 0
      website/typedoc-theme/partials/comment.hbs
  13. 66 0
      website/typedoc-theme/partials/footer.hbs
  14. 71 0
      website/typedoc-theme/partials/header.hbs
  15. 17 0
      website/typedoc-theme/partials/hierarchy.hbs
  16. 19 0
      website/typedoc-theme/partials/index.hbs
  17. 22 0
      website/typedoc-theme/partials/member.declaration.hbs
  18. 37 0
      website/typedoc-theme/partials/member.getterSetter.hbs
  19. 22 0
      website/typedoc-theme/partials/member.hbs
  20. 56 0
      website/typedoc-theme/partials/member.signature.body.hbs
  21. 28 0
      website/typedoc-theme/partials/member.signature.title.hbs
  22. 13 0
      website/typedoc-theme/partials/member.signatures.hbs
  23. 22 0
      website/typedoc-theme/partials/member.sources.hbs
  24. 8 0
      website/typedoc-theme/partials/members.group.hbs
  25. 5 0
      website/typedoc-theme/partials/members.hbs
  26. 26 0
      website/typedoc-theme/partials/navigation.hbs
  27. 81 0
      website/typedoc-theme/partials/parameter.hbs
  28. 10 0
      website/typedoc-theme/partials/toc.hbs
  29. 18 0
      website/typedoc-theme/partials/toc.root.hbs
  30. 71 0
      website/typedoc-theme/partials/type.hbs
  31. 38 0
      website/typedoc-theme/partials/typeAndParent.hbs
  32. 14 0
      website/typedoc-theme/partials/typeParameters.hbs
  33. 3 0
      website/typedoc-theme/templates/index.hbs
  34. 79 0
      website/typedoc-theme/templates/reflection.hbs

+ 5 - 2
gulpfile.js

@@ -240,7 +240,10 @@ gulp.task('website', ['clean-website'], function() {
 
 
 	return (
 	return (
 		es.merge(
 		es.merge(
-			gulp.src('website/**/*', { dot: true })
+			gulp.src([
+				'website/**/*',
+				'!website/typedoc-theme/**'
+			], { dot: true })
 			.pipe(es.through(function(data) {
 			.pipe(es.through(function(data) {
 				if (!data.contents || !/\.(html)$/.test(data.path)) {
 				if (!data.contents || !/\.(html)$/.test(data.path)) {
 					return this.emit('data', data);
 					return this.emit('data', data);
@@ -263,7 +266,7 @@ gulp.task('website', ['clean-website'], function() {
 				mode: 'file',
 				mode: 'file',
 				out: '../monaco-editor-website/api',
 				out: '../monaco-editor-website/api',
 				includeDeclarations: true,
 				includeDeclarations: true,
-				theme: 'default',
+				theme: 'website/typedoc-theme',
 				entryPoint: 'monaco',
 				entryPoint: 'monaco',
 				name: 'Monaco Editor API v' + MONACO_EDITOR_VERSION,
 				name: 'Monaco Editor API v' + MONACO_EDITOR_VERSION,
 				readme: 'none',
 				readme: 'none',

+ 865 - 0
website/typedoc-theme/assets/css/main.css

@@ -0,0 +1,865 @@
+/*! normalize.css v1.1.3 | MIT License | git.io/normalize */
+/* ========================================================================== HTML5 display definitions ========================================================================== */
+/** Correct `block` display not defined in IE 6/7/8/9 and Firefox 3. */
+article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
+
+/** Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3. */
+audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
+
+/** Prevent modern browsers from displaying `audio` without controls. Remove excess height in iOS 5 devices. */
+audio:not([controls]) { display: none; height: 0; }
+
+/** Address styling not present in IE 7/8/9, Firefox 3, and Safari 4. Known issue: no IE 6 support. */
+[hidden] { display: none; }
+
+/* ========================================================================== Base ========================================================================== */
+/** 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using `em` units. 2. Prevent iOS text size adjust after orientation change, without disabling user zoom. */
+html { font-size: 100%; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ font-family: sans-serif; }
+
+/** Address `font-family` inconsistency between `textarea` and other form elements. */
+button, input, select, textarea { font-family: sans-serif; }
+
+/** Address margins handled incorrectly in IE 6/7. */
+body { margin: 0; }
+
+/* ========================================================================== Links ========================================================================== */
+/** Address `outline` inconsistency between Chrome and other browsers. */
+a:focus { outline: thin dotted; }
+a:active, a:hover { outline: 0; }
+
+/** Improve readability when focused and also mouse hovered in all browsers. */
+/* ========================================================================== Typography ========================================================================== */
+/** Address font sizes and margins set differently in IE 6/7. Address font sizes within `section` and `article` in Firefox 4+, Safari 5, and Chrome. */
+h1 { font-size: 2em; margin: 0.67em 0; }
+
+h2 { font-size: 1.5em; margin: 0.83em 0; }
+
+h3 { font-size: 1.17em; margin: 1em 0; }
+
+h4, .tsd-index-panel h3 { font-size: 1em; margin: 1.33em 0; }
+
+h5 { font-size: 0.83em; margin: 1.67em 0; }
+
+h6 { font-size: 0.67em; margin: 2.33em 0; }
+
+/** Address styling not present in IE 7/8/9, Safari 5, and Chrome. */
+abbr[title] { border-bottom: 1px dotted; }
+
+/** Address style set to `bolder` in Firefox 3+, Safari 4/5, and Chrome. */
+b, strong { font-weight: bold; }
+
+blockquote { margin: 1em 40px; }
+
+/** Address styling not present in Safari 5 and Chrome. */
+dfn { font-style: italic; }
+
+/** Address differences between Firefox and other browsers. Known issue: no IE 6/7 normalization. */
+hr { box-sizing: content-box; height: 0; }
+
+/** Address styling not present in IE 6/7/8/9. */
+mark { background: #ff0; color: #000; }
+
+/** Address margins set differently in IE 6/7. */
+p, pre { margin: 1em 0; }
+
+/** Correct font family set oddly in IE 6, Safari 4/5, and Chrome. */
+code, kbd, pre, samp { font-family: monospace, serif; _font-family: "courier new", monospace; font-size: 1em; }
+
+/** Improve readability of pre-formatted text in all browsers. */
+pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
+
+/** Address CSS quotes not supported in IE 6/7. */
+q { quotes: none; }
+q:before, q:after { content: ""; content: none; }
+
+/** Address `quotes` property not supported in Safari 4. */
+/** Address inconsistent and variable font size in all browsers. */
+small { font-size: 80%; }
+
+/** Prevent `sub` and `sup` affecting `line-height` in all browsers. */
+sub { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
+
+sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; top: -0.5em; }
+
+sub { bottom: -0.25em; }
+
+/* ========================================================================== Lists ========================================================================== */
+/** Address margins set differently in IE 6/7. */
+dl, menu, ol, ul { margin: 1em 0; }
+
+dd { margin: 0 0 0 40px; }
+
+/** Address paddings set differently in IE 6/7. */
+menu, ol, ul { padding: 0 0 0 40px; }
+
+/** Correct list images handled incorrectly in IE 7. */
+nav ul, nav ol { list-style: none; list-style-image: none; }
+
+/* ========================================================================== Embedded content ========================================================================== */
+/** 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3. 2. Improve image quality when scaled in IE 7. */
+img { border: 0; /* 1 */ -ms-interpolation-mode: bicubic; }
+
+/* 2 */
+/** Correct overflow displayed oddly in IE 9. */
+svg:not(:root) { overflow: hidden; }
+
+/* ========================================================================== Figures ========================================================================== */
+/** Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11. */
+figure, form { margin: 0; }
+
+/* ========================================================================== Forms ========================================================================== */
+/** Correct margin displayed oddly in IE 6/7. */
+/** Define consistent border, margin, and padding. */
+fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }
+
+/** 1. Correct color not being inherited in IE 6/7/8/9. 2. Correct text not wrapping in Firefox 3. 3. Correct alignment displayed oddly in IE 6/7. */
+legend { border: 0; /* 1 */ padding: 0; white-space: normal; /* 2 */ *margin-left: -7px; }
+
+/* 3 */
+/** 1. Correct font size not being inherited in all browsers. 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5, and Chrome. 3. Improve appearance and consistency in all browsers. */
+button, input, select, textarea { font-size: 100%; /* 1 */ margin: 0; /* 2 */ vertical-align: baseline; /* 3 */ *vertical-align: middle; }
+
+/* 3 */
+/** Address Firefox 3+ setting `line-height` on `input` using `!important` in the UA stylesheet. */
+button, input { line-height: normal; }
+
+/** Address inconsistent `text-transform` inheritance for `button` and `select`. All other form control elements do not inherit `text-transform` values. Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+. Correct `select` style inheritance in Firefox 4+ and Opera. */
+button, select { text-transform: none; }
+
+/** 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio` and `video` controls. 2. Correct inability to style clickable `input` types in iOS. 3. Improve usability and consistency of cursor style between image-type `input` and others. 4. Remove inner spacing in IE 7 without affecting normal text inputs. Known issue: inner spacing remains in IE 6. */
+button, html input[type="button"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ *overflow: visible; }
+
+/* 4 */
+input[type="reset"], input[type="submit"] { -webkit-appearance: button; /* 2 */ cursor: pointer; /* 3 */ *overflow: visible; }
+
+/* 4 */
+/** Re-set default cursor for disabled elements. */
+button[disabled], html input[disabled] { cursor: default; }
+
+/** 1. Address box sizing set to content-box in IE 8/9. 2. Remove excess padding in IE 8/9. 3. Remove excess padding in IE 7. Known issue: excess padding remains in IE 6. */
+input { /* 3 */ }
+input[type="checkbox"], input[type="radio"] { box-sizing: border-box; /* 1 */ padding: 0; /* 2 */ *height: 13px; /* 3 */ *width: 13px; }
+input[type="search"] { -webkit-appearance: textfield; /* 1 */ /* 2 */ box-sizing: content-box; }
+input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
+
+/** 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome. 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome (include `-moz` to future-proof). */
+/** Remove inner padding and search cancel button in Safari 5 and Chrome on OS X. */
+/** Remove inner padding and border in Firefox 3+. */
+button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
+
+/** 1. Remove default vertical scrollbar in IE 6/7/8/9. 2. Improve readability and alignment in all browsers. */
+textarea { overflow: auto; /* 1 */ vertical-align: top; }
+
+/* 2 */
+/* ========================================================================== Tables ========================================================================== */
+/** Remove most spacing between table cells. */
+table { border-collapse: collapse; border-spacing: 0; }
+
+/* Visual Studio-like style based on original C# coloring by Jason Diamond <jason@diamond.name> */
+.hljs { display: inline-block; padding: 0.5em; background: white; color: black; }
+
+.hljs-comment, .hljs-annotation, .hljs-template_comment, .diff .hljs-header, .hljs-chunk, .apache .hljs-cbracket { color: #008000; }
+
+.hljs-keyword, .hljs-id, .hljs-built_in, .css .smalltalk .hljs-class, .hljs-winutils, .bash .hljs-variable, .tex .hljs-command, .hljs-request, .hljs-status, .nginx .hljs-title { color: #00f; }
+
+.xml .hljs-tag { color: #00f; }
+.xml .hljs-tag .hljs-value { color: #00f; }
+
+.hljs-string, .hljs-title, .hljs-parent, .hljs-tag .hljs-value, .hljs-rules .hljs-value { color: #a31515; }
+
+.ruby .hljs-symbol { color: #a31515; }
+.ruby .hljs-symbol .hljs-string { color: #a31515; }
+
+.hljs-template_tag, .django .hljs-variable, .hljs-addition, .hljs-flow, .hljs-stream, .apache .hljs-tag, .hljs-date, .tex .hljs-formula, .coffeescript .hljs-attribute { color: #a31515; }
+
+.ruby .hljs-string, .hljs-decorator, .hljs-filter .hljs-argument, .hljs-localvars, .hljs-array, .hljs-attr_selector, .hljs-pseudo, .hljs-pi, .hljs-doctype, .hljs-deletion, .hljs-envvar, .hljs-shebang, .hljs-preprocessor, .hljs-pragma, .userType, .apache .hljs-sqbracket, .nginx .hljs-built_in, .tex .hljs-special, .hljs-prompt { color: #2b91af; }
+
+.hljs-phpdoc, .hljs-javadoc, .hljs-xmlDocTag { color: #808080; }
+
+.vhdl .hljs-typename { font-weight: bold; }
+.vhdl .hljs-string { color: #666666; }
+.vhdl .hljs-literal { color: #a31515; }
+.vhdl .hljs-attribute { color: #00b0e8; }
+
+.xml .hljs-attribute { color: #f00; }
+
+.col > :first-child, .col-1 > :first-child, .col-2 > :first-child, .col-3 > :first-child, .col-4 > :first-child, .col-5 > :first-child, .col-6 > :first-child, .col-7 > :first-child, .col-8 > :first-child, .col-9 > :first-child, .col-10 > :first-child, .col-11 > :first-child, .tsd-panel > :first-child, ul.tsd-descriptions > li > :first-child, .col > :first-child > :first-child, .col-1 > :first-child > :first-child, .col-2 > :first-child > :first-child, .col-3 > :first-child > :first-child, .col-4 > :first-child > :first-child, .col-5 > :first-child > :first-child, .col-6 > :first-child > :first-child, .col-7 > :first-child > :first-child, .col-8 > :first-child > :first-child, .col-9 > :first-child > :first-child, .col-10 > :first-child > :first-child, .col-11 > :first-child > :first-child, .tsd-panel > :first-child > :first-child, ul.tsd-descriptions > li > :first-child > :first-child, .col > :first-child > :first-child > :first-child, .col-1 > :first-child > :first-child > :first-child, .col-2 > :first-child > :first-child > :first-child, .col-3 > :first-child > :first-child > :first-child, .col-4 > :first-child > :first-child > :first-child, .col-5 > :first-child > :first-child > :first-child, .col-6 > :first-child > :first-child > :first-child, .col-7 > :first-child > :first-child > :first-child, .col-8 > :first-child > :first-child > :first-child, .col-9 > :first-child > :first-child > :first-child, .col-10 > :first-child > :first-child > :first-child, .col-11 > :first-child > :first-child > :first-child, .tsd-panel > :first-child > :first-child > :first-child, ul.tsd-descriptions > li > :first-child > :first-child > :first-child { margin-top: 0; }
+.col > :last-child, .col-1 > :last-child, .col-2 > :last-child, .col-3 > :last-child, .col-4 > :last-child, .col-5 > :last-child, .col-6 > :last-child, .col-7 > :last-child, .col-8 > :last-child, .col-9 > :last-child, .col-10 > :last-child, .col-11 > :last-child, .tsd-panel > :last-child, ul.tsd-descriptions > li > :last-child, .col > :last-child > :last-child, .col-1 > :last-child > :last-child, .col-2 > :last-child > :last-child, .col-3 > :last-child > :last-child, .col-4 > :last-child > :last-child, .col-5 > :last-child > :last-child, .col-6 > :last-child > :last-child, .col-7 > :last-child > :last-child, .col-8 > :last-child > :last-child, .col-9 > :last-child > :last-child, .col-10 > :last-child > :last-child, .col-11 > :last-child > :last-child, .tsd-panel > :last-child > :last-child, ul.tsd-descriptions > li > :last-child > :last-child, .col > :last-child > :last-child > :last-child, .col-1 > :last-child > :last-child > :last-child, .col-2 > :last-child > :last-child > :last-child, .col-3 > :last-child > :last-child > :last-child, .col-4 > :last-child > :last-child > :last-child, .col-5 > :last-child > :last-child > :last-child, .col-6 > :last-child > :last-child > :last-child, .col-7 > :last-child > :last-child > :last-child, .col-8 > :last-child > :last-child > :last-child, .col-9 > :last-child > :last-child > :last-child, .col-10 > :last-child > :last-child > :last-child, .col-11 > :last-child > :last-child > :last-child, .tsd-panel > :last-child > :last-child > :last-child, ul.tsd-descriptions > li > :last-child > :last-child > :last-child { margin-bottom: 0; }
+
+.container { max-width: 1200px; margin: 0 auto; padding: 0 40px; }
+@media (max-width: 640px) { .container { padding: 0 20px; } }
+
+.container-main { padding-bottom: 200px; }
+
+.row { position: relative; margin: 0 -10px; }
+.row:after { visibility: hidden; display: block; content: ""; clear: both; height: 0; }
+
+.col, .col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11 { box-sizing: border-box; float: left; padding: 0 10px; }
+
+.col-1 { width: 8.33333%; }
+
+.offset-1 { margin-left: 8.33333%; }
+
+.col-2 { width: 16.66667%; }
+
+.offset-2 { margin-left: 16.66667%; }
+
+.col-3 { width: 25%; }
+
+.offset-3 { margin-left: 25%; }
+
+.col-4 { width: 33.33333%; }
+
+.offset-4 { margin-left: 33.33333%; }
+
+.col-5 { width: 41.66667%; }
+
+.offset-5 { margin-left: 41.66667%; }
+
+.col-6 { width: 50%; }
+
+.offset-6 { margin-left: 50%; }
+
+.col-7 { width: 58.33333%; }
+
+.offset-7 { margin-left: 58.33333%; }
+
+.col-8 { width: 66.66667%; }
+
+.offset-8 { margin-left: 66.66667%; }
+
+.col-9 { width: 75%; }
+
+.offset-9 { margin-left: 75%; }
+
+.col-10 { width: 83.33333%; }
+
+.offset-10 { margin-left: 83.33333%; }
+
+.col-11 { width: 91.66667%; }
+
+.offset-11 { margin-left: 91.66667%; }
+
+.tsd-kind-icon { display: block; position: relative; padding-left: 20px; text-indent: -20px; }
+.tsd-kind-icon:before { content: ''; display: inline-block; vertical-align: middle; width: 17px; height: 17px; margin: 0 3px 2px 0; background-image: url(../images/icons.png); }
+@media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { .tsd-kind-icon:before { background-image: url(../images/icons@2x.png); background-size: 238px 204px; } }
+
+.tsd-signature.tsd-kind-icon:before { background-position: 0 -153px; }
+
+.tsd-kind-object-literal > .tsd-kind-icon:before { background-position: 0px -17px; }
+.tsd-kind-object-literal.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -17px; }
+.tsd-kind-object-literal.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -17px; }
+
+.tsd-kind-class > .tsd-kind-icon:before { background-position: 0px -34px; }
+.tsd-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -34px; }
+.tsd-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -34px; }
+
+.tsd-kind-class.tsd-has-type-parameter > .tsd-kind-icon:before { background-position: 0px -51px; }
+.tsd-kind-class.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -51px; }
+.tsd-kind-class.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -51px; }
+
+.tsd-kind-interface > .tsd-kind-icon:before { background-position: 0px -68px; }
+.tsd-kind-interface.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -68px; }
+.tsd-kind-interface.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -68px; }
+
+.tsd-kind-interface.tsd-has-type-parameter > .tsd-kind-icon:before { background-position: 0px -85px; }
+.tsd-kind-interface.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -85px; }
+.tsd-kind-interface.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -85px; }
+
+.tsd-kind-module > .tsd-kind-icon:before { background-position: 0px -102px; }
+.tsd-kind-module.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -102px; }
+.tsd-kind-module.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -102px; }
+
+.tsd-kind-external-module > .tsd-kind-icon:before { background-position: 0px -102px; }
+.tsd-kind-external-module.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -102px; }
+.tsd-kind-external-module.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -102px; }
+
+.tsd-kind-enum > .tsd-kind-icon:before { background-position: 0px -119px; }
+.tsd-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -119px; }
+.tsd-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -119px; }
+
+.tsd-kind-enum-member > .tsd-kind-icon:before { background-position: 0px -136px; }
+.tsd-kind-enum-member.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -136px; }
+.tsd-kind-enum-member.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -136px; }
+
+.tsd-kind-signature > .tsd-kind-icon:before { background-position: 0px -153px; }
+.tsd-kind-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -153px; }
+.tsd-kind-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -153px; }
+
+.tsd-kind-type-alias > .tsd-kind-icon:before { background-position: 0px -170px; }
+.tsd-kind-type-alias.tsd-is-protected > .tsd-kind-icon:before { background-position: -17px -170px; }
+.tsd-kind-type-alias.tsd-is-private > .tsd-kind-icon:before { background-position: -34px -170px; }
+
+.tsd-kind-variable > .tsd-kind-icon:before { background-position: -136px -0px; }
+.tsd-kind-variable.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -0px; }
+.tsd-kind-variable.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-variable.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -0px; }
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -0px; }
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -0px; }
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -0px; }
+.tsd-kind-variable.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-variable.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -0px; }
+.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -0px; }
+.tsd-kind-variable.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-variable.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -0px; }
+.tsd-kind-variable.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -0px; }
+
+.tsd-kind-property > .tsd-kind-icon:before { background-position: -136px -0px; }
+.tsd-kind-property.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -0px; }
+.tsd-kind-property.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-property.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -0px; }
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -0px; }
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -0px; }
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -0px; }
+.tsd-kind-property.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-property.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -0px; }
+.tsd-kind-property.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -0px; }
+.tsd-kind-property.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -0px; }
+.tsd-kind-property.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -0px; }
+.tsd-kind-property.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -0px; }
+
+.tsd-kind-get-signature > .tsd-kind-icon:before { background-position: -136px -17px; }
+.tsd-kind-get-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -17px; }
+.tsd-kind-get-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -17px; }
+.tsd-kind-get-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -17px; }
+
+.tsd-kind-set-signature > .tsd-kind-icon:before { background-position: -136px -34px; }
+.tsd-kind-set-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -34px; }
+.tsd-kind-set-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -34px; }
+.tsd-kind-set-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -34px; }
+
+.tsd-kind-accessor > .tsd-kind-icon:before { background-position: -136px -51px; }
+.tsd-kind-accessor.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -51px; }
+.tsd-kind-accessor.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -51px; }
+.tsd-kind-accessor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -51px; }
+
+.tsd-kind-function > .tsd-kind-icon:before { background-position: -136px -68px; }
+.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -68px; }
+.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -68px; }
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -68px; }
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -68px; }
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -68px; }
+.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -68px; }
+.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -68px; }
+.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -68px; }
+.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -68px; }
+
+.tsd-kind-method > .tsd-kind-icon:before { background-position: -136px -68px; }
+.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -68px; }
+.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -68px; }
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -68px; }
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -68px; }
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -68px; }
+.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -68px; }
+.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -68px; }
+.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -68px; }
+.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -68px; }
+
+.tsd-kind-call-signature > .tsd-kind-icon:before { background-position: -136px -68px; }
+.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -68px; }
+.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -68px; }
+.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -68px; }
+
+.tsd-kind-function.tsd-has-type-parameter > .tsd-kind-icon:before { background-position: -136px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -85px; }
+.tsd-kind-function.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -85px; }
+
+.tsd-kind-method.tsd-has-type-parameter > .tsd-kind-icon:before { background-position: -136px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -85px; }
+.tsd-kind-method.tsd-has-type-parameter.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -85px; }
+
+.tsd-kind-constructor > .tsd-kind-icon:before { background-position: -136px -102px; }
+.tsd-kind-constructor.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -102px; }
+.tsd-kind-constructor.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -102px; }
+.tsd-kind-constructor.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -102px; }
+
+.tsd-kind-constructor-signature > .tsd-kind-icon:before { background-position: -136px -102px; }
+.tsd-kind-constructor-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -102px; }
+.tsd-kind-constructor-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -102px; }
+.tsd-kind-constructor-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -102px; }
+
+.tsd-kind-index-signature > .tsd-kind-icon:before { background-position: -136px -119px; }
+.tsd-kind-index-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -119px; }
+.tsd-kind-index-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -119px; }
+.tsd-kind-index-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -119px; }
+
+.tsd-kind-event > .tsd-kind-icon:before { background-position: -136px -136px; }
+.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -136px; }
+.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -136px; }
+.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -136px; }
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -136px; }
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -136px; }
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -136px; }
+.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -136px; }
+.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -136px; }
+.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -136px; }
+.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -136px; }
+.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -136px; }
+.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -136px; }
+
+.tsd-is-static > .tsd-kind-icon:before { background-position: -136px -153px; }
+.tsd-is-static.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -153px; }
+.tsd-is-static.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -153px; }
+.tsd-is-static.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -153px; }
+.tsd-is-static.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -153px; }
+.tsd-is-static.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -153px; }
+.tsd-is-static.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -153px; }
+.tsd-is-static.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -153px; }
+.tsd-is-static.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -153px; }
+.tsd-is-static.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -153px; }
+.tsd-is-static.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -153px; }
+.tsd-is-static.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -153px; }
+.tsd-is-static.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -153px; }
+
+.tsd-is-static.tsd-kind-function > .tsd-kind-icon:before { background-position: -136px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -170px; }
+.tsd-is-static.tsd-kind-function.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-method > .tsd-kind-icon:before { background-position: -136px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -170px; }
+.tsd-is-static.tsd-kind-method.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-call-signature > .tsd-kind-icon:before { background-position: -136px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -170px; }
+.tsd-is-static.tsd-kind-call-signature.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -170px; }
+
+.tsd-is-static.tsd-kind-event > .tsd-kind-icon:before { background-position: -136px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-is-protected > .tsd-kind-icon:before { background-position: -153px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class > .tsd-kind-icon:before { background-position: -51px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-inherited > .tsd-kind-icon:before { background-position: -68px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected > .tsd-kind-icon:before { background-position: -85px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-protected.tsd-is-inherited > .tsd-kind-icon:before { background-position: -102px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-class.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum > .tsd-kind-icon:before { background-position: -170px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-protected > .tsd-kind-icon:before { background-position: -187px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-enum.tsd-is-private > .tsd-kind-icon:before { background-position: -119px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface > .tsd-kind-icon:before { background-position: -204px -187px; }
+.tsd-is-static.tsd-kind-event.tsd-parent-kind-interface.tsd-is-inherited > .tsd-kind-icon:before { background-position: -221px -187px; }
+
+.no-transition { -webkit-transition: none !important; transition: none !important; }
+
+@-webkit-keyframes fade-in { from { opacity: 0; }
+  to { opacity: 1; } }
+
+@keyframes fade-in { from { opacity: 0; }
+  to { opacity: 1; } }
+@-webkit-keyframes fade-out { from { opacity: 1; visibility: visible; }
+  to { opacity: 0; } }
+@keyframes fade-out { from { opacity: 1; visibility: visible; }
+  to { opacity: 0; } }
+@-webkit-keyframes fade-in-delayed { 0% { opacity: 0; }
+  33% { opacity: 0; }
+  100% { opacity: 1; } }
+@keyframes fade-in-delayed { 0% { opacity: 0; }
+  33% { opacity: 0; }
+  100% { opacity: 1; } }
+@-webkit-keyframes fade-out-delayed { 0% { opacity: 1; visibility: visible; }
+  66% { opacity: 0; }
+  100% { opacity: 0; } }
+@keyframes fade-out-delayed { 0% { opacity: 1; visibility: visible; }
+  66% { opacity: 0; }
+  100% { opacity: 0; } }
+@-webkit-keyframes shift-to-left { from { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
+  to { -webkit-transform: translate(-25%, 0); transform: translate(-25%, 0); } }
+@keyframes shift-to-left { from { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
+  to { -webkit-transform: translate(-25%, 0); transform: translate(-25%, 0); } }
+@-webkit-keyframes unshift-to-left { from { -webkit-transform: translate(-25%, 0); transform: translate(-25%, 0); }
+  to { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
+@keyframes unshift-to-left { from { -webkit-transform: translate(-25%, 0); transform: translate(-25%, 0); }
+  to { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
+@-webkit-keyframes pop-in-from-right { from { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); }
+  to { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
+@keyframes pop-in-from-right { from { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); }
+  to { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
+@-webkit-keyframes pop-out-to-right { from { -webkit-transform: translate(0, 0); transform: translate(0, 0); visibility: visible; }
+  to { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); } }
+@keyframes pop-out-to-right { from { -webkit-transform: translate(0, 0); transform: translate(0, 0); visibility: visible; }
+  to { -webkit-transform: translate(100%, 0); transform: translate(100%, 0); } }
+body { background: #fdfdfd; font-family: "Segoe UI", sans-serif; font-size: 16px; color: #222; }
+
+a { color: #4da6ff; text-decoration: none; }
+a:hover { text-decoration: underline; }
+
+code, pre { font-family: Menlo, Monaco, Consolas, "Courier New", monospace; padding: 0.2em; margin: 0; font-size: 14px; background-color: rgba(0, 0, 0, 0.04); }
+
+pre { padding: 10px; }
+pre code { padding: 0; font-size: 100%; background-color: transparent; }
+
+.tsd-typography { line-height: 1.333em; }
+.tsd-typography ul { list-style: square; padding: 0 0 0 20px; margin: 0; }
+.tsd-typography h4, .tsd-typography .tsd-index-panel h3, .tsd-index-panel .tsd-typography h3, .tsd-typography h5, .tsd-typography h6 { font-size: 1em; margin: 0; }
+.tsd-typography h5, .tsd-typography h6 { font-weight: normal; }
+.tsd-typography p, .tsd-typography ul, .tsd-typography ol { margin: 1em 0; }
+
+@media (min-width: 901px) and (max-width: 1024px) { html.default .col-content { width: 72%; }
+  html.default .col-menu { width: 28%; }
+  html.default .tsd-navigation { padding-left: 10px; } }
+@media (max-width: 900px) { html.default .col-content { float: none; width: 100%; }
+  html.default .col-menu { position: fixed !important; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; z-index: 1024; top: 0 !important; bottom: 0 !important; left: auto !important; right: 0 !important; width: 100%; padding: 20px 20px 0 0; max-width: 450px; visibility: hidden; background-color: #fff; -webkit-transform: translate(100%, 0); transform: translate(100%, 0); }
+  html.default .col-menu > *:last-child { padding-bottom: 20px; }
+  html.default .overlay { content: ""; display: block; position: fixed; z-index: 1023; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.75); visibility: hidden; }
+  html.default.to-has-menu .overlay { -webkit-animation: fade-in 0.4s; animation: fade-in 0.4s; }
+  html.default.to-has-menu header, html.default.to-has-menu footer, html.default.to-has-menu .col-content { -webkit-animation: shift-to-left 0.4s; animation: shift-to-left 0.4s; }
+  html.default.to-has-menu .col-menu { -webkit-animation: pop-in-from-right 0.4s; animation: pop-in-from-right 0.4s; }
+  html.default.from-has-menu .overlay { -webkit-animation: fade-out 0.4s; animation: fade-out 0.4s; }
+  html.default.from-has-menu header, html.default.from-has-menu footer, html.default.from-has-menu .col-content { -webkit-animation: unshift-to-left 0.4s; animation: unshift-to-left 0.4s; }
+  html.default.from-has-menu .col-menu { -webkit-animation: pop-out-to-right 0.4s; animation: pop-out-to-right 0.4s; }
+  html.default.has-menu body { overflow: hidden; }
+  html.default.has-menu .overlay { visibility: visible; }
+  html.default.has-menu header, html.default.has-menu footer, html.default.has-menu .col-content { -webkit-transform: translate(-25%, 0); transform: translate(-25%, 0); }
+  html.default.has-menu .col-menu { visibility: visible; -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
+
+.tsd-page-title { padding: 70px 0 20px 0; margin: 0 0 40px 0; background: #fff; box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); }
+.tsd-page-title h1 { margin: 0; }
+
+.tsd-breadcrumb { margin: 0; padding: 0; color: #808080; }
+.tsd-breadcrumb a { color: #808080; text-decoration: none; }
+.tsd-breadcrumb a:hover { text-decoration: underline; }
+.tsd-breadcrumb li { display: inline; }
+.tsd-breadcrumb li:after { content: " / "; }
+
+html.minimal .container { margin: 0; }
+html.minimal .container-main { padding-top: 50px; padding-bottom: 0; }
+html.minimal .content-wrap { padding-left: 300px; }
+html.minimal .tsd-navigation { position: fixed !important; overflow: auto; -webkit-overflow-scrolling: touch; overflow-scrolling: touch; box-sizing: border-box; z-index: 1; left: 0; top: 40px; bottom: 0; width: 300px; padding: 20px; margin: 0; }
+html.minimal .tsd-member .tsd-member { margin-left: 0; }
+html.minimal .tsd-page-toolbar { position: fixed; z-index: 2; }
+html.minimal #tsd-filter .tsd-filter-group { right: 0; -webkit-transform: none; transform: none; }
+html.minimal footer { background-color: transparent; }
+html.minimal footer .container { padding: 0; }
+html.minimal .tsd-generator { padding: 0; }
+@media (max-width: 900px) { html.minimal .tsd-navigation { display: none; }
+  html.minimal .content-wrap { padding-left: 0; } }
+
+dl.tsd-comment-tags { overflow: hidden; }
+dl.tsd-comment-tags dt { clear: both; float: left; padding: 1px 5px; margin: 0 10px 0 0; border-radius: 4px; border: 1px solid #808080; color: #808080; font-size: 0.8em; font-weight: normal; }
+dl.tsd-comment-tags dd { margin: 0 0 10px 0; }
+dl.tsd-comment-tags p { margin: 0; }
+
+.tsd-panel.tsd-comment .lead { font-size: 1.1em; line-height: 1.333em; margin-bottom: 2em; }
+.tsd-panel.tsd-comment .lead:last-child { margin-bottom: 0; }
+
+.toggle-protected .tsd-is-private { display: none; }
+
+.toggle-public .tsd-is-private, .toggle-public .tsd-is-protected, .toggle-public .tsd-is-private-protected { display: none; }
+
+.toggle-inherited .tsd-is-inherited { display: none; }
+
+.toggle-only-exported .tsd-is-not-exported { display: none; }
+
+.toggle-externals .tsd-is-external { display: none; }
+
+#tsd-filter { position: relative; display: inline-block; height: 40px; vertical-align: bottom; }
+.no-filter #tsd-filter { display: none; }
+#tsd-filter .tsd-filter-group { display: inline-block; height: 40px; vertical-align: bottom; white-space: nowrap; }
+#tsd-filter input { display: none; }
+@media (max-width: 900px) { #tsd-filter .tsd-filter-group { display: block; position: absolute; top: 40px; right: 20px; height: auto; background-color: #fff; visibility: hidden; -webkit-transform: translate(50%, 0); transform: translate(50%, 0); box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+  .has-options #tsd-filter .tsd-filter-group { visibility: visible; }
+  .to-has-options #tsd-filter .tsd-filter-group { -webkit-animation: fade-in 0.2s; animation: fade-in 0.2s; }
+  .from-has-options #tsd-filter .tsd-filter-group { -webkit-animation: fade-out 0.2s; animation: fade-out 0.2s; }
+  #tsd-filter label, #tsd-filter .tsd-select { display: block; padding-right: 20px; } }
+
+footer { border-top: 1px solid #eee; background-color: #fff; }
+footer.with-border-bottom { border-bottom: 1px solid #eee; }
+footer .tsd-legend-group { font-size: 0; }
+footer .tsd-legend { display: inline-block; width: 25%; padding: 0; font-size: 16px; list-style: none; line-height: 1.333em; vertical-align: top; }
+@media (max-width: 900px) { footer .tsd-legend { width: 50%; } }
+
+.tsd-hierarchy { list-style: square; padding: 0 0 0 20px; margin: 0; }
+.tsd-hierarchy .target { font-weight: bold; }
+
+.tsd-index-panel .tsd-index-content { margin-bottom: -30px !important; }
+.tsd-index-panel .tsd-index-section { margin-bottom: 30px !important; }
+.tsd-index-panel h3 { margin: 0 -20px 10px -20px; padding: 0 20px 10px 20px; border-bottom: 1px solid #eee; }
+.tsd-index-panel ul.tsd-index-list { -webkit-column-count: 3; -moz-column-count: 3; -ms-column-count: 3; -o-column-count: 3; column-count: 3; -webkit-column-gap: 20px; -moz-column-gap: 20px; -ms-column-gap: 20px; -o-column-gap: 20px; column-gap: 20px; padding: 0; list-style: none; line-height: 1.333em; }
+@media (max-width: 900px) { .tsd-index-panel ul.tsd-index-list { -webkit-column-count: 1; -moz-column-count: 1; -ms-column-count: 1; -o-column-count: 1; column-count: 1; } }
+@media (min-width: 901px) and (max-width: 1024px) { .tsd-index-panel ul.tsd-index-list { -webkit-column-count: 2; -moz-column-count: 2; -ms-column-count: 2; -o-column-count: 2; column-count: 2; } }
+.tsd-index-panel ul.tsd-index-list li { -webkit-column-break-inside: avoid; -moz-column-break-inside: avoid; -ms-column-break-inside: avoid; -o-column-break-inside: avoid; column-break-inside: avoid; -webkit-page-break-inside: avoid; -moz-page-break-inside: avoid; -ms-page-break-inside: avoid; -o-page-break-inside: avoid; page-break-inside: avoid; }
+.tsd-index-panel a, .tsd-index-panel .tsd-parent-kind-module a { color: #9600ff; }
+.tsd-index-panel .tsd-parent-kind-interface a { color: #7da01f; }
+.tsd-index-panel .tsd-parent-kind-enum a { color: #cc9900; }
+.tsd-index-panel .tsd-parent-kind-class a { color: #4da6ff; }
+.tsd-index-panel .tsd-kind-module a { color: #9600ff; }
+.tsd-index-panel .tsd-kind-interface a { color: #7da01f; }
+.tsd-index-panel .tsd-kind-enum a { color: #cc9900; }
+.tsd-index-panel .tsd-kind-class a { color: #4da6ff; }
+.tsd-index-panel .tsd-is-private a { color: #808080; }
+
+.tsd-flag { display: inline-block; padding: 1px 5px; border-radius: 4px; color: #fff; background-color: #808080; text-indent: 0; font-size: 14px; font-weight: normal; }
+
+.tsd-anchor { position: absolute; top: -100px; }
+
+.tsd-member { position: relative; }
+.tsd-member .tsd-anchor + h3 { margin-top: 0; margin-bottom: 0; border-bottom: none; }
+
+.tsd-navigation { padding: 0 0 0 40px; }
+.tsd-navigation a { display: block; padding-top: 2px; padding-bottom: 2px; border-left: 2px solid transparent; color: #222; text-decoration: none; -webkit-transition: border-left-color 0.1s; transition: border-left-color 0.1s; }
+.tsd-navigation a:hover { text-decoration: underline; }
+.tsd-navigation ul { margin: 0; padding: 0; list-style: none; }
+.tsd-navigation li { padding: 0; }
+
+.tsd-navigation.primary { padding-bottom: 40px; }
+.tsd-navigation.primary a { display: block; padding-top: 6px; padding-bottom: 6px; }
+.tsd-navigation.primary ul li a { padding-left: 5px; }
+.tsd-navigation.primary ul li li a { padding-left: 25px; }
+.tsd-navigation.primary ul li li li a { padding-left: 45px; }
+.tsd-navigation.primary ul li li li li a { padding-left: 65px; }
+.tsd-navigation.primary ul li li li li li a { padding-left: 85px; }
+.tsd-navigation.primary ul li li li li li li a { padding-left: 105px; }
+.tsd-navigation.primary > ul { border-bottom: 1px solid #eee; }
+.tsd-navigation.primary li { border-top: 1px solid #eee; }
+.tsd-navigation.primary li.current > a { font-weight: bold; }
+.tsd-navigation.primary li.label span { display: block; padding: 20px 0 6px 5px; color: #808080; }
+.tsd-navigation.primary li.globals + li > span, .tsd-navigation.primary li.globals + li > a { padding-top: 20px; }
+
+.tsd-navigation.secondary ul { -webkit-transition: opacity 0.2s; transition: opacity 0.2s; }
+.tsd-navigation.secondary ul li a { padding-left: 25px; }
+.tsd-navigation.secondary ul li li a { padding-left: 45px; }
+.tsd-navigation.secondary ul li li li a { padding-left: 65px; }
+.tsd-navigation.secondary ul li li li li a { padding-left: 85px; }
+.tsd-navigation.secondary ul li li li li li a { padding-left: 105px; }
+.tsd-navigation.secondary ul li li li li li li a { padding-left: 125px; }
+.tsd-navigation.secondary ul.current a { border-left-color: #eee; }
+.tsd-navigation.secondary li.focus > a, .tsd-navigation.secondary ul.current li.focus > a { border-left-color: #000; }
+.tsd-navigation.secondary li.current { margin-top: 20px; margin-bottom: 20px; border-left-color: #eee; }
+.tsd-navigation.secondary li.current > a { font-weight: bold; }
+
+@media (min-width: 901px) { .menu-sticky-wrap { position: static; }
+  .no-csspositionsticky .menu-sticky-wrap.sticky { position: fixed; }
+  .no-csspositionsticky .menu-sticky-wrap.sticky-current { position: fixed; }
+  .no-csspositionsticky .menu-sticky-wrap.sticky-current ul.before-current, .no-csspositionsticky .menu-sticky-wrap.sticky-current ul.after-current { opacity: 0; }
+  .no-csspositionsticky .menu-sticky-wrap.sticky-bottom { position: absolute; top: auto !important; left: auto !important; bottom: 0; right: 0; }
+  .csspositionsticky .menu-sticky-wrap.sticky { position: -webkit-sticky; position: sticky; }
+  .csspositionsticky .menu-sticky-wrap.sticky-current { position: -webkit-sticky; position: sticky; } }
+
+.tsd-panel { margin: 20px 0; padding: 20px; background-color: #fff; box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+.tsd-panel:empty { display: none; }
+.tsd-panel > h1, .tsd-panel > h2, .tsd-panel > h3 { margin: 1.5em -20px 10px -20px; padding: 0 20px 10px 20px; border-bottom: 1px solid #eee; }
+.tsd-panel > h1.tsd-before-signature, .tsd-panel > h2.tsd-before-signature, .tsd-panel > h3.tsd-before-signature { margin-bottom: 0; border-bottom: 0; }
+.tsd-panel table { display: block; width: 100%; overflow: auto; margin-top: 10px; word-break: normal; word-break: keep-all; }
+.tsd-panel table th { font-weight: bold; }
+.tsd-panel table th, .tsd-panel table td { padding: 6px 13px; border: 1px solid #ddd; }
+.tsd-panel table tr { background-color: #fff; border-top: 1px solid #ccc; }
+.tsd-panel table tr:nth-child(2n) { background-color: #f8f8f8; }
+
+.tsd-panel-group { margin: 60px 0; }
+.tsd-panel-group > h1, .tsd-panel-group > h2, .tsd-panel-group > h3 { padding-left: 20px; padding-right: 20px; }
+
+#tsd-search { -webkit-transition: background-color 0.2s; transition: background-color 0.2s; }
+#tsd-search .title { position: relative; z-index: 2; }
+#tsd-search .field { position: absolute; left: 0; top: 0; right: 40px; height: 40px; }
+#tsd-search .field input { box-sizing: border-box; position: relative; top: -50px; z-index: 1; width: 100%; padding: 0 10px; opacity: 0; outline: 0; border: 0; background: transparent; color: #222; }
+#tsd-search .field label { position: absolute; overflow: hidden; right: -40px; }
+#tsd-search .field input, #tsd-search .title { -webkit-transition: opacity 0.2s; transition: opacity 0.2s; }
+#tsd-search .results { position: absolute; visibility: hidden; top: 40px; width: 100%; margin: 0; padding: 0; list-style: none; box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); }
+#tsd-search .results li { padding: 0 10px; background-color: #fdfdfd; }
+#tsd-search .results li:nth-child(even) { background-color: #fff; }
+#tsd-search .results li.state { display: none; }
+#tsd-search .results li.current, #tsd-search .results li:hover { background-color: #eee; }
+#tsd-search .results a { display: block; }
+#tsd-search .results a:before { top: 10px; }
+#tsd-search .results span.parent { color: #808080; font-weight: normal; }
+#tsd-search.has-focus { background-color: #eee; }
+#tsd-search.has-focus .field input { top: 0; opacity: 1; }
+#tsd-search.has-focus .title { z-index: 0; opacity: 0; }
+#tsd-search.has-focus .results { visibility: visible; }
+#tsd-search.loading .results li.state.loading { display: block; }
+#tsd-search.failure .results li.state.failure { display: block; }
+
+.tsd-signature { margin: 0 0 1em 0; padding: 10px; border: 1px solid #eee; font-family: Menlo, Monaco, Consolas, "Courier New", monospace; font-size: 14px; }
+.tsd-signature.tsd-kind-icon { padding-left: 30px; }
+.tsd-signature.tsd-kind-icon:before { top: 10px; left: 10px; }
+.tsd-panel > .tsd-signature { margin-left: -20px; margin-right: -20px; border-width: 1px 0; }
+.tsd-panel > .tsd-signature.tsd-kind-icon { padding-left: 40px; }
+.tsd-panel > .tsd-signature.tsd-kind-icon:before { left: 20px; }
+
+.tsd-signature-symbol { color: #808080; font-weight: normal; }
+
+.tsd-signature-type { font-style: italic; font-weight: normal; }
+
+.tsd-signatures { padding: 0; margin: 0 0 1em 0; border: 1px solid #eee; }
+.tsd-signatures .tsd-signature { margin: 0; border-width: 1px 0 0 0; -webkit-transition: background-color 0.1s; transition: background-color 0.1s; }
+.tsd-signatures .tsd-signature:first-child { border-top-width: 0; }
+.tsd-signatures .tsd-signature.current { background-color: #eee; }
+.tsd-signatures.active > .tsd-signature { cursor: pointer; }
+.tsd-panel > .tsd-signatures { margin-left: -20px; margin-right: -20px; border-width: 1px 0; }
+.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon { padding-left: 40px; }
+.tsd-panel > .tsd-signatures .tsd-signature.tsd-kind-icon:before { left: 20px; }
+.tsd-panel > a.anchor + .tsd-signatures { border-top-width: 0; margin-top: -20px; }
+
+ul.tsd-descriptions { position: relative; overflow: hidden; -webkit-transition: height 0.3s; transition: height 0.3s; padding: 0; list-style: none; }
+ul.tsd-descriptions.active > .tsd-description { display: none; }
+ul.tsd-descriptions.active > .tsd-description.current { display: block; }
+ul.tsd-descriptions.active > .tsd-description.fade-in { -webkit-animation: fade-in-delayed 0.3s; animation: fade-in-delayed 0.3s; }
+ul.tsd-descriptions.active > .tsd-description.fade-out { -webkit-animation: fade-out-delayed 0.3s; animation: fade-out-delayed 0.3s; position: absolute; display: block; top: 0; left: 0; right: 0; opacity: 0; visibility: hidden; }
+ul.tsd-descriptions h4, ul.tsd-descriptions .tsd-index-panel h3, .tsd-index-panel ul.tsd-descriptions h3 { font-size: 16px; margin: 1em 0 0.5em 0; }
+
+ul.tsd-parameters, ul.tsd-type-parameters { list-style: square; margin: 0; padding-left: 20px; }
+ul.tsd-parameters > li.tsd-parameter-siganture, ul.tsd-type-parameters > li.tsd-parameter-siganture { list-style: none; margin-left: -20px; }
+ul.tsd-parameters h5, ul.tsd-type-parameters h5 { font-size: 16px; margin: 1em 0 0.5em 0; }
+ul.tsd-parameters .tsd-comment, ul.tsd-type-parameters .tsd-comment { margin-top: -0.5em; }
+
+.tsd-sources { font-size: 14px; color: #808080; margin: 0 0 1em 0; }
+.tsd-sources a { color: #808080; text-decoration: underline; }
+.tsd-sources ul, .tsd-sources p { margin: 0 !important; }
+.tsd-sources ul { list-style: none; padding: 0; }
+
+.tsd-page-toolbar { position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 40px; color: #333; background: #fff; border-bottom: 1px solid #eee; }
+.tsd-page-toolbar a { color: #333; text-decoration: none; }
+.tsd-page-toolbar a.title { font-weight: bold; }
+.tsd-page-toolbar a.title:hover { text-decoration: underline; }
+.tsd-page-toolbar .table-wrap { display: table; width: 100%; height: 40px; }
+.tsd-page-toolbar .table-cell { display: table-cell; position: relative; white-space: nowrap; line-height: 40px; }
+.tsd-page-toolbar .table-cell:first-child { width: 100%; }
+
+.tsd-widget:before, .tsd-select .tsd-select-label:before, .tsd-select .tsd-select-list li:before { content: ""; display: inline-block; width: 40px; height: 40px; margin: 0 -8px 0 0; background-image: url(../images/widgets.png); background-repeat: no-repeat; text-indent: -1024px; vertical-align: bottom; }
+@media (-webkit-min-device-pixel-ratio: 1.5), (min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { .tsd-widget:before, .tsd-select .tsd-select-label:before, .tsd-select .tsd-select-list li:before { background-image: url(../images/widgets@2x.png); background-size: 320px 40px; } }
+
+.tsd-widget { display: inline-block; overflow: hidden; opacity: 0.6; height: 40px; -webkit-transition: opacity 0.1s, background-color 0.2s; transition: opacity 0.1s, background-color 0.2s; vertical-align: bottom; cursor: pointer; }
+.tsd-widget:hover { opacity: 0.8; }
+.tsd-widget.active { opacity: 1; background-color: #eee; }
+.tsd-widget.no-caption { width: 40px; }
+.tsd-widget.no-caption:before { margin: 0; }
+.tsd-widget.search:before { background-position: 0 0; }
+.tsd-widget.menu:before { background-position: -40px 0; }
+.tsd-widget.options:before { background-position: -80px 0; }
+.tsd-widget.options, .tsd-widget.menu { display: none; }
+@media (max-width: 900px) { .tsd-widget.options, .tsd-widget.menu { display: inline-block; } }
+input[type=checkbox] + .tsd-widget:before { background-position: -120px 0; }
+input[type=checkbox]:checked + .tsd-widget:before { background-position: -160px 0; }
+
+.tsd-select { position: relative; display: inline-block; height: 40px; -webkit-transition: opacity 0.1s, background-color 0.2s; transition: opacity 0.1s, background-color 0.2s; vertical-align: bottom; cursor: pointer; }
+.tsd-select .tsd-select-label { opacity: 0.6; -webkit-transition: opacity 0.2s; transition: opacity 0.2s; }
+.tsd-select .tsd-select-label:before { background-position: -240px 0; }
+.tsd-select.active .tsd-select-label { opacity: 0.8; }
+.tsd-select.active .tsd-select-list { visibility: visible; opacity: 1; -webkit-transition-delay: 0s; transition-delay: 0s; }
+.tsd-select .tsd-select-list { position: absolute; visibility: hidden; top: 40px; left: 0; margin: 0; padding: 0; opacity: 0; list-style: none; box-shadow: 0 0 4px rgba(0, 0, 0, 0.25); -webkit-transition: visibility 0s 0.2s, opacity 0.2s; transition: visibility 0s 0.2s, opacity 0.2s; }
+.tsd-select .tsd-select-list li { padding: 0 20px 0 0; background-color: #fdfdfd; }
+.tsd-select .tsd-select-list li:before { background-position: 40px 0; }
+.tsd-select .tsd-select-list li:nth-child(even) { background-color: #fff; }
+.tsd-select .tsd-select-list li:hover { background-color: #eee; }
+.tsd-select .tsd-select-list li.selected:before { background-position: -200px 0; }
+@media (max-width: 900px) { .tsd-select .tsd-select-list { top: 0; left: auto; right: 100%; margin-right: -5px; }
+  .tsd-select .tsd-select-label:before { background-position: -280px 0; } }
+
+img { max-width: 100%; }

File diff suppressed because it is too large
+ 2 - 0
website/typedoc-theme/assets/css/main.css.map


BIN
website/typedoc-theme/assets/images/icons.png


BIN
website/typedoc-theme/assets/images/icons@2x.png


BIN
website/typedoc-theme/assets/images/widgets.png


BIN
website/typedoc-theme/assets/images/widgets@2x.png


File diff suppressed because it is too large
+ 0 - 0
website/typedoc-theme/assets/js/main.js


+ 51 - 0
website/typedoc-theme/layouts/default.hbs

@@ -0,0 +1,51 @@
+<!doctype html>
+<html class="default no-js">
+<head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <title>{{#ifCond model.name '==' project.name}}{{project.name}}{{else}}{{model.name}} | {{project.name}}{{/ifCond}}</title>
+    <meta name="description" content="">
+    <meta name="viewport" content="width=device-width, initial-scale=1">
+
+    <link rel="stylesheet" href="{{relativeURL "assets/css/main.css"}}">
+    <script src="{{relativeURL "assets/js/modernizr.js"}}"></script>
+</head>
+<body>
+
+{{> header}}
+
+<div class="container container-main">
+    <div class="row">
+        <div class="col-8 col-content">
+            {{{contents}}}
+        </div>
+        <div class="col-4 col-menu menu-sticky-wrap menu-highlight">
+            <nav class="tsd-navigation primary">
+                <ul>
+                    {{#each navigation.children}}
+                        {{> navigation}}
+                    {{/each}}
+                </ul>
+            </nav>
+
+            <nav class="tsd-navigation secondary menu-sticky">
+                <ul class="before-current">
+                    {{#each toc.children}}
+                        {{> toc.root}}
+                    {{/each}}
+                </ul>
+            </nav>
+        </div>
+    </div>
+</div>
+
+{{> footer}}
+
+<div class="overlay"></div>
+<script src="{{relativeURL "assets/js/main.js"}}"></script>
+<script>if (location.protocol == 'file:') document.write('<script src="{{relativeURL "assets/js/search.js"}}"><' + '/script>');</script>
+
+{{> analytics}}
+
+</body>
+</html>

+ 11 - 0
website/typedoc-theme/partials/analytics.hbs

@@ -0,0 +1,11 @@
+{{#if settings.gaID}}
+    <script>
+        (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
+            (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
+                m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
+        })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
+
+        ga('create', '{{settings.gaID}}', '{{settings.gaSite}}');
+        ga('send', 'pageview');
+    </script>
+{{/if}}

+ 16 - 0
website/typedoc-theme/partials/breadcrumb.hbs

@@ -0,0 +1,16 @@
+{{#if parent}}
+    {{#with parent}}{{> breadcrumb}}{{/with}}
+    <li>
+        {{#if url}}
+            <a href="{{relativeURL url}}">{{name}}</a>
+        {{else}}
+            <span>{{name}}</span>
+        {{/if}}
+    </li>
+{{else}}
+    {{#if url}}
+        <li>
+            <a href="{{relativeURL url}}">Globals</a>
+        </li>
+    {{/if}}
+{{/if}}

+ 22 - 0
website/typedoc-theme/partials/comment.hbs

@@ -0,0 +1,22 @@
+{{#with comment}}
+    {{#if hasVisibleComponent}}
+        <div class="tsd-comment tsd-typography">
+            {{#if shortText}}
+                <div class="lead">
+                    {{#markdown}}{{{shortText}}}{{/markdown}}
+                </div>
+            {{/if}}
+            {{#if text}}
+                {{#markdown}}{{{text}}}{{/markdown}}
+            {{/if}}
+            {{#if tags}}
+                <dl class="tsd-comment-tags">
+                    {{#each tags}}
+                        <dt>{{tagName}}</dt>
+                        <dd>{{#markdown}}{{{text}}}{{/markdown}}</dd>
+                    {{/each}}
+                </dl>
+            {{/if}}
+        </div>
+    {{/if}}
+{{/with}}

+ 66 - 0
website/typedoc-theme/partials/footer.hbs

@@ -0,0 +1,66 @@
+
+<footer{{#unless settings.hideGenerator}} class="with-border-bottom"{{/unless}}>
+    <div class="container">
+        <h2>Legend</h2>
+        <div class="tsd-legend-group">
+            <ul class="tsd-legend">
+                <li class="tsd-kind-module"><span class="tsd-kind-icon">Module</span></li>
+                <li class="tsd-kind-object-literal"><span class="tsd-kind-icon">Object literal</span></li>
+                <li class="tsd-kind-variable"><span class="tsd-kind-icon">Variable</span></li>
+                <li class="tsd-kind-function"><span class="tsd-kind-icon">Function</span></li>
+                <li class="tsd-kind-function tsd-has-type-parameter"><span class="tsd-kind-icon">Function with type parameter</span></li>
+                <li class="tsd-kind-index-signature"><span class="tsd-kind-icon">Index signature</span></li>
+                <li class="tsd-kind-type-alias"><span class="tsd-kind-icon">Type alias</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-enum"><span class="tsd-kind-icon">Enumeration</span></li>
+                <li class="tsd-kind-enum-member"><span class="tsd-kind-icon">Enumeration member</span></li>
+                <li class="tsd-kind-property tsd-parent-kind-enum"><span class="tsd-kind-icon">Property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-enum"><span class="tsd-kind-icon">Method</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-interface"><span class="tsd-kind-icon">Interface</span></li>
+                <li class="tsd-kind-interface tsd-has-type-parameter"><span class="tsd-kind-icon">Interface with type parameter</span></li>
+                <li class="tsd-kind-constructor tsd-parent-kind-interface"><span class="tsd-kind-icon">Constructor</span></li>
+                <li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li>
+                <li class="tsd-kind-index-signature tsd-parent-kind-interface"><span class="tsd-kind-icon">Index signature</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-class"><span class="tsd-kind-icon">Class</span></li>
+                <li class="tsd-kind-class tsd-has-type-parameter"><span class="tsd-kind-icon">Class with type parameter</span></li>
+                <li class="tsd-kind-constructor tsd-parent-kind-class"><span class="tsd-kind-icon">Constructor</span></li>
+                <li class="tsd-kind-property tsd-parent-kind-class"><span class="tsd-kind-icon">Property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-class"><span class="tsd-kind-icon">Method</span></li>
+                <li class="tsd-kind-accessor tsd-parent-kind-class"><span class="tsd-kind-icon">Accessor</span></li>
+                <li class="tsd-kind-index-signature tsd-parent-kind-class"><span class="tsd-kind-icon">Index signature</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited constructor</span></li>
+                <li class="tsd-kind-property tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited method</span></li>
+                <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-inherited"><span class="tsd-kind-icon">Inherited accessor</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected method</span></li>
+                <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-protected"><span class="tsd-kind-icon">Protected accessor</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private property</span></li>
+                <li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private method</span></li>
+                <li class="tsd-kind-accessor tsd-parent-kind-class tsd-is-private"><span class="tsd-kind-icon">Private accessor</span></li>
+            </ul>
+            <ul class="tsd-legend">
+                <li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static property</span></li>
+                <li class="tsd-kind-call-signature tsd-parent-kind-class tsd-is-static"><span class="tsd-kind-icon">Static method</span></li>
+            </ul>
+        </div>
+    </div>
+</footer>
+
+{{#unless settings.hideGenerator}}
+    <div class="container tsd-generator">
+        <p>Generated using <a href="http://typedoc.io" target="_blank">TypeDoc</a></p>
+    </div>
+{{/unless}}

+ 71 - 0
website/typedoc-theme/partials/header.hbs

@@ -0,0 +1,71 @@
+<header>
+    <div class="tsd-page-toolbar">
+        <div class="container">
+            <div class="table-wrap">
+                <div class="table-cell" id="tsd-search" data-index="{{relativeURL "assets/js/search.js"}}" data-base="{{relativeURL "./"}}">
+                    <div class="field">
+                        <label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
+                        <input id="tsd-search-field" type="text" />
+                    </div>
+
+                    <ul class="results">
+                        <li class="state loading">Preparing search index...</li>
+                        <li class="state failure">The search index is not available</li>
+                    </ul>
+
+                    <a href="{{relativeURL "index.html"}}" class="title">{{project.name}}</a>
+                </div>
+
+                <div class="table-cell" id="tsd-widgets">
+                    <div id="tsd-filter">
+                        <a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
+                        <div class="tsd-filter-group">
+                            <div class="tsd-select" id="tsd-filter-visibility">
+                                <span class="tsd-select-label">All</span>
+                                <ul class="tsd-select-list">
+                                    <li data-value="public">Public</li>
+                                    <li data-value="protected">Public/Protected</li>
+                                    <li data-value="private" class="selected">All</li>
+                                </ul>
+                            </div>
+
+                            <input type="checkbox" id="tsd-filter-inherited" checked />
+                            <label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
+
+                            {{#unless settings.excludeExternals}}
+                                <input type="checkbox" id="tsd-filter-externals" checked />
+                                <label class="tsd-widget" for="tsd-filter-externals">Externals</label>
+                            {{/unless}}
+
+                            {{#unless settings.excludeNotExported}}
+                                <input type="checkbox" id="tsd-filter-only-exported" />
+                                <label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
+                            {{/unless}}
+                        </div>
+                    </div>
+
+                    <a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
+                </div>
+            </div>
+        </div>
+    </div>
+    <div class="tsd-page-title">
+        <div class="container">
+            <ul class="tsd-breadcrumb">
+                {{#with model}}{{> breadcrumb}}{{/with}}
+            </ul>
+            <h1>{{#compact}}
+                {{model.kindString}}&nbsp;
+                {{model.name}}
+                {{#if model.typeParameters}}
+                    &lt;
+                    {{#each model.typeParameters}}
+                        {{#if @index}},&nbsp;{{/if}}
+                        {{name}}
+                    {{/each}}
+                    &gt;
+                {{/if}}
+            {{/compact}}</h1>
+        </div>
+    </div>
+</header>

+ 17 - 0
website/typedoc-theme/partials/hierarchy.hbs

@@ -0,0 +1,17 @@
+<ul class="tsd-hierarchy">
+    {{#each types}}
+        <li>
+            {{#if ../isTarget}}
+                <span class="target">{{this}}</span>
+            {{else}}
+                {{> type}}
+            {{/if}}
+
+            {{#if @last}}
+                {{#with ../next}}
+                    {{> hierarchy}}
+                {{/with}}
+            {{/if}}
+        </li>
+    {{/each}}
+</ul>

+ 19 - 0
website/typedoc-theme/partials/index.hbs

@@ -0,0 +1,19 @@
+{{#if groups}}
+<section class="tsd-panel-group tsd-index-group">
+    <h2>Index</h2>
+    <section class="tsd-panel tsd-index-panel">
+        <div class="tsd-index-content">
+            {{#each groups}}
+                <section class="tsd-index-section {{cssClasses}}">
+                    <h3>{{title}}</h3>
+                    <ul class="tsd-index-list">
+                        {{#each children}}
+                        <li class="{{cssClasses}}"><a href="{{relativeURL url}}" class="tsd-kind-icon">{{#if name}}{{{wbr name}}}{{else}}<em>{{{wbr kindString}}}</em>{{/if}}</a></li>
+                        {{/each}}
+                    </ul>
+                </section>
+            {{/each}}
+        </div>
+    </section>
+</section>
+{{/if}}

+ 22 - 0
website/typedoc-theme/partials/member.declaration.hbs

@@ -0,0 +1,22 @@
+<div class="tsd-signature tsd-kind-icon">{{#compact}}
+    {{{wbr name}}}<span class="tsd-signature-symbol">{{#if isOptional}}?{{/if}}:</span>&nbsp;{{#with type}}{{>type}}{{/with}}
+    {{#if defaultValue}}
+        <span class="tsd-signature-symbol">
+        &nbsp;=&nbsp;
+        {{defaultValue}}
+        </span>
+    {{/if}}
+{{/compact}}</div>
+
+{{> member.sources}}
+
+{{> comment}}
+
+{{#if type.declaration}}
+    <div class="tsd-type-declaration">
+        <h4>Type declaration</h4>
+        {{#with type.declaration}}
+            {{> parameter}}
+        {{/with}}
+    </div>
+{{/if}}

+ 37 - 0
website/typedoc-theme/partials/member.getterSetter.hbs

@@ -0,0 +1,37 @@
+<ul class="tsd-signatures {{cssClasses}}">
+    {{#if getSignature}}
+        {{#with getSignature}}
+            <li class="tsd-signature tsd-kind-icon">{{#compact}}
+                <span class="tsd-signature-symbol">get</span>&nbsp;
+                {{../name}}
+                {{> member.signature.title hideName=true }}
+            {{/compact}}</li>
+        {{/with}}
+    {{/if}}
+    {{#if setSignature}}
+        {{#with setSignature}}
+            <li class="tsd-signature tsd-kind-icon">{{#compact}}
+                <span class="tsd-signature-symbol">set</span>&nbsp;
+                {{../name}}
+                {{> member.signature.title hideName=true }}
+            {{/compact}}</li>
+        {{/with}}
+    {{/if}}
+</ul>
+
+<ul class="tsd-descriptions">
+    {{#if getSignature}}
+        {{#with getSignature}}
+            <li class="tsd-description">
+                {{> member.signature.body }}
+            </li>
+        {{/with}}
+    {{/if}}
+    {{#if setSignature}}
+        {{#with setSignature}}
+            <li class="tsd-description">
+                {{> member.signature.body }}
+            </li>
+        {{/with}}
+    {{/if}}
+</ul>

+ 22 - 0
website/typedoc-theme/partials/member.hbs

@@ -0,0 +1,22 @@
+<section class="tsd-panel tsd-member {{cssClasses}}">
+    <a name="{{anchor}}" class="tsd-anchor"></a>
+    {{#if name}}
+        <h3>{{#each flags}}<span class="tsd-flag ts-flag{{this}}">{{this}}</span> {{/each}}{{{wbr name}}}</h3>
+    {{/if}}
+
+    {{#if signatures}}
+        {{> member.signatures}}
+    {{else}}{{#if hasGetterOrSetter}}
+        {{> member.getterSetter}}
+    {{else}}
+        {{> member.declaration}}
+    {{/if}}{{/if}}
+
+    {{#each groups}}
+        {{#each children}}
+            {{#unless hasOwnDocument}}
+                {{> member}}
+            {{/unless}}
+        {{/each}}
+    {{/each}}
+</section>

+ 56 - 0
website/typedoc-theme/partials/member.signature.body.hbs

@@ -0,0 +1,56 @@
+{{#unless hideSources}}
+    {{> member.sources}}
+{{/unless}}
+
+{{> comment}}
+
+{{#if typeParameters}}
+    <h4 class="tsd-type-parameters-title">Type parameters</h4>
+    {{> typeParameters}}
+{{/if}}
+
+{{#if parameters}}
+    <h4 class="tsd-parameters-title">Parameters</h4>
+    <ul class="tsd-parameters">
+        {{#each parameters}}
+            <li>
+                <h5>{{#compact}}
+                    {{#each flags}}
+                        <span class="tsd-flag ts-flag{{this}}">{{this}}</span>&nbsp;
+                    {{/each}}
+                    {{#if flags.isRest}}<span class="tsd-signature-symbol">...</span>{{/if}}
+                    {{name}}:&nbsp;
+                    {{#with type}}{{>type}}{{/with}}
+                    {{#if defaultValue}}
+                        <span class="tsd-signature-symbol">
+                        &nbsp;=&nbsp;
+                        {{defaultValue}}
+                        </span>
+                    {{/if}}
+                {{/compact}}</h5>
+
+                {{> comment}}
+
+                {{#if type.declaration}}
+                    {{#with type.declaration}}
+                        {{> parameter}}
+                    {{/with}}
+                {{/if}}
+            </li>
+        {{/each}}
+    </ul>
+{{/if}}
+
+{{#if type}}
+    <h4 class="tsd-returns-title">Returns {{#with type}}{{>type}}{{/with}}</h4>
+
+    {{#if comment.returns}}
+        {{#markdown}}{{{comment.returns}}}{{/markdown}}
+    {{/if}}
+
+    {{#if type.declaration}}
+        {{#with type.declaration}}
+            {{> parameter}}
+        {{/with}}
+    {{/if}}
+{{/if}}

+ 28 - 0
website/typedoc-theme/partials/member.signature.title.hbs

@@ -0,0 +1,28 @@
+{{#compact}}
+    {{#unless hideName}}{{{wbr name}}}{{/unless}}
+    {{#if typeParameters}}
+        &lt;
+        {{#each typeParameters}}
+            {{#if @index}},&nbsp;{{/if}}
+            {{name}}
+        {{/each}}
+        &gt;
+    {{/if}}
+    <span class="tsd-signature-symbol">(</span>
+    {{#each parameters}}
+        {{#if @index}},&nbsp;{{/if}}
+        {{#if flags.isRest}}<span class="tsd-signature-symbol">...</span>{{/if}}
+        {{name}}
+        <span class="tsd-signature-symbol">
+            {{#if flags.isOptional}}?{{/if}}
+            {{#if defaultValue}}?{{/if}}
+            :&nbsp;
+        </span>
+        {{#with type}}{{>type}}{{/with}}
+    {{/each}}
+    <span class="tsd-signature-symbol">)</span>
+    {{#if type}}
+        <span class="tsd-signature-symbol">:&nbsp;</span>
+        {{#with type}}{{>type}}{{/with}}
+    {{/if}}
+{{/compact}}

+ 13 - 0
website/typedoc-theme/partials/member.signatures.hbs

@@ -0,0 +1,13 @@
+<ul class="tsd-signatures {{cssClasses}}">
+    {{#each signatures}}
+        <li class="tsd-signature tsd-kind-icon">{{> member.signature.title }}</li>
+    {{/each}}
+</ul>
+
+<ul class="tsd-descriptions">
+    {{#each signatures}}
+        <li class="tsd-description">
+            {{> member.signature.body }}
+        </li>
+    {{/each}}
+</ul>

+ 22 - 0
website/typedoc-theme/partials/member.sources.hbs

@@ -0,0 +1,22 @@
+<aside class="tsd-sources">
+    {{#if implementationOf}}
+        <p>Implementation of {{#with implementationOf}}{{> typeAndParent}}{{/with}}</p>
+    {{/if}}
+    {{#if inheritedFrom}}
+        <p>Inherited from {{#with inheritedFrom}}{{> typeAndParent}}{{/with}}</p>
+    {{/if}}
+    {{#if overwrites}}
+        <p>Overwrites {{#with overwrites}}{{> typeAndParent}}{{/with}}</p>
+    {{/if}}
+    {{#if sources}}
+        <ul>
+            {{#each sources}}
+                {{#if url}}
+                    <li>Defined in <a href="{{url}}">{{fileName}}:{{line}}</a></li>
+                {{else}}
+                    <li>Defined in {{fileName}}:{{line}}</li>
+                {{/if}}
+            {{/each}}
+        </ul>
+    {{/if}}
+</aside>

+ 8 - 0
website/typedoc-theme/partials/members.group.hbs

@@ -0,0 +1,8 @@
+<section class="tsd-panel-group tsd-member-group {{cssClasses}}">
+    <h2>{{title}}</h2>
+    {{#each children}}
+        {{#unless hasOwnDocument}}
+            {{> member}}
+        {{/unless}}
+    {{/each}}
+</section>

+ 5 - 0
website/typedoc-theme/partials/members.hbs

@@ -0,0 +1,5 @@
+{{#each groups}}
+    {{#unless allChildrenHaveOwnDocument}}
+        {{> members.group}}
+    {{/unless}}
+{{/each}}

+ 26 - 0
website/typedoc-theme/partials/navigation.hbs

@@ -0,0 +1,26 @@
+{{#if isVisible}}
+    {{#if isLabel}}
+        <li class="label {{cssClasses}}">
+            <span>{{{wbr title}}}</span>
+        </li>
+    {{else}}
+        {{#if isGlobals}}
+            <li class="globals {{#if isInPath}}current{{/if}} {{cssClasses}}">
+                <a href="{{relativeURL url}}"><em>{{{wbr title}}}</em></a>
+            </li>
+        {{else}}
+            <li class="{{#if isInPath}}current{{/if}} {{cssClasses}}">
+                <a href="{{relativeURL url}}">{{{wbr title}}}</a>
+                {{#if isInPath}}
+                    {{#if children}}
+                        <ul>
+                            {{#each children}}
+                                {{> navigation}}
+                            {{/each}}
+                        </ul>
+                    {{/if}}
+                {{/if}}
+            </li>
+        {{/if}}
+    {{/if}}
+{{/if}}

+ 81 - 0
website/typedoc-theme/partials/parameter.hbs

@@ -0,0 +1,81 @@
+<ul class="tsd-parameters">
+    {{#if signatures}}
+        <li class="tsd-parameter-siganture">
+            <ul class="tsd-signatures {{cssClasses}}">
+                {{#each signatures}}
+                    <li class="tsd-signature tsd-kind-icon">{{> member.signature.title hideName=true }}</li>
+                {{/each}}
+            </ul>
+
+            <ul class="tsd-descriptions">
+                {{#each signatures}}
+                    <li class="tsd-description">{{> member.signature.body hideSources=true }}</li>
+                {{/each}}
+            </ul>
+        </li>
+    {{/if}}
+    {{#if indexSignature}}
+        <li class="tsd-parameter-index-signature">
+            <h5>{{#compact}}
+                <span class="tsd-signature-symbol">[</span>
+                {{#each indexSignature.parameters}}
+                    {{#if flags.isRest}}<span class="tsd-signature-symbol">...</span>{{/if}}{{name}}:&nbsp;{{#with type}}{{>type}}{{/with}}
+                {{/each}}
+                <span class="tsd-signature-symbol">]:&nbsp;</span>
+                {{#with indexSignature.type}}{{>type}}{{/with}}
+            {{/compact}}</h5>
+
+            {{#with indexSignature}}
+                {{> comment}}
+            {{/with}}
+
+            {{#if indexSignature.type.declaration}}
+                {{#with indexSignature.type.declaration}}
+                    {{> parameter}}
+                {{/with}}
+            {{/if}}
+        </li>
+    {{/if}}
+    {{#each children}}
+        <li class="tsd-parameter">
+            {{#if signatures}}
+                <h5>{{#compact}}
+                    {{#if flags.isRest}}<span class="tsd-signature-symbol">...</span>{{/if}}
+                    {{{wbr name}}}
+                    <span class="tsd-signature-symbol">
+                        {{#if isOptional}}?{{/if}}
+                        :&nbsp;
+                    </span>
+                    function
+                {{/compact}}</h5>
+
+                {{> member.signatures}}
+            {{else}}
+                <h5>{{#compact}}
+                    {{#each flags}}
+                        <span class="tsd-flag ts-flag{{this}}">{{this}}</span>&nbsp;
+                    {{/each}}
+                    {{#if flags.isRest}}<span class="tsd-signature-symbol">...</span>{{/if}}
+                    {{{wbr name}}}
+                    <span class="tsd-signature-symbol">
+                        {{#if flags.isOptional}}?{{/if}}
+                        :&nbsp;
+                    </span>
+                    {{#with type}}{{>type}}{{/with}}
+                {{/compact}}</h5>
+
+                {{> comment}}
+
+                {{#if children}}
+                    {{> parameter}}
+                {{/if}}
+
+                {{#if type.declaration}}
+                    {{#with type.declaration}}
+                        {{> parameter}}
+                    {{/with}}
+                {{/if}}
+            {{/if}}
+        </li>
+    {{/each}}
+</ul>

+ 10 - 0
website/typedoc-theme/partials/toc.hbs

@@ -0,0 +1,10 @@
+<li class="{{#if isInPath}}current{{/if}} {{cssClasses}}">
+    <a href="{{relativeURL url}}" class="tsd-kind-icon">{{{wbr title}}}</a>
+    {{#if children}}
+        <ul>
+            {{#each children}}
+                {{> toc}}
+            {{/each}}
+        </ul>
+    {{/if}}
+</li>

+ 18 - 0
website/typedoc-theme/partials/toc.root.hbs

@@ -0,0 +1,18 @@
+{{#if isInPath}}
+    </ul>
+    <ul class="current">
+{{/if}}
+<li class="{{#if isInPath}}current{{/if}} {{cssClasses}}">
+    <a href="{{relativeURL url}}" class="tsd-kind-icon">{{{wbr title}}}</a>
+    {{#if children}}
+        <ul>
+            {{#each children}}
+                {{> toc}}
+            {{/each}}
+        </ul>
+    {{/if}}
+</li>
+{{#if isInPath}}
+    </ul>
+    <ul class="after-current">
+{{/if}}

+ 71 - 0
website/typedoc-theme/partials/type.hbs

@@ -0,0 +1,71 @@
+{{#if this}}
+    {{#if reflection}}
+        {{#compact}}
+            <a href="{{relativeURL reflection.url}}" class="tsd-signature-type">
+                {{reflection.name}}
+            </a>
+            {{#if typeArguments}}
+                <span class="tsd-signature-symbol">&lt;</span>
+
+                {{#each typeArguments}}
+                    {{#if @index}}
+                        <span class="tsd-signature-symbol">, </span>
+                    {{/if}}{{> type}}
+                {{/each}}
+
+                <span class="tsd-signature-symbol">&gt;</span>
+            {{/if}}
+            {{#if isArray}}<span class="tsd-signature-symbol">[]</span>{{/if}}
+        {{/compact}}
+    {{else}}
+        {{#if types}}
+            {{#each types}}
+                {{#if @index}}
+                    <span class="tsd-signature-symbol"> | </span>
+                {{/if}}{{> type}}
+            {{/each}}
+        {{else}}
+            {{#if elements}}
+                {{#compact}}
+                    <span class="tsd-signature-symbol">[</span>
+
+                    {{#each elements}}
+                        {{#if @index}}
+                            <span class="tsd-signature-symbol">, </span>
+                        {{/if}}{{> type}}
+                    {{/each}}
+
+                    <span class="tsd-signature-symbol">]</span>
+                {{/compact}}
+            {{else}}
+                {{#compact}}
+                    <span class="tsd-signature-type">
+                        {{#if name}}
+                            {{name}}
+                        {{else}}
+                            {{#if value}}
+                                "{{value}}"
+                            {{else}}
+                                {{this}}
+                            {{/if}}
+                        {{/if}}
+                    </span>
+                    {{#if typeArguments}}
+                        <span class="tsd-signature-symbol">&lt;</span>
+
+                        {{#each typeArguments}}
+                            {{#if @index}}
+                                <span class="tsd-signature-symbol">, </span>
+                            {{/if}}{{> type}}
+                        {{/each}}
+
+                        <span class="tsd-signature-symbol">&gt;</span>
+                    {{/if}}
+                    {{#if isArray}}<span class="tsd-signature-symbol">[]</span>{{/if}}
+                {{/compact}}
+            {{/if}}
+        {{/if}}
+    {{/if}}
+{{else}}
+    <span class="tsd-signature-type">void</span>
+{{/if}}

+ 38 - 0
website/typedoc-theme/partials/typeAndParent.hbs

@@ -0,0 +1,38 @@
+{{#compact}}
+    {{#if this}}
+        {{#if reflection}}
+            {{#ifSignature reflection}}
+                {{#if reflection.parent.parent.url}}
+                    <a href="{{relativeURL reflection.parent.parent.url}}">{{reflection.parent.parent.name}}</a>
+                {{else}}
+                    {{reflection.parent.parent.name}}
+                {{/if}}
+                .
+                {{#if reflection.parent.url}}
+                    <a href="{{relativeURL reflection.parent.url}}">{{reflection.parent.name}}</a>
+                {{else}}
+                    {{reflection.parent.name}}
+                {{/if}}
+            {{else}}
+                {{#if reflection.parent.url}}
+                    <a href="{{relativeURL reflection.parent.url}}">{{reflection.parent.name}}</a>
+                {{else}}
+                    {{reflection.parent.name}}
+                {{/if}}
+                .
+                {{#if reflection.url}}
+                    <a href="{{relativeURL reflection.url}}">{{reflection.name}}</a>
+                {{else}}
+                    {{reflection.name}}
+                {{/if}}
+            {{/ifSignature}}
+            {{#if isArray}}
+                []
+            {{/if}}
+        {{else}}
+            {{this}}
+        {{/if}}
+    {{else}}
+        void
+    {{/if}}
+{{/compact}}

+ 14 - 0
website/typedoc-theme/partials/typeParameters.hbs

@@ -0,0 +1,14 @@
+<ul class="tsd-type-parameters">
+    {{#each typeParameters}}
+        <li>
+            <h4>{{#compact}}
+                {{name}}
+                {{#if type}}
+                    <span class="tsd-signature-symbol">:&nbsp;</span>
+                    {{#with type}}{{> type}}{{/with}}
+                {{/if}}
+            {{/compact}}</h4>
+            {{> comment}}
+        </li>
+    {{/each}}
+</ul>

+ 3 - 0
website/typedoc-theme/templates/index.hbs

@@ -0,0 +1,3 @@
+<div class="tsd-panel tsd-typography">
+    {{#markdown}}{{{model.readme}}}{{/markdown}}
+</div>

+ 79 - 0
website/typedoc-theme/templates/reflection.hbs

@@ -0,0 +1,79 @@
+{{#with model}}
+    {{#if hasComment}}
+        <section class="tsd-panel tsd-comment">
+            {{> comment}}
+        </section>
+    {{/if}}
+{{/with}}
+
+{{#if model.typeParameters}}
+    <section class="tsd-panel tsd-type-parameters">
+        <h3>Type parameters</h3>
+        {{#with model}}{{> typeParameters}}{{/with}}
+    </section>
+{{/if}}
+
+{{#if model.typeHierarchy}}
+    <section class="tsd-panel tsd-hierarchy">
+        <h3>Hierarchy</h3>
+        {{#with model.typeHierarchy}}{{> hierarchy}}{{/with}}
+    </section>
+{{/if}}
+
+{{#if model.implementedTypes}}
+    <section class="tsd-panel">
+        <h3>Implements</h3>
+        <ul class="tsd-hierarchy">
+            {{#each model.implementedTypes}}
+                <li>{{> type}}</li>
+            {{/each}}
+        </ul>
+    </section>
+{{/if}}
+
+{{#if model.implementedBy}}
+    <section class="tsd-panel">
+        <h3>Implemented by</h3>
+        <ul class="tsd-hierarchy">
+            {{#each model.implementedBy}}
+                <li>{{> type}}</li>
+            {{/each}}
+        </ul>
+    </section>
+{{/if}}
+
+{{#if model.signatures}}
+    <section class="tsd-panel">
+        <h3 class="tsd-before-signature">Callable</h3>
+        {{#with model}}{{> member.signatures}}{{/with}}
+    </section>
+{{/if}}
+
+{{#if model.indexSignature}}
+    <section class="tsd-panel {{model.cssClasses}}">
+        <h3 class="tsd-before-signature">Indexable</h3>
+        <div class="tsd-signature tsd-kind-icon">{{#compact}}
+            <span class="tsd-signature-symbol">[</span>
+            {{#each model.indexSignature.parameters}}
+                {{name}}:&nbsp;{{#with type}}{{>type}}{{/with}}
+            {{/each}}
+            <span class="tsd-signature-symbol">]:&nbsp;</span>
+            {{#with model.indexSignature.type}}{{>type}}{{/with}}
+        {{/compact}}</div>
+
+        {{#with model.indexSignature}}
+            {{> comment}}
+        {{/with}}
+
+        {{#if model.indexSignature.type.declaration}}
+            {{#with model.indexSignature.type.declaration}}
+                {{> parameter}}
+            {{/with}}
+        {{/if}}
+    </section>
+{{/if}}
+
+{{#with model}}
+    {{> index}}
+    {{> members}}
+{{/with}}

Some files were not shown because too many files changed in this diff