diff --git a/CHANGELOG.md b/CHANGELOG.md index d0047dd1..f83d2c78 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,8 @@ All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines. +### [12.0.5](https://github.com/modum-io/modblue/compare/v12.0.4...v12.0.5) (2021-09-30) + ### [12.0.4](https://github.com/modum-io/modblue/compare/v12.0.3...v12.0.4) (2021-05-27) ### Bug Fixes diff --git a/docs/.nojekyll b/docs/.nojekyll new file mode 100644 index 00000000..e2ac6616 --- /dev/null +++ b/docs/.nojekyll @@ -0,0 +1 @@ +TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false. \ No newline at end of file diff --git a/docs/assets/css/main.css b/docs/assets/css/main.css deleted file mode 100644 index 46571c27..00000000 --- a/docs/assets/css/main.css +++ /dev/null @@ -1,2660 +0,0 @@ -:root { - --color-background: #fdfdfd; - --color-text: #222; - --color-text-aside: #707070; - --color-link: #4da6ff; - --color-menu-divider: #eee; - --color-menu-divider-focus: #000; - --color-menu-label: #707070; - --color-panel: #fff; - --color-panel-divider: #eee; - --color-comment-tag: #707070; - --color-comment-tag-text: #fff; - --color-code-background: rgba(0, 0, 0, 0.04); - --color-ts: #9600ff; - --color-ts-interface: #647f1b; - --color-ts-enum: #937210; - --color-ts-class: #0672de; - --color-ts-private: #707070; - --color-toolbar: #fff; - --color-toolbar-text: #333; -} - -/*! 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 { - -moz-box-sizing: content-box; - 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 */ - -moz-box-sizing: content-box; - -webkit-box-sizing: content-box; - /* 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; -} - -ul.tsd-descriptions > li > :first-child, .tsd-panel > :first-child, .col > :first-child, .col-11 > :first-child, .col-10 > :first-child, .col-9 > :first-child, .col-8 > :first-child, .col-7 > :first-child, .col-6 > :first-child, .col-5 > :first-child, .col-4 > :first-child, .col-3 > :first-child, .col-2 > :first-child, .col-1 > :first-child, -ul.tsd-descriptions > li > :first-child > :first-child, -.tsd-panel > :first-child > :first-child, -.col > :first-child > :first-child, -.col-11 > :first-child > :first-child, -.col-10 > :first-child > :first-child, -.col-9 > :first-child > :first-child, -.col-8 > :first-child > :first-child, -.col-7 > :first-child > :first-child, -.col-6 > :first-child > :first-child, -.col-5 > :first-child > :first-child, -.col-4 > :first-child > :first-child, -.col-3 > :first-child > :first-child, -.col-2 > :first-child > :first-child, -.col-1 > :first-child > :first-child, -ul.tsd-descriptions > li > :first-child > :first-child > :first-child, -.tsd-panel > :first-child > :first-child > :first-child, -.col > :first-child > :first-child > :first-child, -.col-11 > :first-child > :first-child > :first-child, -.col-10 > :first-child > :first-child > :first-child, -.col-9 > :first-child > :first-child > :first-child, -.col-8 > :first-child > :first-child > :first-child, -.col-7 > :first-child > :first-child > :first-child, -.col-6 > :first-child > :first-child > :first-child, -.col-5 > :first-child > :first-child > :first-child, -.col-4 > :first-child > :first-child > :first-child, -.col-3 > :first-child > :first-child > :first-child, -.col-2 > :first-child > :first-child > :first-child, -.col-1 > :first-child > :first-child > :first-child { - margin-top: 0; -} -ul.tsd-descriptions > li > :last-child, .tsd-panel > :last-child, .col > :last-child, .col-11 > :last-child, .col-10 > :last-child, .col-9 > :last-child, .col-8 > :last-child, .col-7 > :last-child, .col-6 > :last-child, .col-5 > :last-child, .col-4 > :last-child, .col-3 > :last-child, .col-2 > :last-child, .col-1 > :last-child, -ul.tsd-descriptions > li > :last-child > :last-child, -.tsd-panel > :last-child > :last-child, -.col > :last-child > :last-child, -.col-11 > :last-child > :last-child, -.col-10 > :last-child > :last-child, -.col-9 > :last-child > :last-child, -.col-8 > :last-child > :last-child, -.col-7 > :last-child > :last-child, -.col-6 > :last-child > :last-child, -.col-5 > :last-child > :last-child, -.col-4 > :last-child > :last-child, -.col-3 > :last-child > :last-child, -.col-2 > :last-child > :last-child, -.col-1 > :last-child > :last-child, -ul.tsd-descriptions > li > :last-child > :last-child > :last-child, -.tsd-panel > :last-child > :last-child > :last-child, -.col > :last-child > :last-child > :last-child, -.col-11 > :last-child > :last-child > :last-child, -.col-10 > :last-child > :last-child > :last-child, -.col-9 > :last-child > :last-child > :last-child, -.col-8 > :last-child > :last-child > :last-child, -.col-7 > :last-child > :last-child > :last-child, -.col-6 > :last-child > :last-child > :last-child, -.col-5 > :last-child > :last-child > :last-child, -.col-4 > :last-child > :last-child > :last-child, -.col-3 > :last-child > :last-child > :last-child, -.col-2 > :last-child > :last-child > :last-child, -.col-1 > :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 { - display: flex; - position: relative; - margin: 0 -10px; -} -.row:after { - visibility: hidden; - display: block; - content: ""; - clear: both; - height: 0; -} - -.col, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 { - box-sizing: border-box; - float: left; - padding: 0 10px; -} - -.col-1 { - width: 8.3333333333%; -} - -.offset-1 { - margin-left: 8.3333333333%; -} - -.col-2 { - width: 16.6666666667%; -} - -.offset-2 { - margin-left: 16.6666666667%; -} - -.col-3 { - width: 25%; -} - -.offset-3 { - margin-left: 25%; -} - -.col-4 { - width: 33.3333333333%; -} - -.offset-4 { - margin-left: 33.3333333333%; -} - -.col-5 { - width: 41.6666666667%; -} - -.offset-5 { - margin-left: 41.6666666667%; -} - -.col-6 { - width: 50%; -} - -.offset-6 { - margin-left: 50%; -} - -.col-7 { - width: 58.3333333333%; -} - -.offset-7 { - margin-left: 58.3333333333%; -} - -.col-8 { - width: 66.6666666667%; -} - -.offset-8 { - margin-left: 66.6666666667%; -} - -.col-9 { - width: 75%; -} - -.offset-9 { - margin-left: 75%; -} - -.col-10 { - width: 83.3333333333%; -} - -.offset-10 { - margin-left: 83.3333333333%; -} - -.col-11 { - width: 91.6666666667%; -} - -.offset-11 { - margin-left: 91.6666666667%; -} - -.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-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-namespace > .tsd-kind-icon:before { - background-position: 0px -102px; -} -.tsd-kind-namespace.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -102px; -} -.tsd-kind-namespace.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -102px; -} - -.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-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-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before { - background-position: 0px -187px; -} -.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected > .tsd-kind-icon:before { - background-position: -17px -187px; -} -.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private > .tsd-kind-icon:before { - background-position: -34px -187px; -} - -.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; -} - -@keyframes fade-in { - from { - opacity: 0; - } - to { - opacity: 1; - } -} -@keyframes fade-out { - from { - opacity: 1; - visibility: visible; - } - to { - opacity: 0; - } -} -@keyframes fade-in-delayed { - 0% { - opacity: 0; - } - 33% { - opacity: 0; - } - 100% { - opacity: 1; - } -} -@keyframes fade-out-delayed { - 0% { - opacity: 1; - visibility: visible; - } - 66% { - opacity: 0; - } - 100% { - opacity: 0; - } -} -@keyframes shift-to-left { - from { - transform: translate(0, 0); - } - to { - transform: translate(-25%, 0); - } -} -@keyframes unshift-to-left { - from { - transform: translate(-25%, 0); - } - to { - transform: translate(0, 0); - } -} -@keyframes pop-in-from-right { - from { - transform: translate(100%, 0); - } - to { - transform: translate(0, 0); - } -} -@keyframes pop-out-to-right { - from { - transform: translate(0, 0); - visibility: visible; - } - to { - transform: translate(100%, 0); - } -} -body { - background: var(--color-background); - font-family: "Segoe UI", sans-serif; - font-size: 16px; - color: var(--color-text); -} - -a { - color: var(--color-link); - 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: var(--color-code-background); -} - -pre { - padding: 10px; -} -pre code { - padding: 0; - font-size: 100%; - background-color: transparent; -} - -blockquote { - margin: 1em 0; - padding-left: 1em; - border-left: 4px solid gray; -} - -.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; - 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: var(--color-panel); - 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 { - animation: fade-in 0.4s; - } - html.default.to-has-menu header, -html.default.to-has-menu footer, -html.default.to-has-menu .col-content { - animation: shift-to-left 0.4s; - } - html.default.to-has-menu .col-menu { - animation: pop-in-from-right 0.4s; - } - html.default.from-has-menu .overlay { - animation: fade-out 0.4s; - } - html.default.from-has-menu header, -html.default.from-has-menu footer, -html.default.from-has-menu .col-content { - animation: unshift-to-left 0.4s; - } - html.default.from-has-menu .col-menu { - 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 { - transform: translate(-25%, 0); - } - html.default.has-menu .col-menu { - visibility: visible; - transform: translate(0, 0); - } -} - -.tsd-page-title { - padding: 70px 0 20px 0; - margin: 0 0 40px 0; - background: var(--color-panel); - box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); -} -.tsd-page-title h1 { - margin: 0; -} - -.tsd-breadcrumb { - margin: 0; - padding: 0; - color: var(--color-text-aside); -} -.tsd-breadcrumb a { - color: var(--color-text-aside); - 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; - 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; - 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 { - float: left; - padding: 1px 5px; - margin: 0 10px 0 0; - border-radius: 4px; - border: 1px solid var(--color-comment-tag); - color: var(--color-comment-tag); - font-size: 0.8em; - font-weight: normal; -} -dl.tsd-comment-tags dd { - margin: 0 0 10px 0; -} -dl.tsd-comment-tags dd:before, dl.tsd-comment-tags dd:after { - display: table; - content: " "; -} -dl.tsd-comment-tags dd pre, dl.tsd-comment-tags dd:after { - clear: both; -} -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-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: var(--color-panel); - visibility: hidden; - 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 { - animation: fade-in 0.2s; - } - .from-has-options #tsd-filter .tsd-filter-group { - animation: fade-out 0.2s; - } - #tsd-filter label, -#tsd-filter .tsd-select { - display: block; - padding-right: 20px; - } -} - -footer { - border-top: 1px solid var(--color-panel-divider); - background-color: var(--color-panel); -} -footer.with-border-bottom { - border-bottom: 1px solid var(--color-panel-divider); -} -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 var(--color-panel-divider); -} -.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-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: var(--color-ts); -} -.tsd-index-panel .tsd-parent-kind-interface a { - color: var(--color-ts-interface); -} -.tsd-index-panel .tsd-parent-kind-enum a { - color: var(--color-ts-enum); -} -.tsd-index-panel .tsd-parent-kind-class a { - color: var(--color-ts-class); -} -.tsd-index-panel .tsd-kind-module a { - color: var(--color-ts); -} -.tsd-index-panel .tsd-kind-interface a { - color: var(--color-ts-interface); -} -.tsd-index-panel .tsd-kind-enum a { - color: var(--color-ts-enum); -} -.tsd-index-panel .tsd-kind-class a { - color: var(--color-ts-class); -} -.tsd-index-panel .tsd-is-private a { - color: var(--color-ts-private); -} - -.tsd-flag { - display: inline-block; - padding: 1px 5px; - border-radius: 4px; - color: var(--color-comment-tag-text); - background-color: var(--color-comment-tag); - 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-member a[data-tsd-kind] { - color: var(--color-ts); -} -.tsd-member a[data-tsd-kind=Interface] { - color: var(--color-ts-interface); -} -.tsd-member a[data-tsd-kind=Enum] { - color: var(--color-ts-enum); -} -.tsd-member a[data-tsd-kind=Class] { - color: var(--color-ts-class); -} -.tsd-member a[data-tsd-kind=Private] { - color: var(--color-ts-private); -} - -.tsd-navigation { - margin: 0 0 0 40px; -} -.tsd-navigation a { - display: block; - padding-top: 2px; - padding-bottom: 2px; - border-left: 2px solid transparent; - color: var(--color-text); - text-decoration: none; - 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 var(--color-panel-divider); -} -.tsd-navigation.primary li { - border-top: 1px solid var(--color-panel-divider); -} -.tsd-navigation.primary li.current > a { - font-weight: bold; -} -.tsd-navigation.primary li.label span { - display: block; - padding: 20px 0 6px 5px; - color: var(--color-menu-label); -} -.tsd-navigation.primary li.globals + li > span, .tsd-navigation.primary li.globals + li > a { - padding-top: 20px; -} - -.tsd-navigation.secondary { - max-height: calc(100vh - 1rem - 40px); - overflow: auto; - position: -webkit-sticky; - position: sticky; - top: calc(.5rem + 40px); - transition: 0.3s; -} -.tsd-navigation.secondary.tsd-navigation--toolbar-hide { - max-height: calc(100vh - 1rem); - top: 0.5rem; -} -.tsd-navigation.secondary ul { - 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: var(--color-panel-divider); -} -.tsd-navigation.secondary li.focus > a, -.tsd-navigation.secondary ul.current li.focus > a { - border-left-color: var(--color-menu-divider-focus); -} -.tsd-navigation.secondary li.current { - margin-top: 20px; - margin-bottom: 20px; - border-left-color: var(--color-panel-divider); -} -.tsd-navigation.secondary li.current > a { - font-weight: bold; -} - -@media (min-width: 901px) { - .menu-sticky-wrap { - position: static; - } -} - -.tsd-panel { - margin: 20px 0; - padding: 20px; - background-color: var(--color-panel); - 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 var(--color-panel-divider); -} -.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 { - 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: var(--color-text); -} -#tsd-search .field label { - position: absolute; - overflow: hidden; - right: -40px; -} -#tsd-search .field input, -#tsd-search .title { - 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: var(--color-background); -} -#tsd-search .results li:nth-child(even) { - background-color: var(--color-panel); -} -#tsd-search .results li.state { - display: none; -} -#tsd-search .results li.current, -#tsd-search .results li:hover { - background-color: var(--color-panel-divider); -} -#tsd-search .results a { - display: block; -} -#tsd-search .results a:before { - top: 10px; -} -#tsd-search .results span.parent { - color: var(--color-text-aside); - font-weight: normal; -} -#tsd-search.has-focus { - background-color: var(--color-panel-divider); -} -#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 var(--color-panel-divider); - font-family: Menlo, Monaco, Consolas, "Courier New", monospace; - font-size: 14px; - overflow-x: auto; -} -.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: var(--color-text-aside); - font-weight: normal; -} - -.tsd-signature-type { - font-style: italic; - font-weight: normal; -} - -.tsd-signatures { - padding: 0; - margin: 0 0 1em 0; - border: 1px solid var(--color-panel-divider); -} -.tsd-signatures .tsd-signature { - margin: 0; - border-width: 1px 0 0 0; - transition: background-color 0.1s; -} -.tsd-signatures .tsd-signature:first-child { - border-top-width: 0; -} -.tsd-signatures .tsd-signature.current { - background-color: var(--color-panel-divider); -} -.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; - 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 { - animation: fade-in-delayed 0.3s; -} -ul.tsd-descriptions.active > .tsd-description.fade-out { - 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-signature, -ul.tsd-type-parameters > li.tsd-parameter-signature { - 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: var(--color-text-aside); - margin: 0 0 1em 0; -} -.tsd-sources a { - color: var(--color-text-aside); - text-decoration: underline; -} -.tsd-sources ul, .tsd-sources p { - margin: 0 !important; -} -.tsd-sources ul { - list-style: none; - padding: 0; -} - -.tsd-page-toolbar { - position: fixed; - z-index: 1; - top: 0; - left: 0; - width: 100%; - height: 40px; - color: var(--color-toolbar-text); - background: var(--color-toolbar); - border-bottom: 1px solid var(--color-panel-divider); - transition: transform 0.3s linear; -} -.tsd-page-toolbar a { - color: var(--color-toolbar-text); - 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-page-toolbar--hide { - transform: translateY(-100%); -} - -.tsd-select .tsd-select-list li:before, .tsd-select .tsd-select-label:before, .tsd-widget: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-resolution: 144dpi) { - .tsd-select .tsd-select-list li:before, .tsd-select .tsd-select-label:before, .tsd-widget:before { - background-image: url(../images/widgets@2x.png); - background-size: 320px 40px; - } -} - -.tsd-widget { - display: inline-block; - overflow: hidden; - opacity: 0.6; - height: 40px; - 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: var(--color-panel-divider); -} -.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; - transition: opacity 0.1s, background-color 0.2s; - vertical-align: bottom; - cursor: pointer; -} -.tsd-select .tsd-select-label { - opacity: 0.6; - 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; - 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); - transition: visibility 0s 0.2s, opacity 0.2s; -} -.tsd-select .tsd-select-list li { - padding: 0 20px 0 0; - background-color: var(--color-background); -} -.tsd-select .tsd-select-list li:before { - background-position: 40px 0; -} -.tsd-select .tsd-select-list li:nth-child(even) { - background-color: var(--color-panel); -} -.tsd-select .tsd-select-list li:hover { - background-color: var(--color-panel-divider); -} -.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%; -} diff --git a/docs/assets/highlight.css b/docs/assets/highlight.css new file mode 100644 index 00000000..77870e7d --- /dev/null +++ b/docs/assets/highlight.css @@ -0,0 +1,92 @@ +:root { + --light-hl-0: #000000; + --dark-hl-0: #D4D4D4; + --light-hl-1: #A31515; + --dark-hl-1: #CE9178; + --light-hl-2: #AF00DB; + --dark-hl-2: #C586C0; + --light-hl-3: #001080; + --dark-hl-3: #9CDCFE; + --light-hl-4: #008000; + --dark-hl-4: #6A9955; + --light-hl-5: #0000FF; + --dark-hl-5: #569CD6; + --light-hl-6: #0070C1; + --dark-hl-6: #4FC1FF; + --light-hl-7: #795E26; + --dark-hl-7: #DCDCAA; + --light-hl-8: #098658; + --dark-hl-8: #B5CEA8; + --light-hl-9: #267F99; + --dark-hl-9: #4EC9B0; + --light-code-background: #FFFFFF; + --dark-code-background: #1E1E1E; +} + +@media (prefers-color-scheme: light) { :root { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); + --code-background: var(--light-code-background); +} } + +@media (prefers-color-scheme: dark) { :root { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); + --code-background: var(--dark-code-background); +} } + +body.light { + --hl-0: var(--light-hl-0); + --hl-1: var(--light-hl-1); + --hl-2: var(--light-hl-2); + --hl-3: var(--light-hl-3); + --hl-4: var(--light-hl-4); + --hl-5: var(--light-hl-5); + --hl-6: var(--light-hl-6); + --hl-7: var(--light-hl-7); + --hl-8: var(--light-hl-8); + --hl-9: var(--light-hl-9); + --code-background: var(--light-code-background); +} + +body.dark { + --hl-0: var(--dark-hl-0); + --hl-1: var(--dark-hl-1); + --hl-2: var(--dark-hl-2); + --hl-3: var(--dark-hl-3); + --hl-4: var(--dark-hl-4); + --hl-5: var(--dark-hl-5); + --hl-6: var(--dark-hl-6); + --hl-7: var(--dark-hl-7); + --hl-8: var(--dark-hl-8); + --hl-9: var(--dark-hl-9); + --code-background: var(--dark-code-background); +} + +.hl-0 { color: var(--hl-0); } +.hl-1 { color: var(--hl-1); } +.hl-2 { color: var(--hl-2); } +.hl-3 { color: var(--hl-3); } +.hl-4 { color: var(--hl-4); } +.hl-5 { color: var(--hl-5); } +.hl-6 { color: var(--hl-6); } +.hl-7 { color: var(--hl-7); } +.hl-8 { color: var(--hl-8); } +.hl-9 { color: var(--hl-9); } +pre, code { background: var(--code-background); } diff --git a/docs/assets/icons.css b/docs/assets/icons.css new file mode 100644 index 00000000..776a3562 --- /dev/null +++ b/docs/assets/icons.css @@ -0,0 +1,1043 @@ +.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(./icons.png); +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { + .tsd-kind-icon:before { + background-image: url(./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-namespace > .tsd-kind-icon:before { + background-position: 0px -102px; +} +.tsd-kind-namespace.tsd-is-protected > .tsd-kind-icon:before { + background-position: -17px -102px; +} +.tsd-kind-namespace.tsd-is-private > .tsd-kind-icon:before { + background-position: -34px -102px; +} + +.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-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-type-alias.tsd-has-type-parameter > .tsd-kind-icon:before { + background-position: 0px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-protected + > .tsd-kind-icon:before { + background-position: -17px -187px; +} +.tsd-kind-type-alias.tsd-has-type-parameter.tsd-is-private + > .tsd-kind-icon:before { + background-position: -34px -187px; +} + +.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; +} diff --git a/docs/assets/images/icons.png b/docs/assets/icons.png similarity index 100% rename from docs/assets/images/icons.png rename to docs/assets/icons.png diff --git a/docs/assets/images/icons@2x.png b/docs/assets/icons@2x.png similarity index 100% rename from docs/assets/images/icons@2x.png rename to docs/assets/icons@2x.png diff --git a/docs/assets/js/main.js b/docs/assets/js/main.js deleted file mode 100644 index dc257a86..00000000 --- a/docs/assets/js/main.js +++ /dev/null @@ -1,248 +0,0 @@ -/* - * ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development"). - * This devtool is not neither made for production nor for readable output files. - * It uses "eval()" calls to create a separate source file in the browser devtools. - * If you are trying to read the output file, select a different devtool (https://webpack.js.org/configuration/devtool/) - * or disable the default devtool with "devtool: false". - * If you are looking for production-ready output files, see mode: "production" (https://webpack.js.org/configuration/mode/). - */ -/******/ (() => { // webpackBootstrap -/******/ var __webpack_modules__ = ({ - -/***/ "../node_modules/lunr/lunr.js": -/*!************************************!*\ - !*** ../node_modules/lunr/lunr.js ***! - \************************************/ -/***/ ((module, exports, __webpack_require__) => { - -eval("var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;/**\n * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9\n * Copyright (C) 2020 Oliver Nightingale\n * @license MIT\n */\n\n;(function(){\n\n/**\n * A convenience function for configuring and constructing\n * a new lunr Index.\n *\n * A lunr.Builder instance is created and the pipeline setup\n * with a trimmer, stop word filter and stemmer.\n *\n * This builder object is yielded to the configuration function\n * that is passed as a parameter, allowing the list of fields\n * and other builder parameters to be customised.\n *\n * All documents _must_ be added within the passed config function.\n *\n * @example\n * var idx = lunr(function () {\n * this.field('title')\n * this.field('body')\n * this.ref('id')\n *\n * documents.forEach(function (doc) {\n * this.add(doc)\n * }, this)\n * })\n *\n * @see {@link lunr.Builder}\n * @see {@link lunr.Pipeline}\n * @see {@link lunr.trimmer}\n * @see {@link lunr.stopWordFilter}\n * @see {@link lunr.stemmer}\n * @namespace {function} lunr\n */\nvar lunr = function (config) {\n var builder = new lunr.Builder\n\n builder.pipeline.add(\n lunr.trimmer,\n lunr.stopWordFilter,\n lunr.stemmer\n )\n\n builder.searchPipeline.add(\n lunr.stemmer\n )\n\n config.call(builder, builder)\n return builder.build()\n}\n\nlunr.version = \"2.3.9\"\n/*!\n * lunr.utils\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A namespace containing utils for the rest of the lunr library\n * @namespace lunr.utils\n */\nlunr.utils = {}\n\n/**\n * Print a warning message to the console.\n *\n * @param {String} message The message to be printed.\n * @memberOf lunr.utils\n * @function\n */\nlunr.utils.warn = (function (global) {\n /* eslint-disable no-console */\n return function (message) {\n if (global.console && console.warn) {\n console.warn(message)\n }\n }\n /* eslint-enable no-console */\n})(this)\n\n/**\n * Convert an object to a string.\n *\n * In the case of `null` and `undefined` the function returns\n * the empty string, in all other cases the result of calling\n * `toString` on the passed object is returned.\n *\n * @param {Any} obj The object to convert to a string.\n * @return {String} string representation of the passed object.\n * @memberOf lunr.utils\n */\nlunr.utils.asString = function (obj) {\n if (obj === void 0 || obj === null) {\n return \"\"\n } else {\n return obj.toString()\n }\n}\n\n/**\n * Clones an object.\n *\n * Will create a copy of an existing object such that any mutations\n * on the copy cannot affect the original.\n *\n * Only shallow objects are supported, passing a nested object to this\n * function will cause a TypeError.\n *\n * Objects with primitives, and arrays of primitives are supported.\n *\n * @param {Object} obj The object to clone.\n * @return {Object} a clone of the passed object.\n * @throws {TypeError} when a nested object is passed.\n * @memberOf Utils\n */\nlunr.utils.clone = function (obj) {\n if (obj === null || obj === undefined) {\n return obj\n }\n\n var clone = Object.create(null),\n keys = Object.keys(obj)\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i],\n val = obj[key]\n\n if (Array.isArray(val)) {\n clone[key] = val.slice()\n continue\n }\n\n if (typeof val === 'string' ||\n typeof val === 'number' ||\n typeof val === 'boolean') {\n clone[key] = val\n continue\n }\n\n throw new TypeError(\"clone is not deep and does not support nested objects\")\n }\n\n return clone\n}\nlunr.FieldRef = function (docRef, fieldName, stringValue) {\n this.docRef = docRef\n this.fieldName = fieldName\n this._stringValue = stringValue\n}\n\nlunr.FieldRef.joiner = \"/\"\n\nlunr.FieldRef.fromString = function (s) {\n var n = s.indexOf(lunr.FieldRef.joiner)\n\n if (n === -1) {\n throw \"malformed field ref string\"\n }\n\n var fieldRef = s.slice(0, n),\n docRef = s.slice(n + 1)\n\n return new lunr.FieldRef (docRef, fieldRef, s)\n}\n\nlunr.FieldRef.prototype.toString = function () {\n if (this._stringValue == undefined) {\n this._stringValue = this.fieldName + lunr.FieldRef.joiner + this.docRef\n }\n\n return this._stringValue\n}\n/*!\n * lunr.Set\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A lunr set.\n *\n * @constructor\n */\nlunr.Set = function (elements) {\n this.elements = Object.create(null)\n\n if (elements) {\n this.length = elements.length\n\n for (var i = 0; i < this.length; i++) {\n this.elements[elements[i]] = true\n }\n } else {\n this.length = 0\n }\n}\n\n/**\n * A complete set that contains all elements.\n *\n * @static\n * @readonly\n * @type {lunr.Set}\n */\nlunr.Set.complete = {\n intersect: function (other) {\n return other\n },\n\n union: function () {\n return this\n },\n\n contains: function () {\n return true\n }\n}\n\n/**\n * An empty set that contains no elements.\n *\n * @static\n * @readonly\n * @type {lunr.Set}\n */\nlunr.Set.empty = {\n intersect: function () {\n return this\n },\n\n union: function (other) {\n return other\n },\n\n contains: function () {\n return false\n }\n}\n\n/**\n * Returns true if this set contains the specified object.\n *\n * @param {object} object - Object whose presence in this set is to be tested.\n * @returns {boolean} - True if this set contains the specified object.\n */\nlunr.Set.prototype.contains = function (object) {\n return !!this.elements[object]\n}\n\n/**\n * Returns a new set containing only the elements that are present in both\n * this set and the specified set.\n *\n * @param {lunr.Set} other - set to intersect with this set.\n * @returns {lunr.Set} a new set that is the intersection of this and the specified set.\n */\n\nlunr.Set.prototype.intersect = function (other) {\n var a, b, elements, intersection = []\n\n if (other === lunr.Set.complete) {\n return this\n }\n\n if (other === lunr.Set.empty) {\n return other\n }\n\n if (this.length < other.length) {\n a = this\n b = other\n } else {\n a = other\n b = this\n }\n\n elements = Object.keys(a.elements)\n\n for (var i = 0; i < elements.length; i++) {\n var element = elements[i]\n if (element in b.elements) {\n intersection.push(element)\n }\n }\n\n return new lunr.Set (intersection)\n}\n\n/**\n * Returns a new set combining the elements of this and the specified set.\n *\n * @param {lunr.Set} other - set to union with this set.\n * @return {lunr.Set} a new set that is the union of this and the specified set.\n */\n\nlunr.Set.prototype.union = function (other) {\n if (other === lunr.Set.complete) {\n return lunr.Set.complete\n }\n\n if (other === lunr.Set.empty) {\n return this\n }\n\n return new lunr.Set(Object.keys(this.elements).concat(Object.keys(other.elements)))\n}\n/**\n * A function to calculate the inverse document frequency for\n * a posting. This is shared between the builder and the index\n *\n * @private\n * @param {object} posting - The posting for a given term\n * @param {number} documentCount - The total number of documents.\n */\nlunr.idf = function (posting, documentCount) {\n var documentsWithTerm = 0\n\n for (var fieldName in posting) {\n if (fieldName == '_index') continue // Ignore the term index, its not a field\n documentsWithTerm += Object.keys(posting[fieldName]).length\n }\n\n var x = (documentCount - documentsWithTerm + 0.5) / (documentsWithTerm + 0.5)\n\n return Math.log(1 + Math.abs(x))\n}\n\n/**\n * A token wraps a string representation of a token\n * as it is passed through the text processing pipeline.\n *\n * @constructor\n * @param {string} [str=''] - The string token being wrapped.\n * @param {object} [metadata={}] - Metadata associated with this token.\n */\nlunr.Token = function (str, metadata) {\n this.str = str || \"\"\n this.metadata = metadata || {}\n}\n\n/**\n * Returns the token string that is being wrapped by this object.\n *\n * @returns {string}\n */\nlunr.Token.prototype.toString = function () {\n return this.str\n}\n\n/**\n * A token update function is used when updating or optionally\n * when cloning a token.\n *\n * @callback lunr.Token~updateFunction\n * @param {string} str - The string representation of the token.\n * @param {Object} metadata - All metadata associated with this token.\n */\n\n/**\n * Applies the given function to the wrapped string token.\n *\n * @example\n * token.update(function (str, metadata) {\n * return str.toUpperCase()\n * })\n *\n * @param {lunr.Token~updateFunction} fn - A function to apply to the token string.\n * @returns {lunr.Token}\n */\nlunr.Token.prototype.update = function (fn) {\n this.str = fn(this.str, this.metadata)\n return this\n}\n\n/**\n * Creates a clone of this token. Optionally a function can be\n * applied to the cloned token.\n *\n * @param {lunr.Token~updateFunction} [fn] - An optional function to apply to the cloned token.\n * @returns {lunr.Token}\n */\nlunr.Token.prototype.clone = function (fn) {\n fn = fn || function (s) { return s }\n return new lunr.Token (fn(this.str, this.metadata), this.metadata)\n}\n/*!\n * lunr.tokenizer\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A function for splitting a string into tokens ready to be inserted into\n * the search index. Uses `lunr.tokenizer.separator` to split strings, change\n * the value of this property to change how strings are split into tokens.\n *\n * This tokenizer will convert its parameter to a string by calling `toString` and\n * then will split this string on the character in `lunr.tokenizer.separator`.\n * Arrays will have their elements converted to strings and wrapped in a lunr.Token.\n *\n * Optional metadata can be passed to the tokenizer, this metadata will be cloned and\n * added as metadata to every token that is created from the object to be tokenized.\n *\n * @static\n * @param {?(string|object|object[])} obj - The object to convert into tokens\n * @param {?object} metadata - Optional metadata to associate with every token\n * @returns {lunr.Token[]}\n * @see {@link lunr.Pipeline}\n */\nlunr.tokenizer = function (obj, metadata) {\n if (obj == null || obj == undefined) {\n return []\n }\n\n if (Array.isArray(obj)) {\n return obj.map(function (t) {\n return new lunr.Token(\n lunr.utils.asString(t).toLowerCase(),\n lunr.utils.clone(metadata)\n )\n })\n }\n\n var str = obj.toString().toLowerCase(),\n len = str.length,\n tokens = []\n\n for (var sliceEnd = 0, sliceStart = 0; sliceEnd <= len; sliceEnd++) {\n var char = str.charAt(sliceEnd),\n sliceLength = sliceEnd - sliceStart\n\n if ((char.match(lunr.tokenizer.separator) || sliceEnd == len)) {\n\n if (sliceLength > 0) {\n var tokenMetadata = lunr.utils.clone(metadata) || {}\n tokenMetadata[\"position\"] = [sliceStart, sliceLength]\n tokenMetadata[\"index\"] = tokens.length\n\n tokens.push(\n new lunr.Token (\n str.slice(sliceStart, sliceEnd),\n tokenMetadata\n )\n )\n }\n\n sliceStart = sliceEnd + 1\n }\n\n }\n\n return tokens\n}\n\n/**\n * The separator used to split a string into tokens. Override this property to change the behaviour of\n * `lunr.tokenizer` behaviour when tokenizing strings. By default this splits on whitespace and hyphens.\n *\n * @static\n * @see lunr.tokenizer\n */\nlunr.tokenizer.separator = /[\\s\\-]+/\n/*!\n * lunr.Pipeline\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.Pipelines maintain an ordered list of functions to be applied to all\n * tokens in documents entering the search index and queries being ran against\n * the index.\n *\n * An instance of lunr.Index created with the lunr shortcut will contain a\n * pipeline with a stop word filter and an English language stemmer. Extra\n * functions can be added before or after either of these functions or these\n * default functions can be removed.\n *\n * When run the pipeline will call each function in turn, passing a token, the\n * index of that token in the original list of all tokens and finally a list of\n * all the original tokens.\n *\n * The output of functions in the pipeline will be passed to the next function\n * in the pipeline. To exclude a token from entering the index the function\n * should return undefined, the rest of the pipeline will not be called with\n * this token.\n *\n * For serialisation of pipelines to work, all functions used in an instance of\n * a pipeline should be registered with lunr.Pipeline. Registered functions can\n * then be loaded. If trying to load a serialised pipeline that uses functions\n * that are not registered an error will be thrown.\n *\n * If not planning on serialising the pipeline then registering pipeline functions\n * is not necessary.\n *\n * @constructor\n */\nlunr.Pipeline = function () {\n this._stack = []\n}\n\nlunr.Pipeline.registeredFunctions = Object.create(null)\n\n/**\n * A pipeline function maps lunr.Token to lunr.Token. A lunr.Token contains the token\n * string as well as all known metadata. A pipeline function can mutate the token string\n * or mutate (or add) metadata for a given token.\n *\n * A pipeline function can indicate that the passed token should be discarded by returning\n * null, undefined or an empty string. This token will not be passed to any downstream pipeline\n * functions and will not be added to the index.\n *\n * Multiple tokens can be returned by returning an array of tokens. Each token will be passed\n * to any downstream pipeline functions and all will returned tokens will be added to the index.\n *\n * Any number of pipeline functions may be chained together using a lunr.Pipeline.\n *\n * @interface lunr.PipelineFunction\n * @param {lunr.Token} token - A token from the document being processed.\n * @param {number} i - The index of this token in the complete list of tokens for this document/field.\n * @param {lunr.Token[]} tokens - All tokens for this document/field.\n * @returns {(?lunr.Token|lunr.Token[])}\n */\n\n/**\n * Register a function with the pipeline.\n *\n * Functions that are used in the pipeline should be registered if the pipeline\n * needs to be serialised, or a serialised pipeline needs to be loaded.\n *\n * Registering a function does not add it to a pipeline, functions must still be\n * added to instances of the pipeline for them to be used when running a pipeline.\n *\n * @param {lunr.PipelineFunction} fn - The function to check for.\n * @param {String} label - The label to register this function with\n */\nlunr.Pipeline.registerFunction = function (fn, label) {\n if (label in this.registeredFunctions) {\n lunr.utils.warn('Overwriting existing registered function: ' + label)\n }\n\n fn.label = label\n lunr.Pipeline.registeredFunctions[fn.label] = fn\n}\n\n/**\n * Warns if the function is not registered as a Pipeline function.\n *\n * @param {lunr.PipelineFunction} fn - The function to check for.\n * @private\n */\nlunr.Pipeline.warnIfFunctionNotRegistered = function (fn) {\n var isRegistered = fn.label && (fn.label in this.registeredFunctions)\n\n if (!isRegistered) {\n lunr.utils.warn('Function is not registered with pipeline. This may cause problems when serialising the index.\\n', fn)\n }\n}\n\n/**\n * Loads a previously serialised pipeline.\n *\n * All functions to be loaded must already be registered with lunr.Pipeline.\n * If any function from the serialised data has not been registered then an\n * error will be thrown.\n *\n * @param {Object} serialised - The serialised pipeline to load.\n * @returns {lunr.Pipeline}\n */\nlunr.Pipeline.load = function (serialised) {\n var pipeline = new lunr.Pipeline\n\n serialised.forEach(function (fnName) {\n var fn = lunr.Pipeline.registeredFunctions[fnName]\n\n if (fn) {\n pipeline.add(fn)\n } else {\n throw new Error('Cannot load unregistered function: ' + fnName)\n }\n })\n\n return pipeline\n}\n\n/**\n * Adds new functions to the end of the pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction[]} functions - Any number of functions to add to the pipeline.\n */\nlunr.Pipeline.prototype.add = function () {\n var fns = Array.prototype.slice.call(arguments)\n\n fns.forEach(function (fn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(fn)\n this._stack.push(fn)\n }, this)\n}\n\n/**\n * Adds a single function after a function that already exists in the\n * pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction} existingFn - A function that already exists in the pipeline.\n * @param {lunr.PipelineFunction} newFn - The new function to add to the pipeline.\n */\nlunr.Pipeline.prototype.after = function (existingFn, newFn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(newFn)\n\n var pos = this._stack.indexOf(existingFn)\n if (pos == -1) {\n throw new Error('Cannot find existingFn')\n }\n\n pos = pos + 1\n this._stack.splice(pos, 0, newFn)\n}\n\n/**\n * Adds a single function before a function that already exists in the\n * pipeline.\n *\n * Logs a warning if the function has not been registered.\n *\n * @param {lunr.PipelineFunction} existingFn - A function that already exists in the pipeline.\n * @param {lunr.PipelineFunction} newFn - The new function to add to the pipeline.\n */\nlunr.Pipeline.prototype.before = function (existingFn, newFn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(newFn)\n\n var pos = this._stack.indexOf(existingFn)\n if (pos == -1) {\n throw new Error('Cannot find existingFn')\n }\n\n this._stack.splice(pos, 0, newFn)\n}\n\n/**\n * Removes a function from the pipeline.\n *\n * @param {lunr.PipelineFunction} fn The function to remove from the pipeline.\n */\nlunr.Pipeline.prototype.remove = function (fn) {\n var pos = this._stack.indexOf(fn)\n if (pos == -1) {\n return\n }\n\n this._stack.splice(pos, 1)\n}\n\n/**\n * Runs the current list of functions that make up the pipeline against the\n * passed tokens.\n *\n * @param {Array} tokens The tokens to run through the pipeline.\n * @returns {Array}\n */\nlunr.Pipeline.prototype.run = function (tokens) {\n var stackLength = this._stack.length\n\n for (var i = 0; i < stackLength; i++) {\n var fn = this._stack[i]\n var memo = []\n\n for (var j = 0; j < tokens.length; j++) {\n var result = fn(tokens[j], j, tokens)\n\n if (result === null || result === void 0 || result === '') continue\n\n if (Array.isArray(result)) {\n for (var k = 0; k < result.length; k++) {\n memo.push(result[k])\n }\n } else {\n memo.push(result)\n }\n }\n\n tokens = memo\n }\n\n return tokens\n}\n\n/**\n * Convenience method for passing a string through a pipeline and getting\n * strings out. This method takes care of wrapping the passed string in a\n * token and mapping the resulting tokens back to strings.\n *\n * @param {string} str - The string to pass through the pipeline.\n * @param {?object} metadata - Optional metadata to associate with the token\n * passed to the pipeline.\n * @returns {string[]}\n */\nlunr.Pipeline.prototype.runString = function (str, metadata) {\n var token = new lunr.Token (str, metadata)\n\n return this.run([token]).map(function (t) {\n return t.toString()\n })\n}\n\n/**\n * Resets the pipeline by removing any existing processors.\n *\n */\nlunr.Pipeline.prototype.reset = function () {\n this._stack = []\n}\n\n/**\n * Returns a representation of the pipeline ready for serialisation.\n *\n * Logs a warning if the function has not been registered.\n *\n * @returns {Array}\n */\nlunr.Pipeline.prototype.toJSON = function () {\n return this._stack.map(function (fn) {\n lunr.Pipeline.warnIfFunctionNotRegistered(fn)\n\n return fn.label\n })\n}\n/*!\n * lunr.Vector\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A vector is used to construct the vector space of documents and queries. These\n * vectors support operations to determine the similarity between two documents or\n * a document and a query.\n *\n * Normally no parameters are required for initializing a vector, but in the case of\n * loading a previously dumped vector the raw elements can be provided to the constructor.\n *\n * For performance reasons vectors are implemented with a flat array, where an elements\n * index is immediately followed by its value. E.g. [index, value, index, value]. This\n * allows the underlying array to be as sparse as possible and still offer decent\n * performance when being used for vector calculations.\n *\n * @constructor\n * @param {Number[]} [elements] - The flat list of element index and element value pairs.\n */\nlunr.Vector = function (elements) {\n this._magnitude = 0\n this.elements = elements || []\n}\n\n\n/**\n * Calculates the position within the vector to insert a given index.\n *\n * This is used internally by insert and upsert. If there are duplicate indexes then\n * the position is returned as if the value for that index were to be updated, but it\n * is the callers responsibility to check whether there is a duplicate at that index\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @returns {Number}\n */\nlunr.Vector.prototype.positionForIndex = function (index) {\n // For an empty vector the tuple can be inserted at the beginning\n if (this.elements.length == 0) {\n return 0\n }\n\n var start = 0,\n end = this.elements.length / 2,\n sliceLength = end - start,\n pivotPoint = Math.floor(sliceLength / 2),\n pivotIndex = this.elements[pivotPoint * 2]\n\n while (sliceLength > 1) {\n if (pivotIndex < index) {\n start = pivotPoint\n }\n\n if (pivotIndex > index) {\n end = pivotPoint\n }\n\n if (pivotIndex == index) {\n break\n }\n\n sliceLength = end - start\n pivotPoint = start + Math.floor(sliceLength / 2)\n pivotIndex = this.elements[pivotPoint * 2]\n }\n\n if (pivotIndex == index) {\n return pivotPoint * 2\n }\n\n if (pivotIndex > index) {\n return pivotPoint * 2\n }\n\n if (pivotIndex < index) {\n return (pivotPoint + 1) * 2\n }\n}\n\n/**\n * Inserts an element at an index within the vector.\n *\n * Does not allow duplicates, will throw an error if there is already an entry\n * for this index.\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @param {Number} val - The value to be inserted into the vector.\n */\nlunr.Vector.prototype.insert = function (insertIdx, val) {\n this.upsert(insertIdx, val, function () {\n throw \"duplicate index\"\n })\n}\n\n/**\n * Inserts or updates an existing index within the vector.\n *\n * @param {Number} insertIdx - The index at which the element should be inserted.\n * @param {Number} val - The value to be inserted into the vector.\n * @param {function} fn - A function that is called for updates, the existing value and the\n * requested value are passed as arguments\n */\nlunr.Vector.prototype.upsert = function (insertIdx, val, fn) {\n this._magnitude = 0\n var position = this.positionForIndex(insertIdx)\n\n if (this.elements[position] == insertIdx) {\n this.elements[position + 1] = fn(this.elements[position + 1], val)\n } else {\n this.elements.splice(position, 0, insertIdx, val)\n }\n}\n\n/**\n * Calculates the magnitude of this vector.\n *\n * @returns {Number}\n */\nlunr.Vector.prototype.magnitude = function () {\n if (this._magnitude) return this._magnitude\n\n var sumOfSquares = 0,\n elementsLength = this.elements.length\n\n for (var i = 1; i < elementsLength; i += 2) {\n var val = this.elements[i]\n sumOfSquares += val * val\n }\n\n return this._magnitude = Math.sqrt(sumOfSquares)\n}\n\n/**\n * Calculates the dot product of this vector and another vector.\n *\n * @param {lunr.Vector} otherVector - The vector to compute the dot product with.\n * @returns {Number}\n */\nlunr.Vector.prototype.dot = function (otherVector) {\n var dotProduct = 0,\n a = this.elements, b = otherVector.elements,\n aLen = a.length, bLen = b.length,\n aVal = 0, bVal = 0,\n i = 0, j = 0\n\n while (i < aLen && j < bLen) {\n aVal = a[i], bVal = b[j]\n if (aVal < bVal) {\n i += 2\n } else if (aVal > bVal) {\n j += 2\n } else if (aVal == bVal) {\n dotProduct += a[i + 1] * b[j + 1]\n i += 2\n j += 2\n }\n }\n\n return dotProduct\n}\n\n/**\n * Calculates the similarity between this vector and another vector.\n *\n * @param {lunr.Vector} otherVector - The other vector to calculate the\n * similarity with.\n * @returns {Number}\n */\nlunr.Vector.prototype.similarity = function (otherVector) {\n return this.dot(otherVector) / this.magnitude() || 0\n}\n\n/**\n * Converts the vector to an array of the elements within the vector.\n *\n * @returns {Number[]}\n */\nlunr.Vector.prototype.toArray = function () {\n var output = new Array (this.elements.length / 2)\n\n for (var i = 1, j = 0; i < this.elements.length; i += 2, j++) {\n output[j] = this.elements[i]\n }\n\n return output\n}\n\n/**\n * A JSON serializable representation of the vector.\n *\n * @returns {Number[]}\n */\nlunr.Vector.prototype.toJSON = function () {\n return this.elements\n}\n/* eslint-disable */\n/*!\n * lunr.stemmer\n * Copyright (C) 2020 Oliver Nightingale\n * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt\n */\n\n/**\n * lunr.stemmer is an english language stemmer, this is a JavaScript\n * implementation of the PorterStemmer taken from http://tartarus.org/~martin\n *\n * @static\n * @implements {lunr.PipelineFunction}\n * @param {lunr.Token} token - The string to stem\n * @returns {lunr.Token}\n * @see {@link lunr.Pipeline}\n * @function\n */\nlunr.stemmer = (function(){\n var step2list = {\n \"ational\" : \"ate\",\n \"tional\" : \"tion\",\n \"enci\" : \"ence\",\n \"anci\" : \"ance\",\n \"izer\" : \"ize\",\n \"bli\" : \"ble\",\n \"alli\" : \"al\",\n \"entli\" : \"ent\",\n \"eli\" : \"e\",\n \"ousli\" : \"ous\",\n \"ization\" : \"ize\",\n \"ation\" : \"ate\",\n \"ator\" : \"ate\",\n \"alism\" : \"al\",\n \"iveness\" : \"ive\",\n \"fulness\" : \"ful\",\n \"ousness\" : \"ous\",\n \"aliti\" : \"al\",\n \"iviti\" : \"ive\",\n \"biliti\" : \"ble\",\n \"logi\" : \"log\"\n },\n\n step3list = {\n \"icate\" : \"ic\",\n \"ative\" : \"\",\n \"alize\" : \"al\",\n \"iciti\" : \"ic\",\n \"ical\" : \"ic\",\n \"ful\" : \"\",\n \"ness\" : \"\"\n },\n\n c = \"[^aeiou]\", // consonant\n v = \"[aeiouy]\", // vowel\n C = c + \"[^aeiouy]*\", // consonant sequence\n V = v + \"[aeiou]*\", // vowel sequence\n\n mgr0 = \"^(\" + C + \")?\" + V + C, // [C]VC... is m>0\n meq1 = \"^(\" + C + \")?\" + V + C + \"(\" + V + \")?$\", // [C]VC[V] is m=1\n mgr1 = \"^(\" + C + \")?\" + V + C + V + C, // [C]VCVC... is m>1\n s_v = \"^(\" + C + \")?\" + v; // vowel in stem\n\n var re_mgr0 = new RegExp(mgr0);\n var re_mgr1 = new RegExp(mgr1);\n var re_meq1 = new RegExp(meq1);\n var re_s_v = new RegExp(s_v);\n\n var re_1a = /^(.+?)(ss|i)es$/;\n var re2_1a = /^(.+?)([^s])s$/;\n var re_1b = /^(.+?)eed$/;\n var re2_1b = /^(.+?)(ed|ing)$/;\n var re_1b_2 = /.$/;\n var re2_1b_2 = /(at|bl|iz)$/;\n var re3_1b_2 = new RegExp(\"([^aeiouylsz])\\\\1$\");\n var re4_1b_2 = new RegExp(\"^\" + C + v + \"[^aeiouwxy]$\");\n\n var re_1c = /^(.+?[^aeiou])y$/;\n var re_2 = /^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/;\n\n var re_3 = /^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/;\n\n var re_4 = /^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/;\n var re2_4 = /^(.+?)(s|t)(ion)$/;\n\n var re_5 = /^(.+?)e$/;\n var re_5_1 = /ll$/;\n var re3_5 = new RegExp(\"^\" + C + v + \"[^aeiouwxy]$\");\n\n var porterStemmer = function porterStemmer(w) {\n var stem,\n suffix,\n firstch,\n re,\n re2,\n re3,\n re4;\n\n if (w.length < 3) { return w; }\n\n firstch = w.substr(0,1);\n if (firstch == \"y\") {\n w = firstch.toUpperCase() + w.substr(1);\n }\n\n // Step 1a\n re = re_1a\n re2 = re2_1a;\n\n if (re.test(w)) { w = w.replace(re,\"$1$2\"); }\n else if (re2.test(w)) { w = w.replace(re2,\"$1$2\"); }\n\n // Step 1b\n re = re_1b;\n re2 = re2_1b;\n if (re.test(w)) {\n var fp = re.exec(w);\n re = re_mgr0;\n if (re.test(fp[1])) {\n re = re_1b_2;\n w = w.replace(re,\"\");\n }\n } else if (re2.test(w)) {\n var fp = re2.exec(w);\n stem = fp[1];\n re2 = re_s_v;\n if (re2.test(stem)) {\n w = stem;\n re2 = re2_1b_2;\n re3 = re3_1b_2;\n re4 = re4_1b_2;\n if (re2.test(w)) { w = w + \"e\"; }\n else if (re3.test(w)) { re = re_1b_2; w = w.replace(re,\"\"); }\n else if (re4.test(w)) { w = w + \"e\"; }\n }\n }\n\n // Step 1c - replace suffix y or Y by i if preceded by a non-vowel which is not the first letter of the word (so cry -> cri, by -> by, say -> say)\n re = re_1c;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n w = stem + \"i\";\n }\n\n // Step 2\n re = re_2;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n suffix = fp[2];\n re = re_mgr0;\n if (re.test(stem)) {\n w = stem + step2list[suffix];\n }\n }\n\n // Step 3\n re = re_3;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n suffix = fp[2];\n re = re_mgr0;\n if (re.test(stem)) {\n w = stem + step3list[suffix];\n }\n }\n\n // Step 4\n re = re_4;\n re2 = re2_4;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n re = re_mgr1;\n if (re.test(stem)) {\n w = stem;\n }\n } else if (re2.test(w)) {\n var fp = re2.exec(w);\n stem = fp[1] + fp[2];\n re2 = re_mgr1;\n if (re2.test(stem)) {\n w = stem;\n }\n }\n\n // Step 5\n re = re_5;\n if (re.test(w)) {\n var fp = re.exec(w);\n stem = fp[1];\n re = re_mgr1;\n re2 = re_meq1;\n re3 = re3_5;\n if (re.test(stem) || (re2.test(stem) && !(re3.test(stem)))) {\n w = stem;\n }\n }\n\n re = re_5_1;\n re2 = re_mgr1;\n if (re.test(w) && re2.test(w)) {\n re = re_1b_2;\n w = w.replace(re,\"\");\n }\n\n // and turn initial Y back to y\n\n if (firstch == \"y\") {\n w = firstch.toLowerCase() + w.substr(1);\n }\n\n return w;\n };\n\n return function (token) {\n return token.update(porterStemmer);\n }\n})();\n\nlunr.Pipeline.registerFunction(lunr.stemmer, 'stemmer')\n/*!\n * lunr.stopWordFilter\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.generateStopWordFilter builds a stopWordFilter function from the provided\n * list of stop words.\n *\n * The built in lunr.stopWordFilter is built using this generator and can be used\n * to generate custom stopWordFilters for applications or non English languages.\n *\n * @function\n * @param {Array} token The token to pass through the filter\n * @returns {lunr.PipelineFunction}\n * @see lunr.Pipeline\n * @see lunr.stopWordFilter\n */\nlunr.generateStopWordFilter = function (stopWords) {\n var words = stopWords.reduce(function (memo, stopWord) {\n memo[stopWord] = stopWord\n return memo\n }, {})\n\n return function (token) {\n if (token && words[token.toString()] !== token.toString()) return token\n }\n}\n\n/**\n * lunr.stopWordFilter is an English language stop word list filter, any words\n * contained in the list will not be passed through the filter.\n *\n * This is intended to be used in the Pipeline. If the token does not pass the\n * filter then undefined will be returned.\n *\n * @function\n * @implements {lunr.PipelineFunction}\n * @params {lunr.Token} token - A token to check for being a stop word.\n * @returns {lunr.Token}\n * @see {@link lunr.Pipeline}\n */\nlunr.stopWordFilter = lunr.generateStopWordFilter([\n 'a',\n 'able',\n 'about',\n 'across',\n 'after',\n 'all',\n 'almost',\n 'also',\n 'am',\n 'among',\n 'an',\n 'and',\n 'any',\n 'are',\n 'as',\n 'at',\n 'be',\n 'because',\n 'been',\n 'but',\n 'by',\n 'can',\n 'cannot',\n 'could',\n 'dear',\n 'did',\n 'do',\n 'does',\n 'either',\n 'else',\n 'ever',\n 'every',\n 'for',\n 'from',\n 'get',\n 'got',\n 'had',\n 'has',\n 'have',\n 'he',\n 'her',\n 'hers',\n 'him',\n 'his',\n 'how',\n 'however',\n 'i',\n 'if',\n 'in',\n 'into',\n 'is',\n 'it',\n 'its',\n 'just',\n 'least',\n 'let',\n 'like',\n 'likely',\n 'may',\n 'me',\n 'might',\n 'most',\n 'must',\n 'my',\n 'neither',\n 'no',\n 'nor',\n 'not',\n 'of',\n 'off',\n 'often',\n 'on',\n 'only',\n 'or',\n 'other',\n 'our',\n 'own',\n 'rather',\n 'said',\n 'say',\n 'says',\n 'she',\n 'should',\n 'since',\n 'so',\n 'some',\n 'than',\n 'that',\n 'the',\n 'their',\n 'them',\n 'then',\n 'there',\n 'these',\n 'they',\n 'this',\n 'tis',\n 'to',\n 'too',\n 'twas',\n 'us',\n 'wants',\n 'was',\n 'we',\n 'were',\n 'what',\n 'when',\n 'where',\n 'which',\n 'while',\n 'who',\n 'whom',\n 'why',\n 'will',\n 'with',\n 'would',\n 'yet',\n 'you',\n 'your'\n])\n\nlunr.Pipeline.registerFunction(lunr.stopWordFilter, 'stopWordFilter')\n/*!\n * lunr.trimmer\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.trimmer is a pipeline function for trimming non word\n * characters from the beginning and end of tokens before they\n * enter the index.\n *\n * This implementation may not work correctly for non latin\n * characters and should either be removed or adapted for use\n * with languages with non-latin characters.\n *\n * @static\n * @implements {lunr.PipelineFunction}\n * @param {lunr.Token} token The token to pass through the filter\n * @returns {lunr.Token}\n * @see lunr.Pipeline\n */\nlunr.trimmer = function (token) {\n return token.update(function (s) {\n return s.replace(/^\\W+/, '').replace(/\\W+$/, '')\n })\n}\n\nlunr.Pipeline.registerFunction(lunr.trimmer, 'trimmer')\n/*!\n * lunr.TokenSet\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * A token set is used to store the unique list of all tokens\n * within an index. Token sets are also used to represent an\n * incoming query to the index, this query token set and index\n * token set are then intersected to find which tokens to look\n * up in the inverted index.\n *\n * A token set can hold multiple tokens, as in the case of the\n * index token set, or it can hold a single token as in the\n * case of a simple query token set.\n *\n * Additionally token sets are used to perform wildcard matching.\n * Leading, contained and trailing wildcards are supported, and\n * from this edit distance matching can also be provided.\n *\n * Token sets are implemented as a minimal finite state automata,\n * where both common prefixes and suffixes are shared between tokens.\n * This helps to reduce the space used for storing the token set.\n *\n * @constructor\n */\nlunr.TokenSet = function () {\n this.final = false\n this.edges = {}\n this.id = lunr.TokenSet._nextId\n lunr.TokenSet._nextId += 1\n}\n\n/**\n * Keeps track of the next, auto increment, identifier to assign\n * to a new tokenSet.\n *\n * TokenSets require a unique identifier to be correctly minimised.\n *\n * @private\n */\nlunr.TokenSet._nextId = 1\n\n/**\n * Creates a TokenSet instance from the given sorted array of words.\n *\n * @param {String[]} arr - A sorted array of strings to create the set from.\n * @returns {lunr.TokenSet}\n * @throws Will throw an error if the input array is not sorted.\n */\nlunr.TokenSet.fromArray = function (arr) {\n var builder = new lunr.TokenSet.Builder\n\n for (var i = 0, len = arr.length; i < len; i++) {\n builder.insert(arr[i])\n }\n\n builder.finish()\n return builder.root\n}\n\n/**\n * Creates a token set from a query clause.\n *\n * @private\n * @param {Object} clause - A single clause from lunr.Query.\n * @param {string} clause.term - The query clause term.\n * @param {number} [clause.editDistance] - The optional edit distance for the term.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.fromClause = function (clause) {\n if ('editDistance' in clause) {\n return lunr.TokenSet.fromFuzzyString(clause.term, clause.editDistance)\n } else {\n return lunr.TokenSet.fromString(clause.term)\n }\n}\n\n/**\n * Creates a token set representing a single string with a specified\n * edit distance.\n *\n * Insertions, deletions, substitutions and transpositions are each\n * treated as an edit distance of 1.\n *\n * Increasing the allowed edit distance will have a dramatic impact\n * on the performance of both creating and intersecting these TokenSets.\n * It is advised to keep the edit distance less than 3.\n *\n * @param {string} str - The string to create the token set from.\n * @param {number} editDistance - The allowed edit distance to match.\n * @returns {lunr.Vector}\n */\nlunr.TokenSet.fromFuzzyString = function (str, editDistance) {\n var root = new lunr.TokenSet\n\n var stack = [{\n node: root,\n editsRemaining: editDistance,\n str: str\n }]\n\n while (stack.length) {\n var frame = stack.pop()\n\n // no edit\n if (frame.str.length > 0) {\n var char = frame.str.charAt(0),\n noEditNode\n\n if (char in frame.node.edges) {\n noEditNode = frame.node.edges[char]\n } else {\n noEditNode = new lunr.TokenSet\n frame.node.edges[char] = noEditNode\n }\n\n if (frame.str.length == 1) {\n noEditNode.final = true\n }\n\n stack.push({\n node: noEditNode,\n editsRemaining: frame.editsRemaining,\n str: frame.str.slice(1)\n })\n }\n\n if (frame.editsRemaining == 0) {\n continue\n }\n\n // insertion\n if (\"*\" in frame.node.edges) {\n var insertionNode = frame.node.edges[\"*\"]\n } else {\n var insertionNode = new lunr.TokenSet\n frame.node.edges[\"*\"] = insertionNode\n }\n\n if (frame.str.length == 0) {\n insertionNode.final = true\n }\n\n stack.push({\n node: insertionNode,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str\n })\n\n // deletion\n // can only do a deletion if we have enough edits remaining\n // and if there are characters left to delete in the string\n if (frame.str.length > 1) {\n stack.push({\n node: frame.node,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str.slice(1)\n })\n }\n\n // deletion\n // just removing the last character from the str\n if (frame.str.length == 1) {\n frame.node.final = true\n }\n\n // substitution\n // can only do a substitution if we have enough edits remaining\n // and if there are characters left to substitute\n if (frame.str.length >= 1) {\n if (\"*\" in frame.node.edges) {\n var substitutionNode = frame.node.edges[\"*\"]\n } else {\n var substitutionNode = new lunr.TokenSet\n frame.node.edges[\"*\"] = substitutionNode\n }\n\n if (frame.str.length == 1) {\n substitutionNode.final = true\n }\n\n stack.push({\n node: substitutionNode,\n editsRemaining: frame.editsRemaining - 1,\n str: frame.str.slice(1)\n })\n }\n\n // transposition\n // can only do a transposition if there are edits remaining\n // and there are enough characters to transpose\n if (frame.str.length > 1) {\n var charA = frame.str.charAt(0),\n charB = frame.str.charAt(1),\n transposeNode\n\n if (charB in frame.node.edges) {\n transposeNode = frame.node.edges[charB]\n } else {\n transposeNode = new lunr.TokenSet\n frame.node.edges[charB] = transposeNode\n }\n\n if (frame.str.length == 1) {\n transposeNode.final = true\n }\n\n stack.push({\n node: transposeNode,\n editsRemaining: frame.editsRemaining - 1,\n str: charA + frame.str.slice(2)\n })\n }\n }\n\n return root\n}\n\n/**\n * Creates a TokenSet from a string.\n *\n * The string may contain one or more wildcard characters (*)\n * that will allow wildcard matching when intersecting with\n * another TokenSet.\n *\n * @param {string} str - The string to create a TokenSet from.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.fromString = function (str) {\n var node = new lunr.TokenSet,\n root = node\n\n /*\n * Iterates through all characters within the passed string\n * appending a node for each character.\n *\n * When a wildcard character is found then a self\n * referencing edge is introduced to continually match\n * any number of any characters.\n */\n for (var i = 0, len = str.length; i < len; i++) {\n var char = str[i],\n final = (i == len - 1)\n\n if (char == \"*\") {\n node.edges[char] = node\n node.final = final\n\n } else {\n var next = new lunr.TokenSet\n next.final = final\n\n node.edges[char] = next\n node = next\n }\n }\n\n return root\n}\n\n/**\n * Converts this TokenSet into an array of strings\n * contained within the TokenSet.\n *\n * This is not intended to be used on a TokenSet that\n * contains wildcards, in these cases the results are\n * undefined and are likely to cause an infinite loop.\n *\n * @returns {string[]}\n */\nlunr.TokenSet.prototype.toArray = function () {\n var words = []\n\n var stack = [{\n prefix: \"\",\n node: this\n }]\n\n while (stack.length) {\n var frame = stack.pop(),\n edges = Object.keys(frame.node.edges),\n len = edges.length\n\n if (frame.node.final) {\n /* In Safari, at this point the prefix is sometimes corrupted, see:\n * https://github.com/olivernn/lunr.js/issues/279 Calling any\n * String.prototype method forces Safari to \"cast\" this string to what\n * it's supposed to be, fixing the bug. */\n frame.prefix.charAt(0)\n words.push(frame.prefix)\n }\n\n for (var i = 0; i < len; i++) {\n var edge = edges[i]\n\n stack.push({\n prefix: frame.prefix.concat(edge),\n node: frame.node.edges[edge]\n })\n }\n }\n\n return words\n}\n\n/**\n * Generates a string representation of a TokenSet.\n *\n * This is intended to allow TokenSets to be used as keys\n * in objects, largely to aid the construction and minimisation\n * of a TokenSet. As such it is not designed to be a human\n * friendly representation of the TokenSet.\n *\n * @returns {string}\n */\nlunr.TokenSet.prototype.toString = function () {\n // NOTE: Using Object.keys here as this.edges is very likely\n // to enter 'hash-mode' with many keys being added\n //\n // avoiding a for-in loop here as it leads to the function\n // being de-optimised (at least in V8). From some simple\n // benchmarks the performance is comparable, but allowing\n // V8 to optimize may mean easy performance wins in the future.\n\n if (this._str) {\n return this._str\n }\n\n var str = this.final ? '1' : '0',\n labels = Object.keys(this.edges).sort(),\n len = labels.length\n\n for (var i = 0; i < len; i++) {\n var label = labels[i],\n node = this.edges[label]\n\n str = str + label + node.id\n }\n\n return str\n}\n\n/**\n * Returns a new TokenSet that is the intersection of\n * this TokenSet and the passed TokenSet.\n *\n * This intersection will take into account any wildcards\n * contained within the TokenSet.\n *\n * @param {lunr.TokenSet} b - An other TokenSet to intersect with.\n * @returns {lunr.TokenSet}\n */\nlunr.TokenSet.prototype.intersect = function (b) {\n var output = new lunr.TokenSet,\n frame = undefined\n\n var stack = [{\n qNode: b,\n output: output,\n node: this\n }]\n\n while (stack.length) {\n frame = stack.pop()\n\n // NOTE: As with the #toString method, we are using\n // Object.keys and a for loop instead of a for-in loop\n // as both of these objects enter 'hash' mode, causing\n // the function to be de-optimised in V8\n var qEdges = Object.keys(frame.qNode.edges),\n qLen = qEdges.length,\n nEdges = Object.keys(frame.node.edges),\n nLen = nEdges.length\n\n for (var q = 0; q < qLen; q++) {\n var qEdge = qEdges[q]\n\n for (var n = 0; n < nLen; n++) {\n var nEdge = nEdges[n]\n\n if (nEdge == qEdge || qEdge == '*') {\n var node = frame.node.edges[nEdge],\n qNode = frame.qNode.edges[qEdge],\n final = node.final && qNode.final,\n next = undefined\n\n if (nEdge in frame.output.edges) {\n // an edge already exists for this character\n // no need to create a new node, just set the finality\n // bit unless this node is already final\n next = frame.output.edges[nEdge]\n next.final = next.final || final\n\n } else {\n // no edge exists yet, must create one\n // set the finality bit and insert it\n // into the output\n next = new lunr.TokenSet\n next.final = final\n frame.output.edges[nEdge] = next\n }\n\n stack.push({\n qNode: qNode,\n output: next,\n node: node\n })\n }\n }\n }\n }\n\n return output\n}\nlunr.TokenSet.Builder = function () {\n this.previousWord = \"\"\n this.root = new lunr.TokenSet\n this.uncheckedNodes = []\n this.minimizedNodes = {}\n}\n\nlunr.TokenSet.Builder.prototype.insert = function (word) {\n var node,\n commonPrefix = 0\n\n if (word < this.previousWord) {\n throw new Error (\"Out of order word insertion\")\n }\n\n for (var i = 0; i < word.length && i < this.previousWord.length; i++) {\n if (word[i] != this.previousWord[i]) break\n commonPrefix++\n }\n\n this.minimize(commonPrefix)\n\n if (this.uncheckedNodes.length == 0) {\n node = this.root\n } else {\n node = this.uncheckedNodes[this.uncheckedNodes.length - 1].child\n }\n\n for (var i = commonPrefix; i < word.length; i++) {\n var nextNode = new lunr.TokenSet,\n char = word[i]\n\n node.edges[char] = nextNode\n\n this.uncheckedNodes.push({\n parent: node,\n char: char,\n child: nextNode\n })\n\n node = nextNode\n }\n\n node.final = true\n this.previousWord = word\n}\n\nlunr.TokenSet.Builder.prototype.finish = function () {\n this.minimize(0)\n}\n\nlunr.TokenSet.Builder.prototype.minimize = function (downTo) {\n for (var i = this.uncheckedNodes.length - 1; i >= downTo; i--) {\n var node = this.uncheckedNodes[i],\n childKey = node.child.toString()\n\n if (childKey in this.minimizedNodes) {\n node.parent.edges[node.char] = this.minimizedNodes[childKey]\n } else {\n // Cache the key for this node since\n // we know it can't change anymore\n node.child._str = childKey\n\n this.minimizedNodes[childKey] = node.child\n }\n\n this.uncheckedNodes.pop()\n }\n}\n/*!\n * lunr.Index\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * An index contains the built index of all documents and provides a query interface\n * to the index.\n *\n * Usually instances of lunr.Index will not be created using this constructor, instead\n * lunr.Builder should be used to construct new indexes, or lunr.Index.load should be\n * used to load previously built and serialized indexes.\n *\n * @constructor\n * @param {Object} attrs - The attributes of the built search index.\n * @param {Object} attrs.invertedIndex - An index of term/field to document reference.\n * @param {Object} attrs.fieldVectors - Field vectors\n * @param {lunr.TokenSet} attrs.tokenSet - An set of all corpus tokens.\n * @param {string[]} attrs.fields - The names of indexed document fields.\n * @param {lunr.Pipeline} attrs.pipeline - The pipeline to use for search terms.\n */\nlunr.Index = function (attrs) {\n this.invertedIndex = attrs.invertedIndex\n this.fieldVectors = attrs.fieldVectors\n this.tokenSet = attrs.tokenSet\n this.fields = attrs.fields\n this.pipeline = attrs.pipeline\n}\n\n/**\n * A result contains details of a document matching a search query.\n * @typedef {Object} lunr.Index~Result\n * @property {string} ref - The reference of the document this result represents.\n * @property {number} score - A number between 0 and 1 representing how similar this document is to the query.\n * @property {lunr.MatchData} matchData - Contains metadata about this match including which term(s) caused the match.\n */\n\n/**\n * Although lunr provides the ability to create queries using lunr.Query, it also provides a simple\n * query language which itself is parsed into an instance of lunr.Query.\n *\n * For programmatically building queries it is advised to directly use lunr.Query, the query language\n * is best used for human entered text rather than program generated text.\n *\n * At its simplest queries can just be a single term, e.g. `hello`, multiple terms are also supported\n * and will be combined with OR, e.g `hello world` will match documents that contain either 'hello'\n * or 'world', though those that contain both will rank higher in the results.\n *\n * Wildcards can be included in terms to match one or more unspecified characters, these wildcards can\n * be inserted anywhere within the term, and more than one wildcard can exist in a single term. Adding\n * wildcards will increase the number of documents that will be found but can also have a negative\n * impact on query performance, especially with wildcards at the beginning of a term.\n *\n * Terms can be restricted to specific fields, e.g. `title:hello`, only documents with the term\n * hello in the title field will match this query. Using a field not present in the index will lead\n * to an error being thrown.\n *\n * Modifiers can also be added to terms, lunr supports edit distance and boost modifiers on terms. A term\n * boost will make documents matching that term score higher, e.g. `foo^5`. Edit distance is also supported\n * to provide fuzzy matching, e.g. 'hello~2' will match documents with hello with an edit distance of 2.\n * Avoid large values for edit distance to improve query performance.\n *\n * Each term also supports a presence modifier. By default a term's presence in document is optional, however\n * this can be changed to either required or prohibited. For a term's presence to be required in a document the\n * term should be prefixed with a '+', e.g. `+foo bar` is a search for documents that must contain 'foo' and\n * optionally contain 'bar'. Conversely a leading '-' sets the terms presence to prohibited, i.e. it must not\n * appear in a document, e.g. `-foo bar` is a search for documents that do not contain 'foo' but may contain 'bar'.\n *\n * To escape special characters the backslash character '\\' can be used, this allows searches to include\n * characters that would normally be considered modifiers, e.g. `foo\\~2` will search for a term \"foo~2\" instead\n * of attempting to apply a boost of 2 to the search term \"foo\".\n *\n * @typedef {string} lunr.Index~QueryString\n * @example Simple single term query\n * hello\n * @example Multiple term query\n * hello world\n * @example term scoped to a field\n * title:hello\n * @example term with a boost of 10\n * hello^10\n * @example term with an edit distance of 2\n * hello~2\n * @example terms with presence modifiers\n * -foo +bar baz\n */\n\n/**\n * Performs a search against the index using lunr query syntax.\n *\n * Results will be returned sorted by their score, the most relevant results\n * will be returned first. For details on how the score is calculated, please see\n * the {@link https://lunrjs.com/guides/searching.html#scoring|guide}.\n *\n * For more programmatic querying use lunr.Index#query.\n *\n * @param {lunr.Index~QueryString} queryString - A string containing a lunr query.\n * @throws {lunr.QueryParseError} If the passed query string cannot be parsed.\n * @returns {lunr.Index~Result[]}\n */\nlunr.Index.prototype.search = function (queryString) {\n return this.query(function (query) {\n var parser = new lunr.QueryParser(queryString, query)\n parser.parse()\n })\n}\n\n/**\n * A query builder callback provides a query object to be used to express\n * the query to perform on the index.\n *\n * @callback lunr.Index~queryBuilder\n * @param {lunr.Query} query - The query object to build up.\n * @this lunr.Query\n */\n\n/**\n * Performs a query against the index using the yielded lunr.Query object.\n *\n * If performing programmatic queries against the index, this method is preferred\n * over lunr.Index#search so as to avoid the additional query parsing overhead.\n *\n * A query object is yielded to the supplied function which should be used to\n * express the query to be run against the index.\n *\n * Note that although this function takes a callback parameter it is _not_ an\n * asynchronous operation, the callback is just yielded a query object to be\n * customized.\n *\n * @param {lunr.Index~queryBuilder} fn - A function that is used to build the query.\n * @returns {lunr.Index~Result[]}\n */\nlunr.Index.prototype.query = function (fn) {\n // for each query clause\n // * process terms\n // * expand terms from token set\n // * find matching documents and metadata\n // * get document vectors\n // * score documents\n\n var query = new lunr.Query(this.fields),\n matchingFields = Object.create(null),\n queryVectors = Object.create(null),\n termFieldCache = Object.create(null),\n requiredMatches = Object.create(null),\n prohibitedMatches = Object.create(null)\n\n /*\n * To support field level boosts a query vector is created per\n * field. An empty vector is eagerly created to support negated\n * queries.\n */\n for (var i = 0; i < this.fields.length; i++) {\n queryVectors[this.fields[i]] = new lunr.Vector\n }\n\n fn.call(query, query)\n\n for (var i = 0; i < query.clauses.length; i++) {\n /*\n * Unless the pipeline has been disabled for this term, which is\n * the case for terms with wildcards, we need to pass the clause\n * term through the search pipeline. A pipeline returns an array\n * of processed terms. Pipeline functions may expand the passed\n * term, which means we may end up performing multiple index lookups\n * for a single query term.\n */\n var clause = query.clauses[i],\n terms = null,\n clauseMatches = lunr.Set.empty\n\n if (clause.usePipeline) {\n terms = this.pipeline.runString(clause.term, {\n fields: clause.fields\n })\n } else {\n terms = [clause.term]\n }\n\n for (var m = 0; m < terms.length; m++) {\n var term = terms[m]\n\n /*\n * Each term returned from the pipeline needs to use the same query\n * clause object, e.g. the same boost and or edit distance. The\n * simplest way to do this is to re-use the clause object but mutate\n * its term property.\n */\n clause.term = term\n\n /*\n * From the term in the clause we create a token set which will then\n * be used to intersect the indexes token set to get a list of terms\n * to lookup in the inverted index\n */\n var termTokenSet = lunr.TokenSet.fromClause(clause),\n expandedTerms = this.tokenSet.intersect(termTokenSet).toArray()\n\n /*\n * If a term marked as required does not exist in the tokenSet it is\n * impossible for the search to return any matches. We set all the field\n * scoped required matches set to empty and stop examining any further\n * clauses.\n */\n if (expandedTerms.length === 0 && clause.presence === lunr.Query.presence.REQUIRED) {\n for (var k = 0; k < clause.fields.length; k++) {\n var field = clause.fields[k]\n requiredMatches[field] = lunr.Set.empty\n }\n\n break\n }\n\n for (var j = 0; j < expandedTerms.length; j++) {\n /*\n * For each term get the posting and termIndex, this is required for\n * building the query vector.\n */\n var expandedTerm = expandedTerms[j],\n posting = this.invertedIndex[expandedTerm],\n termIndex = posting._index\n\n for (var k = 0; k < clause.fields.length; k++) {\n /*\n * For each field that this query term is scoped by (by default\n * all fields are in scope) we need to get all the document refs\n * that have this term in that field.\n *\n * The posting is the entry in the invertedIndex for the matching\n * term from above.\n */\n var field = clause.fields[k],\n fieldPosting = posting[field],\n matchingDocumentRefs = Object.keys(fieldPosting),\n termField = expandedTerm + \"/\" + field,\n matchingDocumentsSet = new lunr.Set(matchingDocumentRefs)\n\n /*\n * if the presence of this term is required ensure that the matching\n * documents are added to the set of required matches for this clause.\n *\n */\n if (clause.presence == lunr.Query.presence.REQUIRED) {\n clauseMatches = clauseMatches.union(matchingDocumentsSet)\n\n if (requiredMatches[field] === undefined) {\n requiredMatches[field] = lunr.Set.complete\n }\n }\n\n /*\n * if the presence of this term is prohibited ensure that the matching\n * documents are added to the set of prohibited matches for this field,\n * creating that set if it does not yet exist.\n */\n if (clause.presence == lunr.Query.presence.PROHIBITED) {\n if (prohibitedMatches[field] === undefined) {\n prohibitedMatches[field] = lunr.Set.empty\n }\n\n prohibitedMatches[field] = prohibitedMatches[field].union(matchingDocumentsSet)\n\n /*\n * Prohibited matches should not be part of the query vector used for\n * similarity scoring and no metadata should be extracted so we continue\n * to the next field\n */\n continue\n }\n\n /*\n * The query field vector is populated using the termIndex found for\n * the term and a unit value with the appropriate boost applied.\n * Using upsert because there could already be an entry in the vector\n * for the term we are working with. In that case we just add the scores\n * together.\n */\n queryVectors[field].upsert(termIndex, clause.boost, function (a, b) { return a + b })\n\n /**\n * If we've already seen this term, field combo then we've already collected\n * the matching documents and metadata, no need to go through all that again\n */\n if (termFieldCache[termField]) {\n continue\n }\n\n for (var l = 0; l < matchingDocumentRefs.length; l++) {\n /*\n * All metadata for this term/field/document triple\n * are then extracted and collected into an instance\n * of lunr.MatchData ready to be returned in the query\n * results\n */\n var matchingDocumentRef = matchingDocumentRefs[l],\n matchingFieldRef = new lunr.FieldRef (matchingDocumentRef, field),\n metadata = fieldPosting[matchingDocumentRef],\n fieldMatch\n\n if ((fieldMatch = matchingFields[matchingFieldRef]) === undefined) {\n matchingFields[matchingFieldRef] = new lunr.MatchData (expandedTerm, field, metadata)\n } else {\n fieldMatch.add(expandedTerm, field, metadata)\n }\n\n }\n\n termFieldCache[termField] = true\n }\n }\n }\n\n /**\n * If the presence was required we need to update the requiredMatches field sets.\n * We do this after all fields for the term have collected their matches because\n * the clause terms presence is required in _any_ of the fields not _all_ of the\n * fields.\n */\n if (clause.presence === lunr.Query.presence.REQUIRED) {\n for (var k = 0; k < clause.fields.length; k++) {\n var field = clause.fields[k]\n requiredMatches[field] = requiredMatches[field].intersect(clauseMatches)\n }\n }\n }\n\n /**\n * Need to combine the field scoped required and prohibited\n * matching documents into a global set of required and prohibited\n * matches\n */\n var allRequiredMatches = lunr.Set.complete,\n allProhibitedMatches = lunr.Set.empty\n\n for (var i = 0; i < this.fields.length; i++) {\n var field = this.fields[i]\n\n if (requiredMatches[field]) {\n allRequiredMatches = allRequiredMatches.intersect(requiredMatches[field])\n }\n\n if (prohibitedMatches[field]) {\n allProhibitedMatches = allProhibitedMatches.union(prohibitedMatches[field])\n }\n }\n\n var matchingFieldRefs = Object.keys(matchingFields),\n results = [],\n matches = Object.create(null)\n\n /*\n * If the query is negated (contains only prohibited terms)\n * we need to get _all_ fieldRefs currently existing in the\n * index. This is only done when we know that the query is\n * entirely prohibited terms to avoid any cost of getting all\n * fieldRefs unnecessarily.\n *\n * Additionally, blank MatchData must be created to correctly\n * populate the results.\n */\n if (query.isNegated()) {\n matchingFieldRefs = Object.keys(this.fieldVectors)\n\n for (var i = 0; i < matchingFieldRefs.length; i++) {\n var matchingFieldRef = matchingFieldRefs[i]\n var fieldRef = lunr.FieldRef.fromString(matchingFieldRef)\n matchingFields[matchingFieldRef] = new lunr.MatchData\n }\n }\n\n for (var i = 0; i < matchingFieldRefs.length; i++) {\n /*\n * Currently we have document fields that match the query, but we\n * need to return documents. The matchData and scores are combined\n * from multiple fields belonging to the same document.\n *\n * Scores are calculated by field, using the query vectors created\n * above, and combined into a final document score using addition.\n */\n var fieldRef = lunr.FieldRef.fromString(matchingFieldRefs[i]),\n docRef = fieldRef.docRef\n\n if (!allRequiredMatches.contains(docRef)) {\n continue\n }\n\n if (allProhibitedMatches.contains(docRef)) {\n continue\n }\n\n var fieldVector = this.fieldVectors[fieldRef],\n score = queryVectors[fieldRef.fieldName].similarity(fieldVector),\n docMatch\n\n if ((docMatch = matches[docRef]) !== undefined) {\n docMatch.score += score\n docMatch.matchData.combine(matchingFields[fieldRef])\n } else {\n var match = {\n ref: docRef,\n score: score,\n matchData: matchingFields[fieldRef]\n }\n matches[docRef] = match\n results.push(match)\n }\n }\n\n /*\n * Sort the results objects by score, highest first.\n */\n return results.sort(function (a, b) {\n return b.score - a.score\n })\n}\n\n/**\n * Prepares the index for JSON serialization.\n *\n * The schema for this JSON blob will be described in a\n * separate JSON schema file.\n *\n * @returns {Object}\n */\nlunr.Index.prototype.toJSON = function () {\n var invertedIndex = Object.keys(this.invertedIndex)\n .sort()\n .map(function (term) {\n return [term, this.invertedIndex[term]]\n }, this)\n\n var fieldVectors = Object.keys(this.fieldVectors)\n .map(function (ref) {\n return [ref, this.fieldVectors[ref].toJSON()]\n }, this)\n\n return {\n version: lunr.version,\n fields: this.fields,\n fieldVectors: fieldVectors,\n invertedIndex: invertedIndex,\n pipeline: this.pipeline.toJSON()\n }\n}\n\n/**\n * Loads a previously serialized lunr.Index\n *\n * @param {Object} serializedIndex - A previously serialized lunr.Index\n * @returns {lunr.Index}\n */\nlunr.Index.load = function (serializedIndex) {\n var attrs = {},\n fieldVectors = {},\n serializedVectors = serializedIndex.fieldVectors,\n invertedIndex = Object.create(null),\n serializedInvertedIndex = serializedIndex.invertedIndex,\n tokenSetBuilder = new lunr.TokenSet.Builder,\n pipeline = lunr.Pipeline.load(serializedIndex.pipeline)\n\n if (serializedIndex.version != lunr.version) {\n lunr.utils.warn(\"Version mismatch when loading serialised index. Current version of lunr '\" + lunr.version + \"' does not match serialized index '\" + serializedIndex.version + \"'\")\n }\n\n for (var i = 0; i < serializedVectors.length; i++) {\n var tuple = serializedVectors[i],\n ref = tuple[0],\n elements = tuple[1]\n\n fieldVectors[ref] = new lunr.Vector(elements)\n }\n\n for (var i = 0; i < serializedInvertedIndex.length; i++) {\n var tuple = serializedInvertedIndex[i],\n term = tuple[0],\n posting = tuple[1]\n\n tokenSetBuilder.insert(term)\n invertedIndex[term] = posting\n }\n\n tokenSetBuilder.finish()\n\n attrs.fields = serializedIndex.fields\n\n attrs.fieldVectors = fieldVectors\n attrs.invertedIndex = invertedIndex\n attrs.tokenSet = tokenSetBuilder.root\n attrs.pipeline = pipeline\n\n return new lunr.Index(attrs)\n}\n/*!\n * lunr.Builder\n * Copyright (C) 2020 Oliver Nightingale\n */\n\n/**\n * lunr.Builder performs indexing on a set of documents and\n * returns instances of lunr.Index ready for querying.\n *\n * All configuration of the index is done via the builder, the\n * fields to index, the document reference, the text processing\n * pipeline and document scoring parameters are all set on the\n * builder before indexing.\n *\n * @constructor\n * @property {string} _ref - Internal reference to the document reference field.\n * @property {string[]} _fields - Internal reference to the document fields to index.\n * @property {object} invertedIndex - The inverted index maps terms to document fields.\n * @property {object} documentTermFrequencies - Keeps track of document term frequencies.\n * @property {object} documentLengths - Keeps track of the length of documents added to the index.\n * @property {lunr.tokenizer} tokenizer - Function for splitting strings into tokens for indexing.\n * @property {lunr.Pipeline} pipeline - The pipeline performs text processing on tokens before indexing.\n * @property {lunr.Pipeline} searchPipeline - A pipeline for processing search terms before querying the index.\n * @property {number} documentCount - Keeps track of the total number of documents indexed.\n * @property {number} _b - A parameter to control field length normalization, setting this to 0 disabled normalization, 1 fully normalizes field lengths, the default value is 0.75.\n * @property {number} _k1 - A parameter to control how quickly an increase in term frequency results in term frequency saturation, the default value is 1.2.\n * @property {number} termIndex - A counter incremented for each unique term, used to identify a terms position in the vector space.\n * @property {array} metadataWhitelist - A list of metadata keys that have been whitelisted for entry in the index.\n */\nlunr.Builder = function () {\n this._ref = \"id\"\n this._fields = Object.create(null)\n this._documents = Object.create(null)\n this.invertedIndex = Object.create(null)\n this.fieldTermFrequencies = {}\n this.fieldLengths = {}\n this.tokenizer = lunr.tokenizer\n this.pipeline = new lunr.Pipeline\n this.searchPipeline = new lunr.Pipeline\n this.documentCount = 0\n this._b = 0.75\n this._k1 = 1.2\n this.termIndex = 0\n this.metadataWhitelist = []\n}\n\n/**\n * Sets the document field used as the document reference. Every document must have this field.\n * The type of this field in the document should be a string, if it is not a string it will be\n * coerced into a string by calling toString.\n *\n * The default ref is 'id'.\n *\n * The ref should _not_ be changed during indexing, it should be set before any documents are\n * added to the index. Changing it during indexing can lead to inconsistent results.\n *\n * @param {string} ref - The name of the reference field in the document.\n */\nlunr.Builder.prototype.ref = function (ref) {\n this._ref = ref\n}\n\n/**\n * A function that is used to extract a field from a document.\n *\n * Lunr expects a field to be at the top level of a document, if however the field\n * is deeply nested within a document an extractor function can be used to extract\n * the right field for indexing.\n *\n * @callback fieldExtractor\n * @param {object} doc - The document being added to the index.\n * @returns {?(string|object|object[])} obj - The object that will be indexed for this field.\n * @example Extracting a nested field\n * function (doc) { return doc.nested.field }\n */\n\n/**\n * Adds a field to the list of document fields that will be indexed. Every document being\n * indexed should have this field. Null values for this field in indexed documents will\n * not cause errors but will limit the chance of that document being retrieved by searches.\n *\n * All fields should be added before adding documents to the index. Adding fields after\n * a document has been indexed will have no effect on already indexed documents.\n *\n * Fields can be boosted at build time. This allows terms within that field to have more\n * importance when ranking search results. Use a field boost to specify that matches within\n * one field are more important than other fields.\n *\n * @param {string} fieldName - The name of a field to index in all documents.\n * @param {object} attributes - Optional attributes associated with this field.\n * @param {number} [attributes.boost=1] - Boost applied to all terms within this field.\n * @param {fieldExtractor} [attributes.extractor] - Function to extract a field from a document.\n * @throws {RangeError} fieldName cannot contain unsupported characters '/'\n */\nlunr.Builder.prototype.field = function (fieldName, attributes) {\n if (/\\//.test(fieldName)) {\n throw new RangeError (\"Field '\" + fieldName + \"' contains illegal character '/'\")\n }\n\n this._fields[fieldName] = attributes || {}\n}\n\n/**\n * A parameter to tune the amount of field length normalisation that is applied when\n * calculating relevance scores. A value of 0 will completely disable any normalisation\n * and a value of 1 will fully normalise field lengths. The default is 0.75. Values of b\n * will be clamped to the range 0 - 1.\n *\n * @param {number} number - The value to set for this tuning parameter.\n */\nlunr.Builder.prototype.b = function (number) {\n if (number < 0) {\n this._b = 0\n } else if (number > 1) {\n this._b = 1\n } else {\n this._b = number\n }\n}\n\n/**\n * A parameter that controls the speed at which a rise in term frequency results in term\n * frequency saturation. The default value is 1.2. Setting this to a higher value will give\n * slower saturation levels, a lower value will result in quicker saturation.\n *\n * @param {number} number - The value to set for this tuning parameter.\n */\nlunr.Builder.prototype.k1 = function (number) {\n this._k1 = number\n}\n\n/**\n * Adds a document to the index.\n *\n * Before adding fields to the index the index should have been fully setup, with the document\n * ref and all fields to index already having been specified.\n *\n * The document must have a field name as specified by the ref (by default this is 'id') and\n * it should have all fields defined for indexing, though null or undefined values will not\n * cause errors.\n *\n * Entire documents can be boosted at build time. Applying a boost to a document indicates that\n * this document should rank higher in search results than other documents.\n *\n * @param {object} doc - The document to add to the index.\n * @param {object} attributes - Optional attributes associated with this document.\n * @param {number} [attributes.boost=1] - Boost applied to all terms within this document.\n */\nlunr.Builder.prototype.add = function (doc, attributes) {\n var docRef = doc[this._ref],\n fields = Object.keys(this._fields)\n\n this._documents[docRef] = attributes || {}\n this.documentCount += 1\n\n for (var i = 0; i < fields.length; i++) {\n var fieldName = fields[i],\n extractor = this._fields[fieldName].extractor,\n field = extractor ? extractor(doc) : doc[fieldName],\n tokens = this.tokenizer(field, {\n fields: [fieldName]\n }),\n terms = this.pipeline.run(tokens),\n fieldRef = new lunr.FieldRef (docRef, fieldName),\n fieldTerms = Object.create(null)\n\n this.fieldTermFrequencies[fieldRef] = fieldTerms\n this.fieldLengths[fieldRef] = 0\n\n // store the length of this field for this document\n this.fieldLengths[fieldRef] += terms.length\n\n // calculate term frequencies for this field\n for (var j = 0; j < terms.length; j++) {\n var term = terms[j]\n\n if (fieldTerms[term] == undefined) {\n fieldTerms[term] = 0\n }\n\n fieldTerms[term] += 1\n\n // add to inverted index\n // create an initial posting if one doesn't exist\n if (this.invertedIndex[term] == undefined) {\n var posting = Object.create(null)\n posting[\"_index\"] = this.termIndex\n this.termIndex += 1\n\n for (var k = 0; k < fields.length; k++) {\n posting[fields[k]] = Object.create(null)\n }\n\n this.invertedIndex[term] = posting\n }\n\n // add an entry for this term/fieldName/docRef to the invertedIndex\n if (this.invertedIndex[term][fieldName][docRef] == undefined) {\n this.invertedIndex[term][fieldName][docRef] = Object.create(null)\n }\n\n // store all whitelisted metadata about this token in the\n // inverted index\n for (var l = 0; l < this.metadataWhitelist.length; l++) {\n var metadataKey = this.metadataWhitelist[l],\n metadata = term.metadata[metadataKey]\n\n if (this.invertedIndex[term][fieldName][docRef][metadataKey] == undefined) {\n this.invertedIndex[term][fieldName][docRef][metadataKey] = []\n }\n\n this.invertedIndex[term][fieldName][docRef][metadataKey].push(metadata)\n }\n }\n\n }\n}\n\n/**\n * Calculates the average document length for this index\n *\n * @private\n */\nlunr.Builder.prototype.calculateAverageFieldLengths = function () {\n\n var fieldRefs = Object.keys(this.fieldLengths),\n numberOfFields = fieldRefs.length,\n accumulator = {},\n documentsWithField = {}\n\n for (var i = 0; i < numberOfFields; i++) {\n var fieldRef = lunr.FieldRef.fromString(fieldRefs[i]),\n field = fieldRef.fieldName\n\n documentsWithField[field] || (documentsWithField[field] = 0)\n documentsWithField[field] += 1\n\n accumulator[field] || (accumulator[field] = 0)\n accumulator[field] += this.fieldLengths[fieldRef]\n }\n\n var fields = Object.keys(this._fields)\n\n for (var i = 0; i < fields.length; i++) {\n var fieldName = fields[i]\n accumulator[fieldName] = accumulator[fieldName] / documentsWithField[fieldName]\n }\n\n this.averageFieldLength = accumulator\n}\n\n/**\n * Builds a vector space model of every document using lunr.Vector\n *\n * @private\n */\nlunr.Builder.prototype.createFieldVectors = function () {\n var fieldVectors = {},\n fieldRefs = Object.keys(this.fieldTermFrequencies),\n fieldRefsLength = fieldRefs.length,\n termIdfCache = Object.create(null)\n\n for (var i = 0; i < fieldRefsLength; i++) {\n var fieldRef = lunr.FieldRef.fromString(fieldRefs[i]),\n fieldName = fieldRef.fieldName,\n fieldLength = this.fieldLengths[fieldRef],\n fieldVector = new lunr.Vector,\n termFrequencies = this.fieldTermFrequencies[fieldRef],\n terms = Object.keys(termFrequencies),\n termsLength = terms.length\n\n\n var fieldBoost = this._fields[fieldName].boost || 1,\n docBoost = this._documents[fieldRef.docRef].boost || 1\n\n for (var j = 0; j < termsLength; j++) {\n var term = terms[j],\n tf = termFrequencies[term],\n termIndex = this.invertedIndex[term]._index,\n idf, score, scoreWithPrecision\n\n if (termIdfCache[term] === undefined) {\n idf = lunr.idf(this.invertedIndex[term], this.documentCount)\n termIdfCache[term] = idf\n } else {\n idf = termIdfCache[term]\n }\n\n score = idf * ((this._k1 + 1) * tf) / (this._k1 * (1 - this._b + this._b * (fieldLength / this.averageFieldLength[fieldName])) + tf)\n score *= fieldBoost\n score *= docBoost\n scoreWithPrecision = Math.round(score * 1000) / 1000\n // Converts 1.23456789 to 1.234.\n // Reducing the precision so that the vectors take up less\n // space when serialised. Doing it now so that they behave\n // the same before and after serialisation. Also, this is\n // the fastest approach to reducing a number's precision in\n // JavaScript.\n\n fieldVector.insert(termIndex, scoreWithPrecision)\n }\n\n fieldVectors[fieldRef] = fieldVector\n }\n\n this.fieldVectors = fieldVectors\n}\n\n/**\n * Creates a token set of all tokens in the index using lunr.TokenSet\n *\n * @private\n */\nlunr.Builder.prototype.createTokenSet = function () {\n this.tokenSet = lunr.TokenSet.fromArray(\n Object.keys(this.invertedIndex).sort()\n )\n}\n\n/**\n * Builds the index, creating an instance of lunr.Index.\n *\n * This completes the indexing process and should only be called\n * once all documents have been added to the index.\n *\n * @returns {lunr.Index}\n */\nlunr.Builder.prototype.build = function () {\n this.calculateAverageFieldLengths()\n this.createFieldVectors()\n this.createTokenSet()\n\n return new lunr.Index({\n invertedIndex: this.invertedIndex,\n fieldVectors: this.fieldVectors,\n tokenSet: this.tokenSet,\n fields: Object.keys(this._fields),\n pipeline: this.searchPipeline\n })\n}\n\n/**\n * Applies a plugin to the index builder.\n *\n * A plugin is a function that is called with the index builder as its context.\n * Plugins can be used to customise or extend the behaviour of the index\n * in some way. A plugin is just a function, that encapsulated the custom\n * behaviour that should be applied when building the index.\n *\n * The plugin function will be called with the index builder as its argument, additional\n * arguments can also be passed when calling use. The function will be called\n * with the index builder as its context.\n *\n * @param {Function} plugin The plugin to apply.\n */\nlunr.Builder.prototype.use = function (fn) {\n var args = Array.prototype.slice.call(arguments, 1)\n args.unshift(this)\n fn.apply(this, args)\n}\n/**\n * Contains and collects metadata about a matching document.\n * A single instance of lunr.MatchData is returned as part of every\n * lunr.Index~Result.\n *\n * @constructor\n * @param {string} term - The term this match data is associated with\n * @param {string} field - The field in which the term was found\n * @param {object} metadata - The metadata recorded about this term in this field\n * @property {object} metadata - A cloned collection of metadata associated with this document.\n * @see {@link lunr.Index~Result}\n */\nlunr.MatchData = function (term, field, metadata) {\n var clonedMetadata = Object.create(null),\n metadataKeys = Object.keys(metadata || {})\n\n // Cloning the metadata to prevent the original\n // being mutated during match data combination.\n // Metadata is kept in an array within the inverted\n // index so cloning the data can be done with\n // Array#slice\n for (var i = 0; i < metadataKeys.length; i++) {\n var key = metadataKeys[i]\n clonedMetadata[key] = metadata[key].slice()\n }\n\n this.metadata = Object.create(null)\n\n if (term !== undefined) {\n this.metadata[term] = Object.create(null)\n this.metadata[term][field] = clonedMetadata\n }\n}\n\n/**\n * An instance of lunr.MatchData will be created for every term that matches a\n * document. However only one instance is required in a lunr.Index~Result. This\n * method combines metadata from another instance of lunr.MatchData with this\n * objects metadata.\n *\n * @param {lunr.MatchData} otherMatchData - Another instance of match data to merge with this one.\n * @see {@link lunr.Index~Result}\n */\nlunr.MatchData.prototype.combine = function (otherMatchData) {\n var terms = Object.keys(otherMatchData.metadata)\n\n for (var i = 0; i < terms.length; i++) {\n var term = terms[i],\n fields = Object.keys(otherMatchData.metadata[term])\n\n if (this.metadata[term] == undefined) {\n this.metadata[term] = Object.create(null)\n }\n\n for (var j = 0; j < fields.length; j++) {\n var field = fields[j],\n keys = Object.keys(otherMatchData.metadata[term][field])\n\n if (this.metadata[term][field] == undefined) {\n this.metadata[term][field] = Object.create(null)\n }\n\n for (var k = 0; k < keys.length; k++) {\n var key = keys[k]\n\n if (this.metadata[term][field][key] == undefined) {\n this.metadata[term][field][key] = otherMatchData.metadata[term][field][key]\n } else {\n this.metadata[term][field][key] = this.metadata[term][field][key].concat(otherMatchData.metadata[term][field][key])\n }\n\n }\n }\n }\n}\n\n/**\n * Add metadata for a term/field pair to this instance of match data.\n *\n * @param {string} term - The term this match data is associated with\n * @param {string} field - The field in which the term was found\n * @param {object} metadata - The metadata recorded about this term in this field\n */\nlunr.MatchData.prototype.add = function (term, field, metadata) {\n if (!(term in this.metadata)) {\n this.metadata[term] = Object.create(null)\n this.metadata[term][field] = metadata\n return\n }\n\n if (!(field in this.metadata[term])) {\n this.metadata[term][field] = metadata\n return\n }\n\n var metadataKeys = Object.keys(metadata)\n\n for (var i = 0; i < metadataKeys.length; i++) {\n var key = metadataKeys[i]\n\n if (key in this.metadata[term][field]) {\n this.metadata[term][field][key] = this.metadata[term][field][key].concat(metadata[key])\n } else {\n this.metadata[term][field][key] = metadata[key]\n }\n }\n}\n/**\n * A lunr.Query provides a programmatic way of defining queries to be performed\n * against a {@link lunr.Index}.\n *\n * Prefer constructing a lunr.Query using the {@link lunr.Index#query} method\n * so the query object is pre-initialized with the right index fields.\n *\n * @constructor\n * @property {lunr.Query~Clause[]} clauses - An array of query clauses.\n * @property {string[]} allFields - An array of all available fields in a lunr.Index.\n */\nlunr.Query = function (allFields) {\n this.clauses = []\n this.allFields = allFields\n}\n\n/**\n * Constants for indicating what kind of automatic wildcard insertion will be used when constructing a query clause.\n *\n * This allows wildcards to be added to the beginning and end of a term without having to manually do any string\n * concatenation.\n *\n * The wildcard constants can be bitwise combined to select both leading and trailing wildcards.\n *\n * @constant\n * @default\n * @property {number} wildcard.NONE - The term will have no wildcards inserted, this is the default behaviour\n * @property {number} wildcard.LEADING - Prepend the term with a wildcard, unless a leading wildcard already exists\n * @property {number} wildcard.TRAILING - Append a wildcard to the term, unless a trailing wildcard already exists\n * @see lunr.Query~Clause\n * @see lunr.Query#clause\n * @see lunr.Query#term\n * @example query term with trailing wildcard\n * query.term('foo', { wildcard: lunr.Query.wildcard.TRAILING })\n * @example query term with leading and trailing wildcard\n * query.term('foo', {\n * wildcard: lunr.Query.wildcard.LEADING | lunr.Query.wildcard.TRAILING\n * })\n */\n\nlunr.Query.wildcard = new String (\"*\")\nlunr.Query.wildcard.NONE = 0\nlunr.Query.wildcard.LEADING = 1\nlunr.Query.wildcard.TRAILING = 2\n\n/**\n * Constants for indicating what kind of presence a term must have in matching documents.\n *\n * @constant\n * @enum {number}\n * @see lunr.Query~Clause\n * @see lunr.Query#clause\n * @see lunr.Query#term\n * @example query term with required presence\n * query.term('foo', { presence: lunr.Query.presence.REQUIRED })\n */\nlunr.Query.presence = {\n /**\n * Term's presence in a document is optional, this is the default value.\n */\n OPTIONAL: 1,\n\n /**\n * Term's presence in a document is required, documents that do not contain\n * this term will not be returned.\n */\n REQUIRED: 2,\n\n /**\n * Term's presence in a document is prohibited, documents that do contain\n * this term will not be returned.\n */\n PROHIBITED: 3\n}\n\n/**\n * A single clause in a {@link lunr.Query} contains a term and details on how to\n * match that term against a {@link lunr.Index}.\n *\n * @typedef {Object} lunr.Query~Clause\n * @property {string[]} fields - The fields in an index this clause should be matched against.\n * @property {number} [boost=1] - Any boost that should be applied when matching this clause.\n * @property {number} [editDistance] - Whether the term should have fuzzy matching applied, and how fuzzy the match should be.\n * @property {boolean} [usePipeline] - Whether the term should be passed through the search pipeline.\n * @property {number} [wildcard=lunr.Query.wildcard.NONE] - Whether the term should have wildcards appended or prepended.\n * @property {number} [presence=lunr.Query.presence.OPTIONAL] - The terms presence in any matching documents.\n */\n\n/**\n * Adds a {@link lunr.Query~Clause} to this query.\n *\n * Unless the clause contains the fields to be matched all fields will be matched. In addition\n * a default boost of 1 is applied to the clause.\n *\n * @param {lunr.Query~Clause} clause - The clause to add to this query.\n * @see lunr.Query~Clause\n * @returns {lunr.Query}\n */\nlunr.Query.prototype.clause = function (clause) {\n if (!('fields' in clause)) {\n clause.fields = this.allFields\n }\n\n if (!('boost' in clause)) {\n clause.boost = 1\n }\n\n if (!('usePipeline' in clause)) {\n clause.usePipeline = true\n }\n\n if (!('wildcard' in clause)) {\n clause.wildcard = lunr.Query.wildcard.NONE\n }\n\n if ((clause.wildcard & lunr.Query.wildcard.LEADING) && (clause.term.charAt(0) != lunr.Query.wildcard)) {\n clause.term = \"*\" + clause.term\n }\n\n if ((clause.wildcard & lunr.Query.wildcard.TRAILING) && (clause.term.slice(-1) != lunr.Query.wildcard)) {\n clause.term = \"\" + clause.term + \"*\"\n }\n\n if (!('presence' in clause)) {\n clause.presence = lunr.Query.presence.OPTIONAL\n }\n\n this.clauses.push(clause)\n\n return this\n}\n\n/**\n * A negated query is one in which every clause has a presence of\n * prohibited. These queries require some special processing to return\n * the expected results.\n *\n * @returns boolean\n */\nlunr.Query.prototype.isNegated = function () {\n for (var i = 0; i < this.clauses.length; i++) {\n if (this.clauses[i].presence != lunr.Query.presence.PROHIBITED) {\n return false\n }\n }\n\n return true\n}\n\n/**\n * Adds a term to the current query, under the covers this will create a {@link lunr.Query~Clause}\n * to the list of clauses that make up this query.\n *\n * The term is used as is, i.e. no tokenization will be performed by this method. Instead conversion\n * to a token or token-like string should be done before calling this method.\n *\n * The term will be converted to a string by calling `toString`. Multiple terms can be passed as an\n * array, each term in the array will share the same options.\n *\n * @param {object|object[]} term - The term(s) to add to the query.\n * @param {object} [options] - Any additional properties to add to the query clause.\n * @returns {lunr.Query}\n * @see lunr.Query#clause\n * @see lunr.Query~Clause\n * @example adding a single term to a query\n * query.term(\"foo\")\n * @example adding a single term to a query and specifying search fields, term boost and automatic trailing wildcard\n * query.term(\"foo\", {\n * fields: [\"title\"],\n * boost: 10,\n * wildcard: lunr.Query.wildcard.TRAILING\n * })\n * @example using lunr.tokenizer to convert a string to tokens before using them as terms\n * query.term(lunr.tokenizer(\"foo bar\"))\n */\nlunr.Query.prototype.term = function (term, options) {\n if (Array.isArray(term)) {\n term.forEach(function (t) { this.term(t, lunr.utils.clone(options)) }, this)\n return this\n }\n\n var clause = options || {}\n clause.term = term.toString()\n\n this.clause(clause)\n\n return this\n}\nlunr.QueryParseError = function (message, start, end) {\n this.name = \"QueryParseError\"\n this.message = message\n this.start = start\n this.end = end\n}\n\nlunr.QueryParseError.prototype = new Error\nlunr.QueryLexer = function (str) {\n this.lexemes = []\n this.str = str\n this.length = str.length\n this.pos = 0\n this.start = 0\n this.escapeCharPositions = []\n}\n\nlunr.QueryLexer.prototype.run = function () {\n var state = lunr.QueryLexer.lexText\n\n while (state) {\n state = state(this)\n }\n}\n\nlunr.QueryLexer.prototype.sliceString = function () {\n var subSlices = [],\n sliceStart = this.start,\n sliceEnd = this.pos\n\n for (var i = 0; i < this.escapeCharPositions.length; i++) {\n sliceEnd = this.escapeCharPositions[i]\n subSlices.push(this.str.slice(sliceStart, sliceEnd))\n sliceStart = sliceEnd + 1\n }\n\n subSlices.push(this.str.slice(sliceStart, this.pos))\n this.escapeCharPositions.length = 0\n\n return subSlices.join('')\n}\n\nlunr.QueryLexer.prototype.emit = function (type) {\n this.lexemes.push({\n type: type,\n str: this.sliceString(),\n start: this.start,\n end: this.pos\n })\n\n this.start = this.pos\n}\n\nlunr.QueryLexer.prototype.escapeCharacter = function () {\n this.escapeCharPositions.push(this.pos - 1)\n this.pos += 1\n}\n\nlunr.QueryLexer.prototype.next = function () {\n if (this.pos >= this.length) {\n return lunr.QueryLexer.EOS\n }\n\n var char = this.str.charAt(this.pos)\n this.pos += 1\n return char\n}\n\nlunr.QueryLexer.prototype.width = function () {\n return this.pos - this.start\n}\n\nlunr.QueryLexer.prototype.ignore = function () {\n if (this.start == this.pos) {\n this.pos += 1\n }\n\n this.start = this.pos\n}\n\nlunr.QueryLexer.prototype.backup = function () {\n this.pos -= 1\n}\n\nlunr.QueryLexer.prototype.acceptDigitRun = function () {\n var char, charCode\n\n do {\n char = this.next()\n charCode = char.charCodeAt(0)\n } while (charCode > 47 && charCode < 58)\n\n if (char != lunr.QueryLexer.EOS) {\n this.backup()\n }\n}\n\nlunr.QueryLexer.prototype.more = function () {\n return this.pos < this.length\n}\n\nlunr.QueryLexer.EOS = 'EOS'\nlunr.QueryLexer.FIELD = 'FIELD'\nlunr.QueryLexer.TERM = 'TERM'\nlunr.QueryLexer.EDIT_DISTANCE = 'EDIT_DISTANCE'\nlunr.QueryLexer.BOOST = 'BOOST'\nlunr.QueryLexer.PRESENCE = 'PRESENCE'\n\nlunr.QueryLexer.lexField = function (lexer) {\n lexer.backup()\n lexer.emit(lunr.QueryLexer.FIELD)\n lexer.ignore()\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexTerm = function (lexer) {\n if (lexer.width() > 1) {\n lexer.backup()\n lexer.emit(lunr.QueryLexer.TERM)\n }\n\n lexer.ignore()\n\n if (lexer.more()) {\n return lunr.QueryLexer.lexText\n }\n}\n\nlunr.QueryLexer.lexEditDistance = function (lexer) {\n lexer.ignore()\n lexer.acceptDigitRun()\n lexer.emit(lunr.QueryLexer.EDIT_DISTANCE)\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexBoost = function (lexer) {\n lexer.ignore()\n lexer.acceptDigitRun()\n lexer.emit(lunr.QueryLexer.BOOST)\n return lunr.QueryLexer.lexText\n}\n\nlunr.QueryLexer.lexEOS = function (lexer) {\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n}\n\n// This matches the separator used when tokenising fields\n// within a document. These should match otherwise it is\n// not possible to search for some tokens within a document.\n//\n// It is possible for the user to change the separator on the\n// tokenizer so it _might_ clash with any other of the special\n// characters already used within the search string, e.g. :.\n//\n// This means that it is possible to change the separator in\n// such a way that makes some words unsearchable using a search\n// string.\nlunr.QueryLexer.termSeparator = lunr.tokenizer.separator\n\nlunr.QueryLexer.lexText = function (lexer) {\n while (true) {\n var char = lexer.next()\n\n if (char == lunr.QueryLexer.EOS) {\n return lunr.QueryLexer.lexEOS\n }\n\n // Escape character is '\\'\n if (char.charCodeAt(0) == 92) {\n lexer.escapeCharacter()\n continue\n }\n\n if (char == \":\") {\n return lunr.QueryLexer.lexField\n }\n\n if (char == \"~\") {\n lexer.backup()\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n return lunr.QueryLexer.lexEditDistance\n }\n\n if (char == \"^\") {\n lexer.backup()\n if (lexer.width() > 0) {\n lexer.emit(lunr.QueryLexer.TERM)\n }\n return lunr.QueryLexer.lexBoost\n }\n\n // \"+\" indicates term presence is required\n // checking for length to ensure that only\n // leading \"+\" are considered\n if (char == \"+\" && lexer.width() === 1) {\n lexer.emit(lunr.QueryLexer.PRESENCE)\n return lunr.QueryLexer.lexText\n }\n\n // \"-\" indicates term presence is prohibited\n // checking for length to ensure that only\n // leading \"-\" are considered\n if (char == \"-\" && lexer.width() === 1) {\n lexer.emit(lunr.QueryLexer.PRESENCE)\n return lunr.QueryLexer.lexText\n }\n\n if (char.match(lunr.QueryLexer.termSeparator)) {\n return lunr.QueryLexer.lexTerm\n }\n }\n}\n\nlunr.QueryParser = function (str, query) {\n this.lexer = new lunr.QueryLexer (str)\n this.query = query\n this.currentClause = {}\n this.lexemeIdx = 0\n}\n\nlunr.QueryParser.prototype.parse = function () {\n this.lexer.run()\n this.lexemes = this.lexer.lexemes\n\n var state = lunr.QueryParser.parseClause\n\n while (state) {\n state = state(this)\n }\n\n return this.query\n}\n\nlunr.QueryParser.prototype.peekLexeme = function () {\n return this.lexemes[this.lexemeIdx]\n}\n\nlunr.QueryParser.prototype.consumeLexeme = function () {\n var lexeme = this.peekLexeme()\n this.lexemeIdx += 1\n return lexeme\n}\n\nlunr.QueryParser.prototype.nextClause = function () {\n var completedClause = this.currentClause\n this.query.clause(completedClause)\n this.currentClause = {}\n}\n\nlunr.QueryParser.parseClause = function (parser) {\n var lexeme = parser.peekLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n switch (lexeme.type) {\n case lunr.QueryLexer.PRESENCE:\n return lunr.QueryParser.parsePresence\n case lunr.QueryLexer.FIELD:\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expected either a field or a term, found \" + lexeme.type\n\n if (lexeme.str.length >= 1) {\n errorMessage += \" with value '\" + lexeme.str + \"'\"\n }\n\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n}\n\nlunr.QueryParser.parsePresence = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n switch (lexeme.str) {\n case \"-\":\n parser.currentClause.presence = lunr.Query.presence.PROHIBITED\n break\n case \"+\":\n parser.currentClause.presence = lunr.Query.presence.REQUIRED\n break\n default:\n var errorMessage = \"unrecognised presence operator'\" + lexeme.str + \"'\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n var errorMessage = \"expecting term or field, found nothing\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.FIELD:\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expecting term or field, found '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseField = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n if (parser.query.allFields.indexOf(lexeme.str) == -1) {\n var possibleFields = parser.query.allFields.map(function (f) { return \"'\" + f + \"'\" }).join(', '),\n errorMessage = \"unrecognised field '\" + lexeme.str + \"', possible fields: \" + possibleFields\n\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.fields = [lexeme.str]\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n var errorMessage = \"expecting term, found nothing\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n return lunr.QueryParser.parseTerm\n default:\n var errorMessage = \"expecting term, found '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseTerm = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n parser.currentClause.term = lexeme.str.toLowerCase()\n\n if (lexeme.str.indexOf(\"*\") != -1) {\n parser.currentClause.usePipeline = false\n }\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseEditDistance = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n var editDistance = parseInt(lexeme.str, 10)\n\n if (isNaN(editDistance)) {\n var errorMessage = \"edit distance must be numeric\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.editDistance = editDistance\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\nlunr.QueryParser.parseBoost = function (parser) {\n var lexeme = parser.consumeLexeme()\n\n if (lexeme == undefined) {\n return\n }\n\n var boost = parseInt(lexeme.str, 10)\n\n if (isNaN(boost)) {\n var errorMessage = \"boost must be numeric\"\n throw new lunr.QueryParseError (errorMessage, lexeme.start, lexeme.end)\n }\n\n parser.currentClause.boost = boost\n\n var nextLexeme = parser.peekLexeme()\n\n if (nextLexeme == undefined) {\n parser.nextClause()\n return\n }\n\n switch (nextLexeme.type) {\n case lunr.QueryLexer.TERM:\n parser.nextClause()\n return lunr.QueryParser.parseTerm\n case lunr.QueryLexer.FIELD:\n parser.nextClause()\n return lunr.QueryParser.parseField\n case lunr.QueryLexer.EDIT_DISTANCE:\n return lunr.QueryParser.parseEditDistance\n case lunr.QueryLexer.BOOST:\n return lunr.QueryParser.parseBoost\n case lunr.QueryLexer.PRESENCE:\n parser.nextClause()\n return lunr.QueryParser.parsePresence\n default:\n var errorMessage = \"Unexpected lexeme type '\" + nextLexeme.type + \"'\"\n throw new lunr.QueryParseError (errorMessage, nextLexeme.start, nextLexeme.end)\n }\n}\n\n /**\n * export the module via AMD, CommonJS or as a browser global\n * Export code from https://github.com/umdjs/umd/blob/master/returnExports.js\n */\n ;(function (root, factory) {\n if (true) {\n // AMD. Register as an anonymous module.\n !(__WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.call(exports, __webpack_require__, exports, module)) :\n\t\t__WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__))\n } else {}\n }(this, function () {\n /**\n * Just return a value to define the module export.\n * This example returns an object, but the module\n * can return a function as the exported value.\n */\n return lunr\n }))\n})();\n\n\n//# sourceURL=webpack:///../node_modules/lunr/lunr.js?"); - -/***/ }), - -/***/ "./default/assets/css/main.sass": -/*!**************************************!*\ - !*** ./default/assets/css/main.sass ***! - \**************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n// extracted by mini-css-extract-plugin\n\n\n//# sourceURL=webpack:///./default/assets/css/main.sass?"); - -/***/ }), - -/***/ "./default/assets/js/src/bootstrap.ts": -/*!********************************************!*\ - !*** ./default/assets/js/src/bootstrap.ts ***! - \********************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _typedoc_Application__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./typedoc/Application */ \"./default/assets/js/src/typedoc/Application.ts\");\n/* harmony import */ var _typedoc_components_MenuHighlight__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./typedoc/components/MenuHighlight */ \"./default/assets/js/src/typedoc/components/MenuHighlight.ts\");\n/* harmony import */ var _typedoc_components_Search__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./typedoc/components/Search */ \"./default/assets/js/src/typedoc/components/Search.ts\");\n/* harmony import */ var _typedoc_components_Signature__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./typedoc/components/Signature */ \"./default/assets/js/src/typedoc/components/Signature.ts\");\n/* harmony import */ var _typedoc_components_Toggle__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./typedoc/components/Toggle */ \"./default/assets/js/src/typedoc/components/Toggle.ts\");\n/* harmony import */ var _typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./typedoc/components/Filter */ \"./default/assets/js/src/typedoc/components/Filter.ts\");\n/* harmony import */ var _css_main_sass__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../css/main.sass */ \"./default/assets/css/main.sass\");\n\n\n\n\n\n\n\n(0,_typedoc_components_Search__WEBPACK_IMPORTED_MODULE_2__.initSearch)();\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_MenuHighlight__WEBPACK_IMPORTED_MODULE_1__.MenuHighlight, \".menu-highlight\");\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Signature__WEBPACK_IMPORTED_MODULE_3__.Signature, \".tsd-signatures\");\n(0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Toggle__WEBPACK_IMPORTED_MODULE_4__.Toggle, \"a[data-toggle]\");\nif (_typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__.Filter.isSupported()) {\n (0,_typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.registerComponent)(_typedoc_components_Filter__WEBPACK_IMPORTED_MODULE_5__.Filter, \"#tsd-filter\");\n}\nelse {\n document.documentElement.classList.add(\"no-filter\");\n}\nvar app = new _typedoc_Application__WEBPACK_IMPORTED_MODULE_0__.Application();\nObject.defineProperty(window, \"app\", { value: app });\n\n\n//# sourceURL=webpack:///./default/assets/js/src/bootstrap.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/Application.ts": -/*!******************************************************!*\ - !*** ./default/assets/js/src/typedoc/Application.ts ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"registerComponent\": () => /* binding */ registerComponent,\n/* harmony export */ \"Application\": () => /* binding */ Application\n/* harmony export */ });\n/**\n * List of all known components.\n */\nvar components = [];\n/**\n * Register a new component.\n */\nfunction registerComponent(constructor, selector) {\n components.push({\n selector: selector,\n constructor: constructor,\n });\n}\n/**\n * TypeDoc application class.\n */\nvar Application = /** @class */ (function () {\n /**\n * Create a new Application instance.\n */\n function Application() {\n this.createComponents(document.body);\n }\n /**\n * Create all components beneath the given jQuery element.\n */\n Application.prototype.createComponents = function (context) {\n components.forEach(function (c) {\n context.querySelectorAll(c.selector).forEach(function (el) {\n if (!el.dataset.hasInstance) {\n new c.constructor({ el: el });\n el.dataset.hasInstance = String(true);\n }\n });\n });\n };\n return Application;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/Application.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/Component.ts": -/*!****************************************************!*\ - !*** ./default/assets/js/src/typedoc/Component.ts ***! - \****************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Component\": () => /* binding */ Component\n/* harmony export */ });\n/**\n * TypeDoc component class.\n */\nvar Component = /** @class */ (function () {\n function Component(options) {\n this.el = options.el;\n }\n return Component;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/Component.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/EventTarget.ts": -/*!******************************************************!*\ - !*** ./default/assets/js/src/typedoc/EventTarget.ts ***! - \******************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"EventTarget\": () => /* binding */ EventTarget\n/* harmony export */ });\n/**\n * TypeDoc event target class.\n */\nvar EventTarget = /** @class */ (function () {\n function EventTarget() {\n this.listeners = {};\n }\n EventTarget.prototype.addEventListener = function (type, callback) {\n if (!(type in this.listeners)) {\n this.listeners[type] = [];\n }\n this.listeners[type].push(callback);\n };\n EventTarget.prototype.removeEventListener = function (type, callback) {\n if (!(type in this.listeners)) {\n return;\n }\n var stack = this.listeners[type];\n for (var i = 0, l = stack.length; i < l; i++) {\n if (stack[i] === callback) {\n stack.splice(i, 1);\n return;\n }\n }\n };\n EventTarget.prototype.dispatchEvent = function (event) {\n if (!(event.type in this.listeners)) {\n return true;\n }\n var stack = this.listeners[event.type].slice();\n for (var i = 0, l = stack.length; i < l; i++) {\n stack[i].call(this, event);\n }\n return !event.defaultPrevented;\n };\n return EventTarget;\n}());\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/EventTarget.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/components/Filter.ts": -/*!************************************************************!*\ - !*** ./default/assets/js/src/typedoc/components/Filter.ts ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Filter\": () => /* binding */ Filter\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _utils_pointer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/pointer */ \"./default/assets/js/src/typedoc/utils/pointer.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\nvar FilterItem = /** @class */ (function () {\n function FilterItem(key, value) {\n this.key = key;\n this.value = value;\n this.defaultValue = value;\n this.initialize();\n if (window.localStorage[this.key]) {\n this.setValue(this.fromLocalStorage(window.localStorage[this.key]));\n }\n }\n FilterItem.prototype.initialize = function () { };\n FilterItem.prototype.setValue = function (value) {\n if (this.value == value)\n return;\n var oldValue = this.value;\n this.value = value;\n window.localStorage[this.key] = this.toLocalStorage(value);\n this.handleValueChange(oldValue, value);\n };\n return FilterItem;\n}());\nvar FilterItemCheckbox = /** @class */ (function (_super) {\n __extends(FilterItemCheckbox, _super);\n function FilterItemCheckbox() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n FilterItemCheckbox.prototype.initialize = function () {\n var _this = this;\n var checkbox = document.querySelector(\"#tsd-filter-\" + this.key);\n if (!checkbox)\n return;\n this.checkbox = checkbox;\n this.checkbox.addEventListener(\"change\", function () {\n _this.setValue(_this.checkbox.checked);\n });\n };\n FilterItemCheckbox.prototype.handleValueChange = function (oldValue, newValue) {\n if (!this.checkbox)\n return;\n this.checkbox.checked = this.value;\n document.documentElement.classList.toggle(\"toggle-\" + this.key, this.value != this.defaultValue);\n };\n FilterItemCheckbox.prototype.fromLocalStorage = function (value) {\n return value == \"true\";\n };\n FilterItemCheckbox.prototype.toLocalStorage = function (value) {\n return value ? \"true\" : \"false\";\n };\n return FilterItemCheckbox;\n}(FilterItem));\nvar FilterItemSelect = /** @class */ (function (_super) {\n __extends(FilterItemSelect, _super);\n function FilterItemSelect() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n FilterItemSelect.prototype.initialize = function () {\n var _this = this;\n document.documentElement.classList.add(\"toggle-\" + this.key + this.value);\n var select = document.querySelector(\"#tsd-filter-\" + this.key);\n if (!select)\n return;\n this.select = select;\n var onActivate = function () {\n _this.select.classList.add(\"active\");\n };\n var onDeactivate = function () {\n _this.select.classList.remove(\"active\");\n };\n this.select.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, onActivate);\n this.select.addEventListener(\"mouseover\", onActivate);\n this.select.addEventListener(\"mouseleave\", onDeactivate);\n this.select.querySelectorAll(\"li\").forEach(function (el) {\n el.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) {\n select.classList.remove(\"active\");\n _this.setValue(e.target.dataset.value || \"\");\n });\n });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, function (e) {\n if (_this.select.contains(e.target))\n return;\n _this.select.classList.remove(\"active\");\n });\n };\n FilterItemSelect.prototype.handleValueChange = function (oldValue, newValue) {\n this.select.querySelectorAll(\"li.selected\").forEach(function (el) {\n el.classList.remove(\"selected\");\n });\n var selected = this.select.querySelector('li[data-value=\"' + newValue + '\"]');\n var label = this.select.querySelector(\".tsd-select-label\");\n if (selected && label) {\n selected.classList.add(\"selected\");\n label.textContent = selected.textContent;\n }\n document.documentElement.classList.remove(\"toggle-\" + oldValue);\n document.documentElement.classList.add(\"toggle-\" + newValue);\n };\n FilterItemSelect.prototype.fromLocalStorage = function (value) {\n return value;\n };\n FilterItemSelect.prototype.toLocalStorage = function (value) {\n return value;\n };\n return FilterItemSelect;\n}(FilterItem));\nvar Filter = /** @class */ (function (_super) {\n __extends(Filter, _super);\n function Filter(options) {\n var _this = _super.call(this, options) || this;\n _this.optionVisibility = new FilterItemSelect(\"visibility\", \"private\");\n _this.optionInherited = new FilterItemCheckbox(\"inherited\", true);\n _this.optionExternals = new FilterItemCheckbox(\"externals\", true);\n return _this;\n }\n Filter.isSupported = function () {\n try {\n return typeof window.localStorage != \"undefined\";\n }\n catch (e) {\n return false;\n }\n };\n return Filter;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Filter.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/components/MenuHighlight.ts": -/*!*******************************************************************!*\ - !*** ./default/assets/js/src/typedoc/components/MenuHighlight.ts ***! - \*******************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"MenuHighlight\": () => /* binding */ MenuHighlight\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _services_Viewport__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/Viewport */ \"./default/assets/js/src/typedoc/services/Viewport.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * Manages the sticky state of the navigation and moves the highlight\n * to the current navigation item.\n */\nvar MenuHighlight = /** @class */ (function (_super) {\n __extends(MenuHighlight, _super);\n /**\n * Create a new MenuHighlight instance.\n *\n * @param options Backbone view constructor options.\n */\n function MenuHighlight(options) {\n var _this = _super.call(this, options) || this;\n /**\n * List of all discovered anchors.\n */\n _this.anchors = [];\n /**\n * Index of the currently highlighted anchor.\n */\n _this.index = -1;\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.addEventListener(\"resize\", function () { return _this.onResize(); });\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.addEventListener(\"scroll\", function (e) { return _this.onScroll(e); });\n _this.createAnchors();\n return _this;\n }\n /**\n * Find all anchors on the current page.\n */\n MenuHighlight.prototype.createAnchors = function () {\n var _this = this;\n var base = window.location.href;\n if (base.indexOf(\"#\") != -1) {\n base = base.substr(0, base.indexOf(\"#\"));\n }\n this.el.querySelectorAll(\"a\").forEach(function (el) {\n var href = el.href;\n if (href.indexOf(\"#\") == -1)\n return;\n if (href.substr(0, base.length) != base)\n return;\n var hash = href.substr(href.indexOf(\"#\") + 1);\n var anchor = document.querySelector(\"a.tsd-anchor[name=\" + hash + \"]\");\n var link = el.parentNode;\n if (!anchor || !link)\n return;\n _this.anchors.push({\n link: link,\n anchor: anchor,\n position: 0,\n });\n });\n this.onResize();\n };\n /**\n * Triggered after the viewport was resized.\n */\n MenuHighlight.prototype.onResize = function () {\n var anchor;\n for (var index = 0, count = this.anchors.length; index < count; index++) {\n anchor = this.anchors[index];\n var rect = anchor.anchor.getBoundingClientRect();\n anchor.position = rect.top + document.body.scrollTop;\n }\n this.anchors.sort(function (a, b) {\n return a.position - b.position;\n });\n var event = new CustomEvent(\"scroll\", {\n detail: {\n scrollTop: _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.scrollTop,\n },\n });\n this.onScroll(event);\n };\n /**\n * Triggered after the viewport was scrolled.\n *\n * @param event The custom event with the current vertical scroll position.\n */\n MenuHighlight.prototype.onScroll = function (event) {\n var scrollTop = event.detail.scrollTop + 5;\n var anchors = this.anchors;\n var count = anchors.length - 1;\n var index = this.index;\n while (index > -1 && anchors[index].position > scrollTop) {\n index -= 1;\n }\n while (index < count && anchors[index + 1].position < scrollTop) {\n index += 1;\n }\n if (this.index != index) {\n if (this.index > -1)\n this.anchors[this.index].link.classList.remove(\"focus\");\n this.index = index;\n if (this.index > -1)\n this.anchors[this.index].link.classList.add(\"focus\");\n }\n };\n return MenuHighlight;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/MenuHighlight.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/components/Search.ts": -/*!************************************************************!*\ - !*** ./default/assets/js/src/typedoc/components/Search.ts ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"initSearch\": () => /* binding */ initSearch\n/* harmony export */ });\n/* harmony import */ var _utils_debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/debounce */ \"./default/assets/js/src/typedoc/utils/debounce.ts\");\n/* harmony import */ var lunr__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! lunr */ \"../node_modules/lunr/lunr.js\");\n/* harmony import */ var lunr__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(lunr__WEBPACK_IMPORTED_MODULE_1__);\n\n\nfunction initSearch() {\n var searchEl = document.getElementById(\"tsd-search\");\n if (!searchEl)\n return;\n var searchScript = document.getElementById(\"search-script\");\n searchEl.classList.add(\"loading\");\n if (searchScript) {\n searchScript.addEventListener(\"error\", function () {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"failure\");\n });\n searchScript.addEventListener(\"load\", function () {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"ready\");\n });\n if (window.searchData) {\n searchEl.classList.remove(\"loading\");\n }\n }\n var field = document.querySelector(\"#tsd-search-field\");\n var results = document.querySelector(\".results\");\n if (!field || !results) {\n throw new Error(\"The input field or the result list wrapper was not found\");\n }\n var resultClicked = false;\n results.addEventListener(\"mousedown\", function () { return (resultClicked = true); });\n results.addEventListener(\"mouseup\", function () {\n resultClicked = false;\n searchEl.classList.remove(\"has-focus\");\n });\n field.addEventListener(\"focus\", function () { return searchEl.classList.add(\"has-focus\"); });\n field.addEventListener(\"blur\", function () {\n if (!resultClicked) {\n resultClicked = false;\n searchEl.classList.remove(\"has-focus\");\n }\n });\n var state = {\n base: searchEl.dataset.base + \"/\",\n };\n bindEvents(searchEl, results, field, state);\n}\nfunction bindEvents(searchEl, results, field, state) {\n field.addEventListener(\"input\", (0,_utils_debounce__WEBPACK_IMPORTED_MODULE_0__.debounce)(function () {\n updateResults(searchEl, results, field, state);\n }, 200));\n var preventPress = false;\n field.addEventListener(\"keydown\", function (e) {\n preventPress = true;\n if (e.key == \"Enter\") {\n gotoCurrentResult(results, field);\n }\n else if (e.key == \"Escape\") {\n field.blur();\n }\n else if (e.key == \"ArrowUp\") {\n setCurrentResult(results, -1);\n }\n else if (e.key === \"ArrowDown\") {\n setCurrentResult(results, 1);\n }\n else {\n preventPress = false;\n }\n });\n field.addEventListener(\"keypress\", function (e) {\n if (preventPress)\n e.preventDefault();\n });\n /**\n * Start searching by pressing slash.\n */\n document.body.addEventListener(\"keydown\", function (e) {\n if (e.altKey || e.ctrlKey || e.metaKey)\n return;\n if (!field.matches(\":focus\") && e.key === \"/\") {\n field.focus();\n e.preventDefault();\n }\n });\n}\nfunction checkIndex(state, searchEl) {\n if (state.index)\n return;\n if (window.searchData) {\n searchEl.classList.remove(\"loading\");\n searchEl.classList.add(\"ready\");\n state.data = window.searchData;\n state.index = lunr__WEBPACK_IMPORTED_MODULE_1__.Index.load(window.searchData.index);\n }\n}\nfunction updateResults(searchEl, results, query, state) {\n checkIndex(state, searchEl);\n // Don't clear results if loading state is not ready,\n // because loading or error message can be removed.\n if (!state.index || !state.data)\n return;\n results.textContent = \"\";\n var searchText = query.value.trim();\n // Perform a wildcard search\n var res = state.index.search(\"*\" + searchText + \"*\");\n for (var i = 0, c = Math.min(10, res.length); i < c; i++) {\n var row = state.data.rows[Number(res[i].ref)];\n // Bold the matched part of the query in the search results\n var name_1 = boldMatches(row.name, searchText);\n if (row.parent) {\n name_1 = \"\" + boldMatches(row.parent, searchText) + \".\" + name_1;\n }\n var item = document.createElement(\"li\");\n item.classList.value = row.classes;\n var anchor = document.createElement(\"a\");\n anchor.href = state.base + row.url;\n anchor.classList.add(\"tsd-kind-icon\");\n anchor.innerHTML = name_1;\n item.append(anchor);\n results.appendChild(item);\n }\n}\n/**\n * Move the highlight within the result set.\n */\nfunction setCurrentResult(results, dir) {\n var current = results.querySelector(\".current\");\n if (!current) {\n current = results.querySelector(dir == 1 ? \"li:first-child\" : \"li:last-child\");\n if (current) {\n current.classList.add(\"current\");\n }\n }\n else {\n var rel = dir == 1\n ? current.nextElementSibling\n : current.previousElementSibling;\n if (rel) {\n current.classList.remove(\"current\");\n rel.classList.add(\"current\");\n }\n }\n}\n/**\n * Navigate to the highlighted result.\n */\nfunction gotoCurrentResult(results, field) {\n var current = results.querySelector(\".current\");\n if (!current) {\n current = results.querySelector(\"li:first-child\");\n }\n if (current) {\n var link = current.querySelector(\"a\");\n if (link) {\n window.location.href = link.href;\n }\n field.blur();\n }\n}\nfunction boldMatches(text, search) {\n if (search === \"\") {\n return text;\n }\n var lowerText = text.toLocaleLowerCase();\n var lowerSearch = search.toLocaleLowerCase();\n var parts = [];\n var lastIndex = 0;\n var index = lowerText.indexOf(lowerSearch);\n while (index != -1) {\n parts.push(escapeHtml(text.substring(lastIndex, index)), \"\" + escapeHtml(text.substring(index, index + lowerSearch.length)) + \"\");\n lastIndex = index + lowerSearch.length;\n index = lowerText.indexOf(lowerSearch, lastIndex);\n }\n parts.push(escapeHtml(text.substring(lastIndex)));\n return parts.join(\"\");\n}\nvar SPECIAL_HTML = {\n \"&\": \"&\",\n \"<\": \"<\",\n \">\": \">\",\n \"'\": \"'\",\n '\"': \""\",\n};\nfunction escapeHtml(text) {\n return text.replace(/[&<>\"'\"]/g, function (match) { return SPECIAL_HTML[match]; });\n}\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Search.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/components/Signature.ts": -/*!***************************************************************!*\ - !*** ./default/assets/js/src/typedoc/components/Signature.ts ***! - \***************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Signature\": () => /* binding */ Signature\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _services_Viewport__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../services/Viewport */ \"./default/assets/js/src/typedoc/services/Viewport.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * Holds a signature and its description.\n */\nvar SignatureGroup = /** @class */ (function () {\n /**\n * Create a new SignatureGroup instance.\n *\n * @param signature The target signature.\n * @param description The description for the signature.\n */\n function SignatureGroup(signature, description) {\n this.signature = signature;\n this.description = description;\n }\n /**\n * Add the given class to all elements of the group.\n *\n * @param className The class name to add.\n */\n SignatureGroup.prototype.addClass = function (className) {\n this.signature.classList.add(className);\n this.description.classList.add(className);\n return this;\n };\n /**\n * Remove the given class from all elements of the group.\n *\n * @param className The class name to remove.\n */\n SignatureGroup.prototype.removeClass = function (className) {\n this.signature.classList.remove(className);\n this.description.classList.remove(className);\n return this;\n };\n return SignatureGroup;\n}());\n/**\n * Controls the tab like behaviour of methods and functions with multiple signatures.\n */\nvar Signature = /** @class */ (function (_super) {\n __extends(Signature, _super);\n /**\n * Create a new Signature instance.\n *\n * @param options Backbone view constructor options.\n */\n function Signature(options) {\n var _this = _super.call(this, options) || this;\n /**\n * List of found signature groups.\n */\n _this.groups = [];\n /**\n * The index of the currently displayed signature.\n */\n _this.index = -1;\n _this.createGroups();\n if (_this.container) {\n _this.el.classList.add(\"active\");\n Array.from(_this.el.children).forEach(function (signature) {\n signature.addEventListener(\"touchstart\", function (event) {\n return _this.onClick(event);\n });\n signature.addEventListener(\"click\", function (event) {\n return _this.onClick(event);\n });\n });\n _this.container.classList.add(\"active\");\n _this.setIndex(0);\n }\n return _this;\n }\n /**\n * Set the index of the active signature.\n *\n * @param index The index of the signature to activate.\n */\n Signature.prototype.setIndex = function (index) {\n if (index < 0)\n index = 0;\n if (index > this.groups.length - 1)\n index = this.groups.length - 1;\n if (this.index == index)\n return;\n var to = this.groups[index];\n if (this.index > -1) {\n var from_1 = this.groups[this.index];\n from_1.removeClass(\"current\").addClass(\"fade-out\");\n to.addClass(\"current\");\n to.addClass(\"fade-in\");\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.triggerResize();\n setTimeout(function () {\n from_1.removeClass(\"fade-out\");\n to.removeClass(\"fade-in\");\n }, 300);\n }\n else {\n to.addClass(\"current\");\n _services_Viewport__WEBPACK_IMPORTED_MODULE_1__.Viewport.instance.triggerResize();\n }\n this.index = index;\n };\n /**\n * Find all signature/description groups.\n */\n Signature.prototype.createGroups = function () {\n var signatures = this.el.children;\n if (signatures.length < 2)\n return;\n this.container = this.el.nextElementSibling;\n var descriptions = this.container.children;\n this.groups = [];\n for (var index = 0; index < signatures.length; index++) {\n this.groups.push(new SignatureGroup(signatures[index], descriptions[index]));\n }\n };\n /**\n * Triggered when the user clicks onto a signature header.\n *\n * @param e The related event object.\n */\n Signature.prototype.onClick = function (e) {\n var _this = this;\n this.groups.forEach(function (group, index) {\n if (group.signature === e.currentTarget) {\n _this.setIndex(index);\n }\n });\n };\n return Signature;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Signature.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/components/Toggle.ts": -/*!************************************************************!*\ - !*** ./default/assets/js/src/typedoc/components/Toggle.ts ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Toggle\": () => /* binding */ Toggle\n/* harmony export */ });\n/* harmony import */ var _Component__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../Component */ \"./default/assets/js/src/typedoc/Component.ts\");\n/* harmony import */ var _utils_pointer__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/pointer */ \"./default/assets/js/src/typedoc/utils/pointer.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\nvar Toggle = /** @class */ (function (_super) {\n __extends(Toggle, _super);\n function Toggle(options) {\n var _this = _super.call(this, options) || this;\n _this.className = _this.el.dataset.toggle || \"\";\n _this.el.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) { return _this.onPointerUp(e); });\n _this.el.addEventListener(\"click\", function (e) { return e.preventDefault(); });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerDown, function (e) {\n return _this.onDocumentPointerDown(e);\n });\n document.addEventListener(_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.pointerUp, function (e) {\n return _this.onDocumentPointerUp(e);\n });\n return _this;\n }\n Toggle.prototype.setActive = function (value) {\n if (this.active == value)\n return;\n this.active = value;\n document.documentElement.classList.toggle(\"has-\" + this.className, value);\n this.el.classList.toggle(\"active\", value);\n var transition = (this.active ? \"to-has-\" : \"from-has-\") + this.className;\n document.documentElement.classList.add(transition);\n setTimeout(function () { return document.documentElement.classList.remove(transition); }, 500);\n };\n Toggle.prototype.onPointerUp = function (event) {\n if (_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.hasPointerMoved)\n return;\n this.setActive(true);\n event.preventDefault();\n };\n Toggle.prototype.onDocumentPointerDown = function (e) {\n if (this.active) {\n if (e.target.closest(\".col-menu, .tsd-filter-group\")) {\n return;\n }\n this.setActive(false);\n }\n };\n Toggle.prototype.onDocumentPointerUp = function (e) {\n var _this = this;\n if (_utils_pointer__WEBPACK_IMPORTED_MODULE_1__.hasPointerMoved)\n return;\n if (this.active) {\n if (e.target.closest(\".col-menu\")) {\n var link = e.target.closest(\"a\");\n if (link) {\n var href = window.location.href;\n if (href.indexOf(\"#\") != -1) {\n href = href.substr(0, href.indexOf(\"#\"));\n }\n if (link.href.substr(0, href.length) == href) {\n setTimeout(function () { return _this.setActive(false); }, 250);\n }\n }\n }\n }\n };\n return Toggle;\n}(_Component__WEBPACK_IMPORTED_MODULE_0__.Component));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/components/Toggle.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/services/Viewport.ts": -/*!************************************************************!*\ - !*** ./default/assets/js/src/typedoc/services/Viewport.ts ***! - \************************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"Viewport\": () => /* binding */ Viewport\n/* harmony export */ });\n/* harmony import */ var _EventTarget__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../EventTarget */ \"./default/assets/js/src/typedoc/EventTarget.ts\");\n/* harmony import */ var _utils_trottle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/trottle */ \"./default/assets/js/src/typedoc/utils/trottle.ts\");\nvar __extends = (undefined && undefined.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\n\n\n/**\n * A global service that monitors the window size and scroll position.\n */\nvar Viewport = /** @class */ (function (_super) {\n __extends(Viewport, _super);\n /**\n * Create new Viewport instance.\n */\n function Viewport() {\n var _this = _super.call(this) || this;\n /**\n * The current scroll position.\n */\n _this.scrollTop = 0;\n /**\n * The previous scrollTop.\n */\n _this.lastY = 0;\n /**\n * The width of the window.\n */\n _this.width = 0;\n /**\n * The height of the window.\n */\n _this.height = 0;\n /**\n * Boolean indicating whether the toolbar is shown.\n */\n _this.showToolbar = true;\n _this.toolbar = (document.querySelector(\".tsd-page-toolbar\"));\n _this.secondaryNav = (document.querySelector(\".tsd-navigation.secondary\"));\n window.addEventListener(\"scroll\", (0,_utils_trottle__WEBPACK_IMPORTED_MODULE_1__.throttle)(function () { return _this.onScroll(); }, 10));\n window.addEventListener(\"resize\", (0,_utils_trottle__WEBPACK_IMPORTED_MODULE_1__.throttle)(function () { return _this.onResize(); }, 10));\n _this.onResize();\n _this.onScroll();\n return _this;\n }\n /**\n * Trigger a resize event.\n */\n Viewport.prototype.triggerResize = function () {\n var event = new CustomEvent(\"resize\", {\n detail: {\n width: this.width,\n height: this.height,\n },\n });\n this.dispatchEvent(event);\n };\n /**\n * Triggered when the size of the window has changed.\n */\n Viewport.prototype.onResize = function () {\n this.width = window.innerWidth || 0;\n this.height = window.innerHeight || 0;\n var event = new CustomEvent(\"resize\", {\n detail: {\n width: this.width,\n height: this.height,\n },\n });\n this.dispatchEvent(event);\n };\n /**\n * Triggered when the user scrolled the viewport.\n */\n Viewport.prototype.onScroll = function () {\n this.scrollTop = window.scrollY || 0;\n var event = new CustomEvent(\"scroll\", {\n detail: {\n scrollTop: this.scrollTop,\n },\n });\n this.dispatchEvent(event);\n this.hideShowToolbar();\n };\n /**\n * Handle hiding/showing of the toolbar.\n */\n Viewport.prototype.hideShowToolbar = function () {\n var isShown = this.showToolbar;\n this.showToolbar = this.lastY >= this.scrollTop || this.scrollTop <= 0;\n if (isShown !== this.showToolbar) {\n this.toolbar.classList.toggle(\"tsd-page-toolbar--hide\");\n this.secondaryNav.classList.toggle(\"tsd-navigation--toolbar-hide\");\n }\n this.lastY = this.scrollTop;\n };\n Viewport.instance = new Viewport();\n return Viewport;\n}(_EventTarget__WEBPACK_IMPORTED_MODULE_0__.EventTarget));\n\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/services/Viewport.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/utils/debounce.ts": -/*!*********************************************************!*\ - !*** ./default/assets/js/src/typedoc/utils/debounce.ts ***! - \*********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"debounce\": () => /* binding */ debounce\n/* harmony export */ });\nvar debounce = function (fn, wait) {\n if (wait === void 0) { wait = 100; }\n var timeout;\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n clearTimeout(timeout);\n timeout = setTimeout(function () { return fn(args); }, wait);\n };\n};\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/debounce.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/utils/pointer.ts": -/*!********************************************************!*\ - !*** ./default/assets/js/src/typedoc/utils/pointer.ts ***! - \********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"pointerDown\": () => /* binding */ pointerDown,\n/* harmony export */ \"pointerMove\": () => /* binding */ pointerMove,\n/* harmony export */ \"pointerUp\": () => /* binding */ pointerUp,\n/* harmony export */ \"pointerDownPosition\": () => /* binding */ pointerDownPosition,\n/* harmony export */ \"preventNextClick\": () => /* binding */ preventNextClick,\n/* harmony export */ \"isPointerDown\": () => /* binding */ isPointerDown,\n/* harmony export */ \"isPointerTouch\": () => /* binding */ isPointerTouch,\n/* harmony export */ \"hasPointerMoved\": () => /* binding */ hasPointerMoved,\n/* harmony export */ \"isMobile\": () => /* binding */ isMobile\n/* harmony export */ });\n/**\n * Event name of the pointer down event.\n */\nvar pointerDown = \"mousedown\";\n/**\n * Event name of the pointer move event.\n */\nvar pointerMove = \"mousemove\";\n/**\n * Event name of the pointer up event.\n */\nvar pointerUp = \"mouseup\";\n/**\n * Position the pointer was pressed at.\n */\nvar pointerDownPosition = { x: 0, y: 0 };\n/**\n * Should the next click on the document be supressed?\n */\nvar preventNextClick = false;\n/**\n * Is the pointer down?\n */\nvar isPointerDown = false;\n/**\n * Is the pointer a touch point?\n */\nvar isPointerTouch = false;\n/**\n * Did the pointer move since the last down event?\n */\nvar hasPointerMoved = false;\n/**\n * Is the user agent a mobile agent?\n */\nvar isMobile = /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);\ndocument.documentElement.classList.add(isMobile ? \"is-mobile\" : \"not-mobile\");\nif (isMobile && \"ontouchstart\" in document.documentElement) {\n isPointerTouch = true;\n pointerDown = \"touchstart\";\n pointerMove = \"touchmove\";\n pointerUp = \"touchend\";\n}\ndocument.addEventListener(pointerDown, function (e) {\n isPointerDown = true;\n hasPointerMoved = false;\n var t = pointerDown == \"touchstart\"\n ? e.targetTouches[0]\n : e;\n pointerDownPosition.y = t.pageY || 0;\n pointerDownPosition.x = t.pageX || 0;\n});\ndocument.addEventListener(pointerMove, function (e) {\n if (!isPointerDown)\n return;\n if (!hasPointerMoved) {\n var t = pointerDown == \"touchstart\"\n ? e.targetTouches[0]\n : e;\n var x = pointerDownPosition.x - (t.pageX || 0);\n var y = pointerDownPosition.y - (t.pageY || 0);\n hasPointerMoved = Math.sqrt(x * x + y * y) > 10;\n }\n});\ndocument.addEventListener(pointerUp, function () {\n isPointerDown = false;\n});\ndocument.addEventListener(\"click\", function (e) {\n if (preventNextClick) {\n e.preventDefault();\n e.stopImmediatePropagation();\n preventNextClick = false;\n }\n});\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/pointer.ts?"); - -/***/ }), - -/***/ "./default/assets/js/src/typedoc/utils/trottle.ts": -/*!********************************************************!*\ - !*** ./default/assets/js/src/typedoc/utils/trottle.ts ***! - \********************************************************/ -/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => { - -"use strict"; -eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\n/* harmony export */ \"throttle\": () => /* binding */ throttle\n/* harmony export */ });\nvar throttle = function (fn, wait) {\n if (wait === void 0) { wait = 100; }\n var time = Date.now();\n return function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (time + wait - Date.now() < 0) {\n fn.apply(void 0, args);\n time = Date.now();\n }\n };\n};\n\n\n//# sourceURL=webpack:///./default/assets/js/src/typedoc/utils/trottle.ts?"); - -/***/ }) - -/******/ }); -/************************************************************************/ -/******/ // The module cache -/******/ var __webpack_module_cache__ = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ // Check if module is in cache -/******/ if(__webpack_module_cache__[moduleId]) { -/******/ return __webpack_module_cache__[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = __webpack_module_cache__[moduleId] = { -/******/ // no module.id needed -/******/ // no module.loaded needed -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/************************************************************************/ -/******/ /* webpack/runtime/compat get default export */ -/******/ (() => { -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = (module) => { -/******/ var getter = module && module.__esModule ? -/******/ () => module['default'] : -/******/ () => module; -/******/ __webpack_require__.d(getter, { a: getter }); -/******/ return getter; -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/define property getters */ -/******/ (() => { -/******/ // define getter functions for harmony exports -/******/ __webpack_require__.d = (exports, definition) => { -/******/ for(var key in definition) { -/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { -/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); -/******/ } -/******/ } -/******/ }; -/******/ })(); -/******/ -/******/ /* webpack/runtime/hasOwnProperty shorthand */ -/******/ (() => { -/******/ __webpack_require__.o = (obj, prop) => Object.prototype.hasOwnProperty.call(obj, prop) -/******/ })(); -/******/ -/******/ /* webpack/runtime/make namespace object */ -/******/ (() => { -/******/ // define __esModule on exports -/******/ __webpack_require__.r = (exports) => { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ })(); -/******/ -/************************************************************************/ -/******/ // startup -/******/ // Load entry module -/******/ __webpack_require__("./default/assets/js/src/bootstrap.ts"); -/******/ // This entry module used 'exports' so it can't be inlined -/******/ })() -; \ No newline at end of file diff --git a/docs/assets/js/search.js b/docs/assets/js/search.js deleted file mode 100644 index ba61564d..00000000 --- a/docs/assets/js/search.js +++ /dev/null @@ -1 +0,0 @@ -window.searchData = {"kinds":{"32":"Variable","128":"Class","256":"Interface","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":4194304,"name":"ReadFunction","url":"modules.html#readfunction","classes":"tsd-kind-type-alias"},{"id":1,"kind":65536,"name":"__type","url":"modules.html#readfunction.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"ReadFunction"},{"id":2,"kind":4194304,"name":"WriteFunction","url":"modules.html#writefunction","classes":"tsd-kind-type-alias"},{"id":3,"kind":65536,"name":"__type","url":"modules.html#writefunction.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"WriteFunction"},{"id":4,"kind":4194304,"name":"GattCharacteristicProperty","url":"modules.html#gattcharacteristicproperty","classes":"tsd-kind-type-alias"},{"id":5,"kind":256,"name":"GattCharacteristicEvents","url":"interfaces/gattcharacteristicevents.html","classes":"tsd-kind-interface"},{"id":6,"kind":1024,"name":"notification","url":"interfaces/gattcharacteristicevents.html#notification","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"GattCharacteristicEvents"},{"id":7,"kind":65536,"name":"__type","url":"interfaces/gattcharacteristicevents.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"GattCharacteristicEvents"},{"id":8,"kind":128,"name":"GattCharacteristic","url":"classes/gattcharacteristic.html","classes":"tsd-kind-class"},{"id":9,"kind":512,"name":"constructor","url":"classes/gattcharacteristic.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattCharacteristic"},{"id":10,"kind":1024,"name":"service","url":"classes/gattcharacteristic.html#service","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":11,"kind":1024,"name":"uuid","url":"classes/gattcharacteristic.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":12,"kind":1024,"name":"isRemote","url":"classes/gattcharacteristic.html#isremote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":13,"kind":1024,"name":"properties","url":"classes/gattcharacteristic.html#properties","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":14,"kind":1024,"name":"propertyFlag","url":"classes/gattcharacteristic.html#propertyflag","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":15,"kind":1024,"name":"secure","url":"classes/gattcharacteristic.html#secure","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":16,"kind":1024,"name":"secureFlag","url":"classes/gattcharacteristic.html#secureflag","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":17,"kind":1024,"name":"descriptors","url":"classes/gattcharacteristic.html#descriptors","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":18,"kind":2048,"name":"discoverDescriptors","url":"classes/gattcharacteristic.html#discoverdescriptors","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":19,"kind":2048,"name":"read","url":"classes/gattcharacteristic.html#read","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":20,"kind":2048,"name":"write","url":"classes/gattcharacteristic.html#write","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":21,"kind":2048,"name":"broadcast","url":"classes/gattcharacteristic.html#broadcast","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":22,"kind":2048,"name":"notify","url":"classes/gattcharacteristic.html#notify","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":23,"kind":2048,"name":"subscribe","url":"classes/gattcharacteristic.html#subscribe","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":24,"kind":2048,"name":"unsubscribe","url":"classes/gattcharacteristic.html#unsubscribe","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":25,"kind":2048,"name":"addDescriptor","url":"classes/gattcharacteristic.html#adddescriptor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":26,"kind":2048,"name":"handleRead","url":"classes/gattcharacteristic.html#handleread","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":27,"kind":2048,"name":"handleWrite","url":"classes/gattcharacteristic.html#handlewrite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":28,"kind":2048,"name":"toString","url":"classes/gattcharacteristic.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":29,"kind":2048,"name":"toJSON","url":"classes/gattcharacteristic.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":30,"kind":128,"name":"GattDescriptor","url":"classes/gattdescriptor.html","classes":"tsd-kind-class"},{"id":31,"kind":512,"name":"constructor","url":"classes/gattdescriptor.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"GattDescriptor"},{"id":32,"kind":1024,"name":"characteristic","url":"classes/gattdescriptor.html#characteristic","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":33,"kind":1024,"name":"uuid","url":"classes/gattdescriptor.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":34,"kind":1024,"name":"isRemote","url":"classes/gattdescriptor.html#isremote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":35,"kind":2048,"name":"read","url":"classes/gattdescriptor.html#read","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":36,"kind":2048,"name":"write","url":"classes/gattdescriptor.html#write","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":37,"kind":2048,"name":"handleRead","url":"classes/gattdescriptor.html#handleread","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":38,"kind":2048,"name":"handleWrite","url":"classes/gattdescriptor.html#handlewrite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":39,"kind":2048,"name":"toString","url":"classes/gattdescriptor.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":40,"kind":2048,"name":"toJSON","url":"classes/gattdescriptor.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":41,"kind":128,"name":"Gatt","url":"classes/gatt.html","classes":"tsd-kind-class"},{"id":42,"kind":512,"name":"constructor","url":"classes/gatt.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Gatt"},{"id":43,"kind":262144,"name":"isRemote","url":"classes/gatt.html#isremote","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Gatt"},{"id":44,"kind":1024,"name":"services","url":"classes/gatt.html#services","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Gatt"},{"id":45,"kind":262144,"name":"mtu","url":"classes/gatt.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Gatt"},{"id":46,"kind":2048,"name":"toString","url":"classes/gatt.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Gatt"},{"id":47,"kind":2048,"name":"toJSON","url":"classes/gatt.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Gatt"},{"id":48,"kind":128,"name":"GattLocal","url":"classes/gattlocal.html","classes":"tsd-kind-class"},{"id":49,"kind":512,"name":"constructor","url":"classes/gattlocal.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":50,"kind":1024,"name":"adapter","url":"classes/gattlocal.html#adapter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattLocal"},{"id":51,"kind":262144,"name":"isRemote","url":"classes/gattlocal.html#isremote","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":52,"kind":2048,"name":"addService","url":"classes/gattlocal.html#addservice","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattLocal"},{"id":53,"kind":2048,"name":"prepare","url":"classes/gattlocal.html#prepare","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattLocal"},{"id":54,"kind":2048,"name":"toString","url":"classes/gattlocal.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":55,"kind":2048,"name":"toJSON","url":"classes/gattlocal.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":56,"kind":1024,"name":"services","url":"classes/gattlocal.html#services","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":57,"kind":262144,"name":"mtu","url":"classes/gattlocal.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":58,"kind":128,"name":"GattRemote","url":"classes/gattremote.html","classes":"tsd-kind-class"},{"id":59,"kind":512,"name":"constructor","url":"classes/gattremote.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattRemote"},{"id":60,"kind":1024,"name":"peripheral","url":"classes/gattremote.html#peripheral","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattRemote"},{"id":61,"kind":262144,"name":"isRemote","url":"classes/gattremote.html#isremote","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":62,"kind":2048,"name":"discoverServices","url":"classes/gattremote.html#discoverservices","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattRemote"},{"id":63,"kind":2048,"name":"toJSON","url":"classes/gattremote.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattRemote"},{"id":64,"kind":1024,"name":"services","url":"classes/gattremote.html#services","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":65,"kind":262144,"name":"mtu","url":"classes/gattremote.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":66,"kind":2048,"name":"toString","url":"classes/gattremote.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":67,"kind":128,"name":"GattError","url":"classes/gatterror.html","classes":"tsd-kind-class"},{"id":68,"kind":65536,"name":"__type","url":"classes/gatterror.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"GattError"},{"id":69,"kind":512,"name":"constructor","url":"classes/gatterror.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattError"},{"id":70,"kind":1024,"name":"peripheral","url":"classes/gatterror.html#peripheral","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattError"},{"id":71,"kind":1024,"name":"details","url":"classes/gatterror.html#details","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattError"},{"id":72,"kind":128,"name":"GattService","url":"classes/gattservice.html","classes":"tsd-kind-class"},{"id":73,"kind":512,"name":"constructor","url":"classes/gattservice.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"GattService"},{"id":74,"kind":1024,"name":"gatt","url":"classes/gattservice.html#gatt","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":75,"kind":1024,"name":"uuid","url":"classes/gattservice.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":76,"kind":1024,"name":"isRemote","url":"classes/gattservice.html#isremote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":77,"kind":1024,"name":"characteristics","url":"classes/gattservice.html#characteristics","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":78,"kind":2048,"name":"addCharacteristic","url":"classes/gattservice.html#addcharacteristic","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":79,"kind":2048,"name":"discoverCharacteristics","url":"classes/gattservice.html#discovercharacteristics","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":80,"kind":2048,"name":"toString","url":"classes/gattservice.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":81,"kind":2048,"name":"toJSON","url":"classes/gattservice.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":82,"kind":256,"name":"AdapterEvents","url":"interfaces/adapterevents.html","classes":"tsd-kind-interface"},{"id":83,"kind":1024,"name":"discover","url":"interfaces/adapterevents.html#discover","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":84,"kind":65536,"name":"__type","url":"interfaces/adapterevents.html#__type-2","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":85,"kind":1024,"name":"connect","url":"interfaces/adapterevents.html#connect","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":86,"kind":65536,"name":"__type","url":"interfaces/adapterevents.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":87,"kind":1024,"name":"disconnect","url":"interfaces/adapterevents.html#disconnect","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":88,"kind":65536,"name":"__type","url":"interfaces/adapterevents.html#__type-1","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":89,"kind":1024,"name":"error","url":"interfaces/adapterevents.html#error","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":90,"kind":65536,"name":"__type","url":"interfaces/adapterevents.html#__type-3","classes":"tsd-kind-type-literal tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":91,"kind":128,"name":"Adapter","url":"classes/adapter.html","classes":"tsd-kind-class"},{"id":92,"kind":512,"name":"constructor","url":"classes/adapter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"Adapter"},{"id":93,"kind":1024,"name":"modblue","url":"classes/adapter.html#modblue","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Adapter"},{"id":94,"kind":1024,"name":"id","url":"classes/adapter.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Adapter"},{"id":95,"kind":262144,"name":"name","url":"classes/adapter.html#name","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":96,"kind":262144,"name":"addressType","url":"classes/adapter.html#addresstype","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":97,"kind":262144,"name":"address","url":"classes/adapter.html#address","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":98,"kind":2048,"name":"scanFor","url":"classes/adapter.html#scanfor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":99,"kind":2048,"name":"isScanning","url":"classes/adapter.html#isscanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":100,"kind":2048,"name":"startScanning","url":"classes/adapter.html#startscanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":101,"kind":2048,"name":"stopScanning","url":"classes/adapter.html#stopscanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":102,"kind":2048,"name":"getScannedPeripherals","url":"classes/adapter.html#getscannedperipherals","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":103,"kind":2048,"name":"isAdvertising","url":"classes/adapter.html#isadvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":104,"kind":2048,"name":"startAdvertising","url":"classes/adapter.html#startadvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":105,"kind":2048,"name":"stopAdvertising","url":"classes/adapter.html#stopadvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":106,"kind":2048,"name":"setupGatt","url":"classes/adapter.html#setupgatt","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":107,"kind":2048,"name":"toString","url":"classes/adapter.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":108,"kind":2048,"name":"toJSON","url":"classes/adapter.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":109,"kind":4194304,"name":"AddressType","url":"modules.html#addresstype","classes":"tsd-kind-type-alias"},{"id":110,"kind":32,"name":"CUSTOM","url":"modules.html#custom","classes":"tsd-kind-variable"},{"id":111,"kind":256,"name":"InspectOptionsStylized","url":"interfaces/inspectoptionsstylized.html","classes":"tsd-kind-interface"},{"id":112,"kind":1024,"name":"depth","url":"interfaces/inspectoptionsstylized.html#depth","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"InspectOptionsStylized"},{"id":113,"kind":2048,"name":"stylize","url":"interfaces/inspectoptionsstylized.html#stylize","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"InspectOptionsStylized"},{"id":114,"kind":128,"name":"MODblue","url":"classes/modblue.html","classes":"tsd-kind-class"},{"id":115,"kind":512,"name":"constructor","url":"classes/modblue.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"MODblue"},{"id":116,"kind":2048,"name":"dispose","url":"classes/modblue.html#dispose","classes":"tsd-kind-method tsd-parent-kind-class","parent":"MODblue"},{"id":117,"kind":2048,"name":"getAdapters","url":"classes/modblue.html#getadapters","classes":"tsd-kind-method tsd-parent-kind-class","parent":"MODblue"},{"id":118,"kind":4194304,"name":"PeripheralState","url":"modules.html#peripheralstate","classes":"tsd-kind-type-alias"},{"id":119,"kind":256,"name":"ConnectOptions","url":"interfaces/connectoptions.html","classes":"tsd-kind-interface"},{"id":120,"kind":1024,"name":"mtu","url":"interfaces/connectoptions.html#mtu","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":121,"kind":1024,"name":"minInterval","url":"interfaces/connectoptions.html#mininterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":122,"kind":1024,"name":"maxInterval","url":"interfaces/connectoptions.html#maxinterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":123,"kind":1024,"name":"latency","url":"interfaces/connectoptions.html#latency","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":124,"kind":1024,"name":"supervisionTimeout","url":"interfaces/connectoptions.html#supervisiontimeout","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":125,"kind":128,"name":"Peripheral","url":"classes/peripheral.html","classes":"tsd-kind-class"},{"id":126,"kind":512,"name":"constructor","url":"classes/peripheral.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Peripheral"},{"id":127,"kind":1024,"name":"adapter","url":"classes/peripheral.html#adapter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":128,"kind":262144,"name":"gatt","url":"classes/peripheral.html#gatt","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Peripheral"},{"id":129,"kind":1024,"name":"uuid","url":"classes/peripheral.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":130,"kind":1024,"name":"addressType","url":"classes/peripheral.html#addresstype","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":131,"kind":1024,"name":"address","url":"classes/peripheral.html#address","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":132,"kind":1024,"name":"name","url":"classes/peripheral.html#name","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":133,"kind":1024,"name":"manufacturerData","url":"classes/peripheral.html#manufacturerdata","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":134,"kind":1024,"name":"rssi","url":"classes/peripheral.html#rssi","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":135,"kind":262144,"name":"state","url":"classes/peripheral.html#state","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Peripheral"},{"id":136,"kind":2048,"name":"connect","url":"classes/peripheral.html#connect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":137,"kind":2048,"name":"disconnect","url":"classes/peripheral.html#disconnect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":138,"kind":2048,"name":"toString","url":"classes/peripheral.html#tostring","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":139,"kind":2048,"name":"toJSON","url":"classes/peripheral.html#tojson","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"}],"index":{"version":"2.3.9","fields":["name","parent"],"fieldVectors":[["name/0",[0,40.325]],["parent/0",[]],["name/1",[1,28.087]],["parent/1",[0,3.775]],["name/2",[2,40.325]],["parent/2",[]],["name/3",[1,28.087]],["parent/3",[2,3.775]],["name/4",[3,45.433]],["parent/4",[]],["name/5",[4,36.96]],["parent/5",[]],["name/6",[5,45.433]],["parent/6",[4,3.46]],["name/7",[1,28.087]],["parent/7",[4,3.46]],["name/8",[6,18.352]],["parent/8",[]],["name/9",[7,25.974]],["parent/9",[6,1.718]],["name/10",[8,45.433]],["parent/10",[6,1.718]],["name/11",[9,34.447]],["parent/11",[6,1.718]],["name/12",[10,30.77]],["parent/12",[6,1.718]],["name/13",[11,45.433]],["parent/13",[6,1.718]],["name/14",[12,45.433]],["parent/14",[6,1.718]],["name/15",[13,45.433]],["parent/15",[6,1.718]],["name/16",[14,45.433]],["parent/16",[6,1.718]],["name/17",[15,45.433]],["parent/17",[6,1.718]],["name/18",[16,45.433]],["parent/18",[6,1.718]],["name/19",[17,40.325]],["parent/19",[6,1.718]],["name/20",[18,40.325]],["parent/20",[6,1.718]],["name/21",[19,45.433]],["parent/21",[6,1.718]],["name/22",[20,45.433]],["parent/22",[6,1.718]],["name/23",[21,45.433]],["parent/23",[6,1.718]],["name/24",[22,45.433]],["parent/24",[6,1.718]],["name/25",[23,45.433]],["parent/25",[6,1.718]],["name/26",[24,40.325]],["parent/26",[6,1.718]],["name/27",[25,40.325]],["parent/27",[6,1.718]],["name/28",[26,28.087]],["parent/28",[6,1.718]],["name/29",[27,28.087]],["parent/29",[6,1.718]],["name/30",[28,25.064]],["parent/30",[]],["name/31",[7,25.974]],["parent/31",[28,2.346]],["name/32",[29,45.433]],["parent/32",[28,2.346]],["name/33",[9,34.447]],["parent/33",[28,2.346]],["name/34",[10,30.77]],["parent/34",[28,2.346]],["name/35",[17,40.325]],["parent/35",[28,2.346]],["name/36",[18,40.325]],["parent/36",[28,2.346]],["name/37",[24,40.325]],["parent/37",[28,2.346]],["name/38",[25,40.325]],["parent/38",[28,2.346]],["name/39",[26,28.087]],["parent/39",[28,2.346]],["name/40",[27,28.087]],["parent/40",[28,2.346]],["name/41",[30,26.975]],["parent/41",[]],["name/42",[7,25.974]],["parent/42",[30,2.525]],["name/43",[10,30.77]],["parent/43",[30,2.525]],["name/44",[31,36.96]],["parent/44",[30,2.525]],["name/45",[32,34.447]],["parent/45",[30,2.525]],["name/46",[26,28.087]],["parent/46",[30,2.525]],["name/47",[27,28.087]],["parent/47",[30,2.525]],["name/48",[33,25.974]],["parent/48",[]],["name/49",[7,25.974]],["parent/49",[33,2.432]],["name/50",[34,19.283]],["parent/50",[33,2.432]],["name/51",[10,30.77]],["parent/51",[33,2.432]],["name/52",[35,45.433]],["parent/52",[33,2.432]],["name/53",[36,45.433]],["parent/53",[33,2.432]],["name/54",[26,28.087]],["parent/54",[33,2.432]],["name/55",[27,28.087]],["parent/55",[33,2.432]],["name/56",[31,36.96]],["parent/56",[33,2.432]],["name/57",[32,34.447]],["parent/57",[33,2.432]],["name/58",[37,26.975]],["parent/58",[]],["name/59",[7,25.974]],["parent/59",[37,2.525]],["name/60",[38,20.866]],["parent/60",[37,2.525]],["name/61",[10,30.77]],["parent/61",[37,2.525]],["name/62",[39,45.433]],["parent/62",[37,2.525]],["name/63",[27,28.087]],["parent/63",[37,2.525]],["name/64",[31,36.96]],["parent/64",[37,2.525]],["name/65",[32,34.447]],["parent/65",[37,2.525]],["name/66",[26,28.087]],["parent/66",[37,2.525]],["name/67",[40,32.44]],["parent/67",[]],["name/68",[1,28.087]],["parent/68",[40,3.037]],["name/69",[7,25.974]],["parent/69",[40,3.037]],["name/70",[38,20.866]],["parent/70",[40,3.037]],["name/71",[41,45.433]],["parent/71",[40,3.037]],["name/72",[42,25.974]],["parent/72",[]],["name/73",[7,25.974]],["parent/73",[42,2.432]],["name/74",[30,26.975]],["parent/74",[42,2.432]],["name/75",[9,34.447]],["parent/75",[42,2.432]],["name/76",[10,30.77]],["parent/76",[42,2.432]],["name/77",[43,45.433]],["parent/77",[42,2.432]],["name/78",[44,45.433]],["parent/78",[42,2.432]],["name/79",[45,45.433]],["parent/79",[42,2.432]],["name/80",[26,28.087]],["parent/80",[42,2.432]],["name/81",[27,28.087]],["parent/81",[42,2.432]],["name/82",[46,26.975]],["parent/82",[]],["name/83",[47,45.433]],["parent/83",[46,2.525]],["name/84",[1,28.087]],["parent/84",[46,2.525]],["name/85",[48,40.325]],["parent/85",[46,2.525]],["name/86",[1,28.087]],["parent/86",[46,2.525]],["name/87",[49,40.325]],["parent/87",[46,2.525]],["name/88",[1,28.087]],["parent/88",[46,2.525]],["name/89",[50,45.433]],["parent/89",[46,2.525]],["name/90",[1,28.087]],["parent/90",[46,2.525]],["name/91",[34,19.283]],["parent/91",[]],["name/92",[7,25.974]],["parent/92",[34,1.805]],["name/93",[51,32.44]],["parent/93",[34,1.805]],["name/94",[52,45.433]],["parent/94",[34,1.805]],["name/95",[53,40.325]],["parent/95",[34,1.805]],["name/96",[54,36.96]],["parent/96",[34,1.805]],["name/97",[55,40.325]],["parent/97",[34,1.805]],["name/98",[56,45.433]],["parent/98",[34,1.805]],["name/99",[57,45.433]],["parent/99",[34,1.805]],["name/100",[58,45.433]],["parent/100",[34,1.805]],["name/101",[59,45.433]],["parent/101",[34,1.805]],["name/102",[60,45.433]],["parent/102",[34,1.805]],["name/103",[61,45.433]],["parent/103",[34,1.805]],["name/104",[62,45.433]],["parent/104",[34,1.805]],["name/105",[63,45.433]],["parent/105",[34,1.805]],["name/106",[64,45.433]],["parent/106",[34,1.805]],["name/107",[26,28.087]],["parent/107",[34,1.805]],["name/108",[27,28.087]],["parent/108",[34,1.805]],["name/109",[54,36.96]],["parent/109",[]],["name/110",[65,45.433]],["parent/110",[]],["name/111",[66,36.96]],["parent/111",[]],["name/112",[67,45.433]],["parent/112",[66,3.46]],["name/113",[68,45.433]],["parent/113",[66,3.46]],["name/114",[51,32.44]],["parent/114",[]],["name/115",[7,25.974]],["parent/115",[51,3.037]],["name/116",[69,45.433]],["parent/116",[51,3.037]],["name/117",[70,45.433]],["parent/117",[51,3.037]],["name/118",[71,45.433]],["parent/118",[]],["name/119",[72,30.77]],["parent/119",[]],["name/120",[32,34.447]],["parent/120",[72,2.881]],["name/121",[73,45.433]],["parent/121",[72,2.881]],["name/122",[74,45.433]],["parent/122",[72,2.881]],["name/123",[75,45.433]],["parent/123",[72,2.881]],["name/124",[76,45.433]],["parent/124",[72,2.881]],["name/125",[38,20.866]],["parent/125",[]],["name/126",[7,25.974]],["parent/126",[38,1.953]],["name/127",[34,19.283]],["parent/127",[38,1.953]],["name/128",[30,26.975]],["parent/128",[38,1.953]],["name/129",[9,34.447]],["parent/129",[38,1.953]],["name/130",[54,36.96]],["parent/130",[38,1.953]],["name/131",[55,40.325]],["parent/131",[38,1.953]],["name/132",[53,40.325]],["parent/132",[38,1.953]],["name/133",[77,45.433]],["parent/133",[38,1.953]],["name/134",[78,45.433]],["parent/134",[38,1.953]],["name/135",[79,45.433]],["parent/135",[38,1.953]],["name/136",[48,40.325]],["parent/136",[38,1.953]],["name/137",[49,40.325]],["parent/137",[38,1.953]],["name/138",[26,28.087]],["parent/138",[38,1.953]],["name/139",[27,28.087]],["parent/139",[38,1.953]]],"invertedIndex":[["__type",{"_index":1,"name":{"1":{},"3":{},"7":{},"68":{},"84":{},"86":{},"88":{},"90":{}},"parent":{}}],["adapter",{"_index":34,"name":{"50":{},"91":{},"127":{}},"parent":{"92":{},"93":{},"94":{},"95":{},"96":{},"97":{},"98":{},"99":{},"100":{},"101":{},"102":{},"103":{},"104":{},"105":{},"106":{},"107":{},"108":{}}}],["adapterevents",{"_index":46,"name":{"82":{}},"parent":{"83":{},"84":{},"85":{},"86":{},"87":{},"88":{},"89":{},"90":{}}}],["addcharacteristic",{"_index":44,"name":{"78":{}},"parent":{}}],["adddescriptor",{"_index":23,"name":{"25":{}},"parent":{}}],["address",{"_index":55,"name":{"97":{},"131":{}},"parent":{}}],["addresstype",{"_index":54,"name":{"96":{},"109":{},"130":{}},"parent":{}}],["addservice",{"_index":35,"name":{"52":{}},"parent":{}}],["broadcast",{"_index":19,"name":{"21":{}},"parent":{}}],["characteristic",{"_index":29,"name":{"32":{}},"parent":{}}],["characteristics",{"_index":43,"name":{"77":{}},"parent":{}}],["connect",{"_index":48,"name":{"85":{},"136":{}},"parent":{}}],["connectoptions",{"_index":72,"name":{"119":{}},"parent":{"120":{},"121":{},"122":{},"123":{},"124":{}}}],["constructor",{"_index":7,"name":{"9":{},"31":{},"42":{},"49":{},"59":{},"69":{},"73":{},"92":{},"115":{},"126":{}},"parent":{}}],["custom",{"_index":65,"name":{"110":{}},"parent":{}}],["depth",{"_index":67,"name":{"112":{}},"parent":{}}],["descriptors",{"_index":15,"name":{"17":{}},"parent":{}}],["details",{"_index":41,"name":{"71":{}},"parent":{}}],["disconnect",{"_index":49,"name":{"87":{},"137":{}},"parent":{}}],["discover",{"_index":47,"name":{"83":{}},"parent":{}}],["discovercharacteristics",{"_index":45,"name":{"79":{}},"parent":{}}],["discoverdescriptors",{"_index":16,"name":{"18":{}},"parent":{}}],["discoverservices",{"_index":39,"name":{"62":{}},"parent":{}}],["dispose",{"_index":69,"name":{"116":{}},"parent":{}}],["error",{"_index":50,"name":{"89":{}},"parent":{}}],["gatt",{"_index":30,"name":{"41":{},"74":{},"128":{}},"parent":{"42":{},"43":{},"44":{},"45":{},"46":{},"47":{}}}],["gattcharacteristic",{"_index":6,"name":{"8":{}},"parent":{"9":{},"10":{},"11":{},"12":{},"13":{},"14":{},"15":{},"16":{},"17":{},"18":{},"19":{},"20":{},"21":{},"22":{},"23":{},"24":{},"25":{},"26":{},"27":{},"28":{},"29":{}}}],["gattcharacteristicevents",{"_index":4,"name":{"5":{}},"parent":{"6":{},"7":{}}}],["gattcharacteristicproperty",{"_index":3,"name":{"4":{}},"parent":{}}],["gattdescriptor",{"_index":28,"name":{"30":{}},"parent":{"31":{},"32":{},"33":{},"34":{},"35":{},"36":{},"37":{},"38":{},"39":{},"40":{}}}],["gatterror",{"_index":40,"name":{"67":{}},"parent":{"68":{},"69":{},"70":{},"71":{}}}],["gattlocal",{"_index":33,"name":{"48":{}},"parent":{"49":{},"50":{},"51":{},"52":{},"53":{},"54":{},"55":{},"56":{},"57":{}}}],["gattremote",{"_index":37,"name":{"58":{}},"parent":{"59":{},"60":{},"61":{},"62":{},"63":{},"64":{},"65":{},"66":{}}}],["gattservice",{"_index":42,"name":{"72":{}},"parent":{"73":{},"74":{},"75":{},"76":{},"77":{},"78":{},"79":{},"80":{},"81":{}}}],["getadapters",{"_index":70,"name":{"117":{}},"parent":{}}],["getscannedperipherals",{"_index":60,"name":{"102":{}},"parent":{}}],["handleread",{"_index":24,"name":{"26":{},"37":{}},"parent":{}}],["handlewrite",{"_index":25,"name":{"27":{},"38":{}},"parent":{}}],["id",{"_index":52,"name":{"94":{}},"parent":{}}],["inspectoptionsstylized",{"_index":66,"name":{"111":{}},"parent":{"112":{},"113":{}}}],["isadvertising",{"_index":61,"name":{"103":{}},"parent":{}}],["isremote",{"_index":10,"name":{"12":{},"34":{},"43":{},"51":{},"61":{},"76":{}},"parent":{}}],["isscanning",{"_index":57,"name":{"99":{}},"parent":{}}],["latency",{"_index":75,"name":{"123":{}},"parent":{}}],["manufacturerdata",{"_index":77,"name":{"133":{}},"parent":{}}],["maxinterval",{"_index":74,"name":{"122":{}},"parent":{}}],["mininterval",{"_index":73,"name":{"121":{}},"parent":{}}],["modblue",{"_index":51,"name":{"93":{},"114":{}},"parent":{"115":{},"116":{},"117":{}}}],["mtu",{"_index":32,"name":{"45":{},"57":{},"65":{},"120":{}},"parent":{}}],["name",{"_index":53,"name":{"95":{},"132":{}},"parent":{}}],["notification",{"_index":5,"name":{"6":{}},"parent":{}}],["notify",{"_index":20,"name":{"22":{}},"parent":{}}],["peripheral",{"_index":38,"name":{"60":{},"70":{},"125":{}},"parent":{"126":{},"127":{},"128":{},"129":{},"130":{},"131":{},"132":{},"133":{},"134":{},"135":{},"136":{},"137":{},"138":{},"139":{}}}],["peripheralstate",{"_index":71,"name":{"118":{}},"parent":{}}],["prepare",{"_index":36,"name":{"53":{}},"parent":{}}],["properties",{"_index":11,"name":{"13":{}},"parent":{}}],["propertyflag",{"_index":12,"name":{"14":{}},"parent":{}}],["read",{"_index":17,"name":{"19":{},"35":{}},"parent":{}}],["readfunction",{"_index":0,"name":{"0":{}},"parent":{"1":{}}}],["rssi",{"_index":78,"name":{"134":{}},"parent":{}}],["scanfor",{"_index":56,"name":{"98":{}},"parent":{}}],["secure",{"_index":13,"name":{"15":{}},"parent":{}}],["secureflag",{"_index":14,"name":{"16":{}},"parent":{}}],["service",{"_index":8,"name":{"10":{}},"parent":{}}],["services",{"_index":31,"name":{"44":{},"56":{},"64":{}},"parent":{}}],["setupgatt",{"_index":64,"name":{"106":{}},"parent":{}}],["startadvertising",{"_index":62,"name":{"104":{}},"parent":{}}],["startscanning",{"_index":58,"name":{"100":{}},"parent":{}}],["state",{"_index":79,"name":{"135":{}},"parent":{}}],["stopadvertising",{"_index":63,"name":{"105":{}},"parent":{}}],["stopscanning",{"_index":59,"name":{"101":{}},"parent":{}}],["stylize",{"_index":68,"name":{"113":{}},"parent":{}}],["subscribe",{"_index":21,"name":{"23":{}},"parent":{}}],["supervisiontimeout",{"_index":76,"name":{"124":{}},"parent":{}}],["tojson",{"_index":27,"name":{"29":{},"40":{},"47":{},"55":{},"63":{},"81":{},"108":{},"139":{}},"parent":{}}],["tostring",{"_index":26,"name":{"28":{},"39":{},"46":{},"54":{},"66":{},"80":{},"107":{},"138":{}},"parent":{}}],["unsubscribe",{"_index":22,"name":{"24":{}},"parent":{}}],["uuid",{"_index":9,"name":{"11":{},"33":{},"75":{},"129":{}},"parent":{}}],["write",{"_index":18,"name":{"20":{},"36":{}},"parent":{}}],["writefunction",{"_index":2,"name":{"2":{}},"parent":{"3":{}}}]],"pipeline":[]}} \ No newline at end of file diff --git a/docs/assets/main.js b/docs/assets/main.js new file mode 100644 index 00000000..21898f46 --- /dev/null +++ b/docs/assets/main.js @@ -0,0 +1,52 @@ +(()=>{var Ce=Object.create;var J=Object.defineProperty;var Pe=Object.getOwnPropertyDescriptor;var Oe=Object.getOwnPropertyNames;var Re=Object.getPrototypeOf,_e=Object.prototype.hasOwnProperty;var Me=t=>J(t,"__esModule",{value:!0});var $e=typeof require!="undefined"?require:t=>{throw new Error('Dynamic require of "'+t+'" is not supported')};var Fe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var De=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Oe(e))!_e.call(t,n)&&n!=="default"&&J(t,n,{get:()=>e[n],enumerable:!(r=Pe(e,n))||r.enumerable});return t},Ae=t=>De(Me(J(t!=null?Ce(Re(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var de=Fe((ue,he)=>{(function(){var t=function(e){var r=new t.Builder;return r.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),r.searchPipeline.add(t.stemmer),e.call(r,r),r.build()};t.version="2.3.9";t.utils={},t.utils.warn=function(e){return function(r){e.console&&console.warn&&console.warn(r)}}(this),t.utils.asString=function(e){return e==null?"":e.toString()},t.utils.clone=function(e){if(e==null)return e;for(var r=Object.create(null),n=Object.keys(e),i=0;i0){var h=t.utils.clone(r)||{};h.position=[a,l],h.index=s.length,s.push(new t.Token(n.slice(a,o),h))}a=o+1}}return s},t.tokenizer.separator=/[\s\-]+/;t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions=Object.create(null),t.Pipeline.registerFunction=function(e,r){r in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+r),e.label=r,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var r=e.label&&e.label in this.registeredFunctions;r||t.utils.warn(`Function is not registered with pipeline. This may cause problems when serialising the index. +`,e)},t.Pipeline.load=function(e){var r=new t.Pipeline;return e.forEach(function(n){var i=t.Pipeline.registeredFunctions[n];if(i)r.add(i);else throw new Error("Cannot load unregistered function: "+n)}),r},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(r){t.Pipeline.warnIfFunctionNotRegistered(r),this._stack.push(r)},this)},t.Pipeline.prototype.after=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");n=n+1,this._stack.splice(n,0,r)},t.Pipeline.prototype.before=function(e,r){t.Pipeline.warnIfFunctionNotRegistered(r);var n=this._stack.indexOf(e);if(n==-1)throw new Error("Cannot find existingFn");this._stack.splice(n,0,r)},t.Pipeline.prototype.remove=function(e){var r=this._stack.indexOf(e);r!=-1&&this._stack.splice(r,1)},t.Pipeline.prototype.run=function(e){for(var r=this._stack.length,n=0;n1&&(oe&&(n=s),o!=e);)i=n-r,s=r+Math.floor(i/2),o=this.elements[s*2];if(o==e||o>e)return s*2;if(oc?h+=2:a==c&&(r+=n[l+1]*i[h+1],l+=2,h+=2);return r},t.Vector.prototype.similarity=function(e){return this.dot(e)/this.magnitude()||0},t.Vector.prototype.toArray=function(){for(var e=new Array(this.elements.length/2),r=1,n=0;r0){var o=s.str.charAt(0),a;o in s.node.edges?a=s.node.edges[o]:(a=new t.TokenSet,s.node.edges[o]=a),s.str.length==1&&(a.final=!0),i.push({node:a,editsRemaining:s.editsRemaining,str:s.str.slice(1)})}if(s.editsRemaining!=0){if("*"in s.node.edges)var c=s.node.edges["*"];else{var c=new t.TokenSet;s.node.edges["*"]=c}if(s.str.length==0&&(c.final=!0),i.push({node:c,editsRemaining:s.editsRemaining-1,str:s.str}),s.str.length>1&&i.push({node:s.node,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)}),s.str.length==1&&(s.node.final=!0),s.str.length>=1){if("*"in s.node.edges)var l=s.node.edges["*"];else{var l=new t.TokenSet;s.node.edges["*"]=l}s.str.length==1&&(l.final=!0),i.push({node:l,editsRemaining:s.editsRemaining-1,str:s.str.slice(1)})}if(s.str.length>1){var h=s.str.charAt(0),f=s.str.charAt(1),v;f in s.node.edges?v=s.node.edges[f]:(v=new t.TokenSet,s.node.edges[f]=v),s.str.length==1&&(v.final=!0),i.push({node:v,editsRemaining:s.editsRemaining-1,str:h+s.str.slice(2)})}}}return n},t.TokenSet.fromString=function(e){for(var r=new t.TokenSet,n=r,i=0,s=e.length;i=e;r--){var n=this.uncheckedNodes[r],i=n.child.toString();i in this.minimizedNodes?n.parent.edges[n.char]=this.minimizedNodes[i]:(n.child._str=i,this.minimizedNodes[i]=n.child),this.uncheckedNodes.pop()}};t.Index=function(e){this.invertedIndex=e.invertedIndex,this.fieldVectors=e.fieldVectors,this.tokenSet=e.tokenSet,this.fields=e.fields,this.pipeline=e.pipeline},t.Index.prototype.search=function(e){return this.query(function(r){var n=new t.QueryParser(e,r);n.parse()})},t.Index.prototype.query=function(e){for(var r=new t.Query(this.fields),n=Object.create(null),i=Object.create(null),s=Object.create(null),o=Object.create(null),a=Object.create(null),c=0;c1?this._b=1:this._b=e},t.Builder.prototype.k1=function(e){this._k1=e},t.Builder.prototype.add=function(e,r){var n=e[this._ref],i=Object.keys(this._fields);this._documents[n]=r||{},this.documentCount+=1;for(var s=0;s=this.length)return t.QueryLexer.EOS;var e=this.str.charAt(this.pos);return this.pos+=1,e},t.QueryLexer.prototype.width=function(){return this.pos-this.start},t.QueryLexer.prototype.ignore=function(){this.start==this.pos&&(this.pos+=1),this.start=this.pos},t.QueryLexer.prototype.backup=function(){this.pos-=1},t.QueryLexer.prototype.acceptDigitRun=function(){var e,r;do e=this.next(),r=e.charCodeAt(0);while(r>47&&r<58);e!=t.QueryLexer.EOS&&this.backup()},t.QueryLexer.prototype.more=function(){return this.pos1&&(e.backup(),e.emit(t.QueryLexer.TERM)),e.ignore(),e.more())return t.QueryLexer.lexText},t.QueryLexer.lexEditDistance=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.EDIT_DISTANCE),t.QueryLexer.lexText},t.QueryLexer.lexBoost=function(e){return e.ignore(),e.acceptDigitRun(),e.emit(t.QueryLexer.BOOST),t.QueryLexer.lexText},t.QueryLexer.lexEOS=function(e){e.width()>0&&e.emit(t.QueryLexer.TERM)},t.QueryLexer.termSeparator=t.tokenizer.separator,t.QueryLexer.lexText=function(e){for(;;){var r=e.next();if(r==t.QueryLexer.EOS)return t.QueryLexer.lexEOS;if(r.charCodeAt(0)==92){e.escapeCharacter();continue}if(r==":")return t.QueryLexer.lexField;if(r=="~")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexEditDistance;if(r=="^")return e.backup(),e.width()>0&&e.emit(t.QueryLexer.TERM),t.QueryLexer.lexBoost;if(r=="+"&&e.width()===1||r=="-"&&e.width()===1)return e.emit(t.QueryLexer.PRESENCE),t.QueryLexer.lexText;if(r.match(t.QueryLexer.termSeparator))return t.QueryLexer.lexTerm}},t.QueryParser=function(e,r){this.lexer=new t.QueryLexer(e),this.query=r,this.currentClause={},this.lexemeIdx=0},t.QueryParser.prototype.parse=function(){this.lexer.run(),this.lexemes=this.lexer.lexemes;for(var e=t.QueryParser.parseClause;e;)e=e(this);return this.query},t.QueryParser.prototype.peekLexeme=function(){return this.lexemes[this.lexemeIdx]},t.QueryParser.prototype.consumeLexeme=function(){var e=this.peekLexeme();return this.lexemeIdx+=1,e},t.QueryParser.prototype.nextClause=function(){var e=this.currentClause;this.query.clause(e),this.currentClause={}},t.QueryParser.parseClause=function(e){var r=e.peekLexeme();if(r!=null)switch(r.type){case t.QueryLexer.PRESENCE:return t.QueryParser.parsePresence;case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expected either a field or a term, found "+r.type;throw r.str.length>=1&&(n+=" with value '"+r.str+"'"),new t.QueryParseError(n,r.start,r.end)}},t.QueryParser.parsePresence=function(e){var r=e.consumeLexeme();if(r!=null){switch(r.str){case"-":e.currentClause.presence=t.Query.presence.PROHIBITED;break;case"+":e.currentClause.presence=t.Query.presence.REQUIRED;break;default:var n="unrecognised presence operator'"+r.str+"'";throw new t.QueryParseError(n,r.start,r.end)}var i=e.peekLexeme();if(i==null){var n="expecting term or field, found nothing";throw new t.QueryParseError(n,r.start,r.end)}switch(i.type){case t.QueryLexer.FIELD:return t.QueryParser.parseField;case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var n="expecting term or field, found '"+i.type+"'";throw new t.QueryParseError(n,i.start,i.end)}}},t.QueryParser.parseField=function(e){var r=e.consumeLexeme();if(r!=null){if(e.query.allFields.indexOf(r.str)==-1){var n=e.query.allFields.map(function(o){return"'"+o+"'"}).join(", "),i="unrecognised field '"+r.str+"', possible fields: "+n;throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.fields=[r.str];var s=e.peekLexeme();if(s==null){var i="expecting term, found nothing";throw new t.QueryParseError(i,r.start,r.end)}switch(s.type){case t.QueryLexer.TERM:return t.QueryParser.parseTerm;default:var i="expecting term, found '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseTerm=function(e){var r=e.consumeLexeme();if(r!=null){e.currentClause.term=r.str.toLowerCase(),r.str.indexOf("*")!=-1&&(e.currentClause.usePipeline=!1);var n=e.peekLexeme();if(n==null){e.nextClause();return}switch(n.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+n.type+"'";throw new t.QueryParseError(i,n.start,n.end)}}},t.QueryParser.parseEditDistance=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="edit distance must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.editDistance=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},t.QueryParser.parseBoost=function(e){var r=e.consumeLexeme();if(r!=null){var n=parseInt(r.str,10);if(isNaN(n)){var i="boost must be numeric";throw new t.QueryParseError(i,r.start,r.end)}e.currentClause.boost=n;var s=e.peekLexeme();if(s==null){e.nextClause();return}switch(s.type){case t.QueryLexer.TERM:return e.nextClause(),t.QueryParser.parseTerm;case t.QueryLexer.FIELD:return e.nextClause(),t.QueryParser.parseField;case t.QueryLexer.EDIT_DISTANCE:return t.QueryParser.parseEditDistance;case t.QueryLexer.BOOST:return t.QueryParser.parseBoost;case t.QueryLexer.PRESENCE:return e.nextClause(),t.QueryParser.parsePresence;default:var i="Unexpected lexeme type '"+s.type+"'";throw new t.QueryParseError(i,s.start,s.end)}}},function(e,r){typeof define=="function"&&define.amd?define(r):typeof ue=="object"?he.exports=r():e.lunr=r()}(this,function(){return t})})()});var le=[];function N(t,e){le.push({selector:e,constructor:t})}var X=class{constructor(){this.createComponents(document.body)}createComponents(e){le.forEach(r=>{e.querySelectorAll(r.selector).forEach(n=>{n.dataset.hasInstance||(new r.constructor({el:n}),n.dataset.hasInstance=String(!0))})})}};var Q=class{constructor(e){this.el=e.el}};var Z=class{constructor(){this.listeners={}}addEventListener(e,r){e in this.listeners||(this.listeners[e]=[]),this.listeners[e].push(r)}removeEventListener(e,r){if(!(e in this.listeners))return;let n=this.listeners[e];for(let i=0,s=n.length;i{let r=Date.now();return(...n)=>{r+e-Date.now()<0&&(t(...n),r=Date.now())}};var ee=class extends Z{constructor(){super();this.scrollTop=0;this.lastY=0;this.width=0;this.height=0;this.showToolbar=!0;this.toolbar=document.querySelector(".tsd-page-toolbar"),this.secondaryNav=document.querySelector(".tsd-navigation.secondary"),window.addEventListener("scroll",K(()=>this.onScroll(),10)),window.addEventListener("resize",K(()=>this.onResize(),10)),this.onResize(),this.onScroll()}triggerResize(){let e=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(e)}onResize(){this.width=window.innerWidth||0,this.height=window.innerHeight||0;let e=new CustomEvent("resize",{detail:{width:this.width,height:this.height}});this.dispatchEvent(e)}onScroll(){this.scrollTop=window.scrollY||0;let e=new CustomEvent("scroll",{detail:{scrollTop:this.scrollTop}});this.dispatchEvent(e),this.hideShowToolbar()}hideShowToolbar(){let e=this.showToolbar;this.showToolbar=this.lastY>=this.scrollTop||this.scrollTop<=0,e!==this.showToolbar&&(this.toolbar.classList.toggle("tsd-page-toolbar--hide"),this.secondaryNav.classList.toggle("tsd-navigation--toolbar-hide")),this.lastY=this.scrollTop}},I=ee;I.instance=new ee;var te=class extends Q{constructor(e){super(e);this.anchors=[];this.index=-1;I.instance.addEventListener("resize",()=>this.onResize()),I.instance.addEventListener("scroll",r=>this.onScroll(r)),this.createAnchors()}createAnchors(){let e=window.location.href;e.indexOf("#")!=-1&&(e=e.substr(0,e.indexOf("#"))),this.el.querySelectorAll("a").forEach(r=>{let n=r.href;if(n.indexOf("#")==-1||n.substr(0,e.length)!=e)return;let i=n.substr(n.indexOf("#")+1),s=document.querySelector("a.tsd-anchor[name="+i+"]"),o=r.parentNode;!s||!o||this.anchors.push({link:o,anchor:s,position:0})}),this.onResize()}onResize(){let e;for(let n=0,i=this.anchors.length;nn.position-i.position);let r=new CustomEvent("scroll",{detail:{scrollTop:I.instance.scrollTop}});this.onScroll(r)}onScroll(e){let r=e.detail.scrollTop+5,n=this.anchors,i=n.length-1,s=this.index;for(;s>-1&&n[s].position>r;)s-=1;for(;s-1&&this.anchors[this.index].link.classList.remove("focus"),this.index=s,this.index>-1&&this.anchors[this.index].link.classList.add("focus"))}};var ce=(t,e=100)=>{let r;return(...n)=>{clearTimeout(r),r=setTimeout(()=>t(n),e)}};var pe=Ae(de());function fe(){let t=document.getElementById("tsd-search");if(!t)return;let e=document.getElementById("search-script");t.classList.add("loading"),e&&(e.addEventListener("error",()=>{t.classList.remove("loading"),t.classList.add("failure")}),e.addEventListener("load",()=>{t.classList.remove("loading"),t.classList.add("ready")}),window.searchData&&t.classList.remove("loading"));let r=document.querySelector("#tsd-search input"),n=document.querySelector("#tsd-search .results");if(!r||!n)throw new Error("The input field or the result list wrapper was not found");let i=!1;n.addEventListener("mousedown",()=>i=!0),n.addEventListener("mouseup",()=>{i=!1,t.classList.remove("has-focus")}),r.addEventListener("focus",()=>t.classList.add("has-focus")),r.addEventListener("blur",()=>{i||(i=!1,t.classList.remove("has-focus"))});let s={base:t.dataset.base+"/"};Ve(t,n,r,s)}function Ve(t,e,r,n){r.addEventListener("input",ce(()=>{ze(t,e,r,n)},200));let i=!1;r.addEventListener("keydown",s=>{i=!0,s.key=="Enter"?Ne(e,r):s.key=="Escape"?r.blur():s.key=="ArrowUp"?me(e,-1):s.key==="ArrowDown"?me(e,1):i=!1}),r.addEventListener("keypress",s=>{i&&s.preventDefault()}),document.body.addEventListener("keydown",s=>{s.altKey||s.ctrlKey||s.metaKey||!r.matches(":focus")&&s.key==="/"&&(r.focus(),s.preventDefault())})}function He(t,e){t.index||window.searchData&&(e.classList.remove("loading"),e.classList.add("ready"),t.data=window.searchData,t.index=pe.Index.load(window.searchData.index))}function ze(t,e,r,n){if(He(n,t),!n.index||!n.data)return;e.textContent="";let i=r.value.trim(),s=n.index.search(`*${i}*`);for(let o=0,a=Math.min(10,s.length);o${ve(c.parent,i)}.${l}`);let h=document.createElement("li");h.classList.value=c.classes;let f=document.createElement("a");f.href=n.base+c.url,f.classList.add("tsd-kind-icon"),f.innerHTML=l,h.append(f),e.appendChild(h)}}function me(t,e){let r=t.querySelector(".current");if(!r)r=t.querySelector(e==1?"li:first-child":"li:last-child"),r&&r.classList.add("current");else{let n=r;if(e===1)do n=n.nextElementSibling;while(n instanceof HTMLElement&&n.offsetParent==null);else do n=n.previousElementSibling;while(n instanceof HTMLElement&&n.offsetParent==null);n&&(r.classList.remove("current"),n.classList.add("current"))}}function Ne(t,e){let r=t.querySelector(".current");if(r||(r=t.querySelector("li:first-child")),r){let n=r.querySelector("a");n&&(window.location.href=n.href),e.blur()}}function ve(t,e){if(e==="")return t;let r=t.toLocaleLowerCase(),n=e.toLocaleLowerCase(),i=[],s=0,o=r.indexOf(n);for(;o!=-1;)i.push(re(t.substring(s,o)),`${re(t.substring(o,o+n.length))}`),s=o+n.length,o=r.indexOf(n,s);return i.push(re(t.substring(s))),i.join("")}var je={"&":"&","<":"<",">":">","'":"'",'"':"""};function re(t){return t.replace(/[&<>"'"]/g,e=>je[e])}var ge=class{constructor(e,r){this.signature=e,this.description=r}addClass(e){return this.signature.classList.add(e),this.description.classList.add(e),this}removeClass(e){return this.signature.classList.remove(e),this.description.classList.remove(e),this}},ne=class extends Q{constructor(e){super(e);this.groups=[];this.index=-1;this.createGroups(),this.container&&(this.el.classList.add("active"),Array.from(this.el.children).forEach(r=>{r.addEventListener("touchstart",n=>this.onClick(n)),r.addEventListener("click",n=>this.onClick(n))}),this.container.classList.add("active"),this.setIndex(0))}setIndex(e){if(e<0&&(e=0),e>this.groups.length-1&&(e=this.groups.length-1),this.index==e)return;let r=this.groups[e];if(this.index>-1){let n=this.groups[this.index];n.removeClass("current").addClass("fade-out"),r.addClass("current"),r.addClass("fade-in"),I.instance.triggerResize(),setTimeout(()=>{n.removeClass("fade-out"),r.removeClass("fade-in")},300)}else r.addClass("current"),I.instance.triggerResize();this.index=e}createGroups(){let e=this.el.children;if(e.length<2)return;this.container=this.el.nextElementSibling;let r=this.container.children;this.groups=[];for(let n=0;n{r.signature===e.currentTarget&&this.setIndex(n)})}};var C="mousedown",ye="mousemove",_="mouseup",G={x:0,y:0},xe=!1,ie=!1,Be=!1,A=!1,Le=/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent);document.documentElement.classList.add(Le?"is-mobile":"not-mobile");Le&&"ontouchstart"in document.documentElement&&(Be=!0,C="touchstart",ye="touchmove",_="touchend");document.addEventListener(C,t=>{ie=!0,A=!1;let e=C=="touchstart"?t.targetTouches[0]:t;G.y=e.pageY||0,G.x=e.pageX||0});document.addEventListener(ye,t=>{if(!!ie&&!A){let e=C=="touchstart"?t.targetTouches[0]:t,r=G.x-(e.pageX||0),n=G.y-(e.pageY||0);A=Math.sqrt(r*r+n*n)>10}});document.addEventListener(_,()=>{ie=!1});document.addEventListener("click",t=>{xe&&(t.preventDefault(),t.stopImmediatePropagation(),xe=!1)});var se=class extends Q{constructor(e){super(e);this.className=this.el.dataset.toggle||"",this.el.addEventListener(_,r=>this.onPointerUp(r)),this.el.addEventListener("click",r=>r.preventDefault()),document.addEventListener(C,r=>this.onDocumentPointerDown(r)),document.addEventListener(_,r=>this.onDocumentPointerUp(r))}setActive(e){if(this.active==e)return;this.active=e,document.documentElement.classList.toggle("has-"+this.className,e),this.el.classList.toggle("active",e);let r=(this.active?"to-has-":"from-has-")+this.className;document.documentElement.classList.add(r),setTimeout(()=>document.documentElement.classList.remove(r),500)}onPointerUp(e){A||(this.setActive(!0),e.preventDefault())}onDocumentPointerDown(e){if(this.active){if(e.target.closest(".col-menu, .tsd-filter-group"))return;this.setActive(!1)}}onDocumentPointerUp(e){if(!A&&this.active&&e.target.closest(".col-menu")){let r=e.target.closest("a");if(r){let n=window.location.href;n.indexOf("#")!=-1&&(n=n.substr(0,n.indexOf("#"))),r.href.substr(0,n.length)==n&&setTimeout(()=>this.setActive(!1),250)}}}};var oe=class{constructor(e,r){this.key=e,this.value=r,this.defaultValue=r,this.initialize(),window.localStorage[this.key]&&this.setValue(this.fromLocalStorage(window.localStorage[this.key]))}initialize(){}setValue(e){if(this.value==e)return;let r=this.value;this.value=e,window.localStorage[this.key]=this.toLocalStorage(e),this.handleValueChange(r,e)}},ae=class extends oe{initialize(){let e=document.querySelector("#tsd-filter-"+this.key);!e||(this.checkbox=e,this.checkbox.addEventListener("change",()=>{this.setValue(this.checkbox.checked)}))}handleValueChange(e,r){!this.checkbox||(this.checkbox.checked=this.value,document.documentElement.classList.toggle("toggle-"+this.key,this.value!=this.defaultValue))}fromLocalStorage(e){return e=="true"}toLocalStorage(e){return e?"true":"false"}},Ee=class extends oe{initialize(){document.documentElement.classList.add("toggle-"+this.key+this.value);let e=document.querySelector("#tsd-filter-"+this.key);if(!e)return;this.select=e;let r=()=>{this.select.classList.add("active")},n=()=>{this.select.classList.remove("active")};this.select.addEventListener(C,r),this.select.addEventListener("mouseover",r),this.select.addEventListener("mouseleave",n),this.select.querySelectorAll("li").forEach(i=>{i.addEventListener(_,s=>{e.classList.remove("active"),this.setValue(s.target.dataset.value||"")})}),document.addEventListener(C,i=>{this.select.contains(i.target)||this.select.classList.remove("active")})}handleValueChange(e,r){this.select.querySelectorAll("li.selected").forEach(s=>{s.classList.remove("selected")});let n=this.select.querySelector('li[data-value="'+r+'"]'),i=this.select.querySelector(".tsd-select-label");n&&i&&(n.classList.add("selected"),i.textContent=n.textContent),document.documentElement.classList.remove("toggle-"+e),document.documentElement.classList.add("toggle-"+r)}fromLocalStorage(e){return e}toLocalStorage(e){return e}},Y=class extends Q{constructor(e){super(e);this.optionVisibility=new Ee("visibility","private"),this.optionInherited=new ae("inherited",!0),this.optionExternals=new ae("externals",!0)}static isSupported(){try{return typeof window.localStorage!="undefined"}catch(e){return!1}}};function be(t){let e=localStorage.getItem("tsd-theme")||"os";t.value=e,we(e),t.addEventListener("change",()=>{localStorage.setItem("tsd-theme",t.value),we(t.value)})}function we(t){switch(t){case"os":document.body.classList.remove("light","dark");break;case"light":document.body.classList.remove("dark"),document.body.classList.add("light");break;case"dark":document.body.classList.remove("light"),document.body.classList.add("dark");break}}fe();N(te,".menu-highlight");N(ne,".tsd-signatures");N(se,"a[data-toggle]");Y.isSupported()?N(Y,"#tsd-filter"):document.documentElement.classList.add("no-filter");var Te=document.getElementById("theme");Te&&be(Te);var qe=new X;Object.defineProperty(window,"app",{value:qe});})(); +/*! + * lunr.Builder + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.Index + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.Pipeline + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.Set + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.TokenSet + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.Vector + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.stemmer + * Copyright (C) 2020 Oliver Nightingale + * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt + */ +/*! + * lunr.stopWordFilter + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.tokenizer + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.trimmer + * Copyright (C) 2020 Oliver Nightingale + */ +/*! + * lunr.utils + * Copyright (C) 2020 Oliver Nightingale + */ +/** + * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.9 + * Copyright (C) 2020 Oliver Nightingale + * @license MIT + */ diff --git a/docs/assets/search.js b/docs/assets/search.js new file mode 100644 index 00000000..fba5106b --- /dev/null +++ b/docs/assets/search.js @@ -0,0 +1 @@ +window.searchData = {"kinds":{"32":"Variable","128":"Class","256":"Interface","512":"Constructor","1024":"Property","2048":"Method","65536":"Type literal","262144":"Accessor","4194304":"Type alias"},"rows":[{"id":0,"kind":4194304,"name":"ReadFunction","url":"modules.html#ReadFunction","classes":"tsd-kind-type-alias"},{"id":1,"kind":65536,"name":"__type","url":"modules.html#ReadFunction.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"ReadFunction"},{"id":2,"kind":4194304,"name":"WriteFunction","url":"modules.html#WriteFunction","classes":"tsd-kind-type-alias"},{"id":3,"kind":65536,"name":"__type","url":"modules.html#WriteFunction.__type","classes":"tsd-kind-type-literal tsd-parent-kind-type-alias","parent":"WriteFunction"},{"id":4,"kind":4194304,"name":"GattCharacteristicProperty","url":"modules.html#GattCharacteristicProperty","classes":"tsd-kind-type-alias"},{"id":5,"kind":256,"name":"GattCharacteristicEvents","url":"interfaces/GattCharacteristicEvents.html","classes":"tsd-kind-interface"},{"id":6,"kind":2048,"name":"notification","url":"interfaces/GattCharacteristicEvents.html#notification","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"GattCharacteristicEvents"},{"id":7,"kind":128,"name":"GattCharacteristic","url":"classes/GattCharacteristic.html","classes":"tsd-kind-class"},{"id":8,"kind":512,"name":"constructor","url":"classes/GattCharacteristic.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattCharacteristic"},{"id":9,"kind":1024,"name":"service","url":"classes/GattCharacteristic.html#service","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":10,"kind":1024,"name":"uuid","url":"classes/GattCharacteristic.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":11,"kind":1024,"name":"isRemote","url":"classes/GattCharacteristic.html#isRemote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":12,"kind":1024,"name":"properties","url":"classes/GattCharacteristic.html#properties","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":13,"kind":1024,"name":"propertyFlag","url":"classes/GattCharacteristic.html#propertyFlag","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":14,"kind":1024,"name":"secure","url":"classes/GattCharacteristic.html#secure","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":15,"kind":1024,"name":"secureFlag","url":"classes/GattCharacteristic.html#secureFlag","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":16,"kind":1024,"name":"descriptors","url":"classes/GattCharacteristic.html#descriptors","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":17,"kind":2048,"name":"discoverDescriptors","url":"classes/GattCharacteristic.html#discoverDescriptors","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":18,"kind":2048,"name":"read","url":"classes/GattCharacteristic.html#read","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":19,"kind":2048,"name":"write","url":"classes/GattCharacteristic.html#write","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":20,"kind":2048,"name":"broadcast","url":"classes/GattCharacteristic.html#broadcast","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":21,"kind":2048,"name":"notify","url":"classes/GattCharacteristic.html#notify","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":22,"kind":2048,"name":"subscribe","url":"classes/GattCharacteristic.html#subscribe","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":23,"kind":2048,"name":"unsubscribe","url":"classes/GattCharacteristic.html#unsubscribe","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":24,"kind":2048,"name":"addDescriptor","url":"classes/GattCharacteristic.html#addDescriptor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":25,"kind":2048,"name":"handleRead","url":"classes/GattCharacteristic.html#handleRead","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":26,"kind":2048,"name":"handleWrite","url":"classes/GattCharacteristic.html#handleWrite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":27,"kind":2048,"name":"toString","url":"classes/GattCharacteristic.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":28,"kind":2048,"name":"toJSON","url":"classes/GattCharacteristic.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattCharacteristic"},{"id":29,"kind":128,"name":"GattDescriptor","url":"classes/GattDescriptor.html","classes":"tsd-kind-class"},{"id":30,"kind":512,"name":"constructor","url":"classes/GattDescriptor.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"GattDescriptor"},{"id":31,"kind":1024,"name":"characteristic","url":"classes/GattDescriptor.html#characteristic","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":32,"kind":1024,"name":"uuid","url":"classes/GattDescriptor.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":33,"kind":1024,"name":"isRemote","url":"classes/GattDescriptor.html#isRemote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattDescriptor"},{"id":34,"kind":2048,"name":"read","url":"classes/GattDescriptor.html#read","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":35,"kind":2048,"name":"write","url":"classes/GattDescriptor.html#write","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":36,"kind":2048,"name":"handleRead","url":"classes/GattDescriptor.html#handleRead","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":37,"kind":2048,"name":"handleWrite","url":"classes/GattDescriptor.html#handleWrite","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":38,"kind":2048,"name":"toString","url":"classes/GattDescriptor.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":39,"kind":2048,"name":"toJSON","url":"classes/GattDescriptor.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattDescriptor"},{"id":40,"kind":128,"name":"Gatt","url":"classes/Gatt.html","classes":"tsd-kind-class"},{"id":41,"kind":512,"name":"constructor","url":"classes/Gatt.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Gatt"},{"id":42,"kind":262144,"name":"isRemote","url":"classes/Gatt.html#isRemote","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Gatt"},{"id":43,"kind":1024,"name":"services","url":"classes/Gatt.html#services","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Gatt"},{"id":44,"kind":262144,"name":"mtu","url":"classes/Gatt.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Gatt"},{"id":45,"kind":2048,"name":"toString","url":"classes/Gatt.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Gatt"},{"id":46,"kind":2048,"name":"toJSON","url":"classes/Gatt.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Gatt"},{"id":47,"kind":128,"name":"GattLocal","url":"classes/GattLocal.html","classes":"tsd-kind-class"},{"id":48,"kind":512,"name":"constructor","url":"classes/GattLocal.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":49,"kind":1024,"name":"adapter","url":"classes/GattLocal.html#adapter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattLocal"},{"id":50,"kind":262144,"name":"isRemote","url":"classes/GattLocal.html#isRemote","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":51,"kind":2048,"name":"addService","url":"classes/GattLocal.html#addService","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattLocal"},{"id":52,"kind":2048,"name":"prepare","url":"classes/GattLocal.html#prepare","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattLocal"},{"id":53,"kind":2048,"name":"toString","url":"classes/GattLocal.html#toString","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":54,"kind":2048,"name":"toJSON","url":"classes/GattLocal.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattLocal"},{"id":55,"kind":1024,"name":"services","url":"classes/GattLocal.html#services","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":56,"kind":262144,"name":"mtu","url":"classes/GattLocal.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattLocal"},{"id":57,"kind":128,"name":"GattRemote","url":"classes/GattRemote.html","classes":"tsd-kind-class"},{"id":58,"kind":512,"name":"constructor","url":"classes/GattRemote.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattRemote"},{"id":59,"kind":1024,"name":"peripheral","url":"classes/GattRemote.html#peripheral","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattRemote"},{"id":60,"kind":262144,"name":"isRemote","url":"classes/GattRemote.html#isRemote","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":61,"kind":2048,"name":"discoverServices","url":"classes/GattRemote.html#discoverServices","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattRemote"},{"id":62,"kind":2048,"name":"toJSON","url":"classes/GattRemote.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-overwrite","parent":"GattRemote"},{"id":63,"kind":1024,"name":"services","url":"classes/GattRemote.html#services","classes":"tsd-kind-property tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":64,"kind":262144,"name":"mtu","url":"classes/GattRemote.html#mtu","classes":"tsd-kind-get-signature tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":65,"kind":2048,"name":"toString","url":"classes/GattRemote.html#toString","classes":"tsd-kind-method tsd-parent-kind-class tsd-is-inherited","parent":"GattRemote"},{"id":66,"kind":128,"name":"GattError","url":"classes/GattError.html","classes":"tsd-kind-class"},{"id":67,"kind":65536,"name":"__type","url":"classes/GattError.html#__type","classes":"tsd-kind-type-literal tsd-parent-kind-class","parent":"GattError"},{"id":68,"kind":512,"name":"constructor","url":"classes/GattError.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"GattError"},{"id":69,"kind":1024,"name":"peripheral","url":"classes/GattError.html#peripheral","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattError"},{"id":70,"kind":1024,"name":"details","url":"classes/GattError.html#details","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattError"},{"id":71,"kind":128,"name":"GattService","url":"classes/GattService.html","classes":"tsd-kind-class"},{"id":72,"kind":512,"name":"constructor","url":"classes/GattService.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"GattService"},{"id":73,"kind":1024,"name":"gatt","url":"classes/GattService.html#gatt","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":74,"kind":1024,"name":"uuid","url":"classes/GattService.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":75,"kind":1024,"name":"isRemote","url":"classes/GattService.html#isRemote","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":76,"kind":1024,"name":"characteristics","url":"classes/GattService.html#characteristics","classes":"tsd-kind-property tsd-parent-kind-class","parent":"GattService"},{"id":77,"kind":2048,"name":"addCharacteristic","url":"classes/GattService.html#addCharacteristic","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":78,"kind":2048,"name":"discoverCharacteristics","url":"classes/GattService.html#discoverCharacteristics","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":79,"kind":2048,"name":"toString","url":"classes/GattService.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":80,"kind":2048,"name":"toJSON","url":"classes/GattService.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"GattService"},{"id":81,"kind":256,"name":"AdapterEvents","url":"interfaces/AdapterEvents.html","classes":"tsd-kind-interface"},{"id":82,"kind":2048,"name":"discover","url":"interfaces/AdapterEvents.html#discover","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":83,"kind":2048,"name":"connect","url":"interfaces/AdapterEvents.html#connect","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":84,"kind":2048,"name":"disconnect","url":"interfaces/AdapterEvents.html#disconnect","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":85,"kind":2048,"name":"error","url":"interfaces/AdapterEvents.html#error","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"AdapterEvents"},{"id":86,"kind":128,"name":"Adapter","url":"classes/Adapter.html","classes":"tsd-kind-class"},{"id":87,"kind":512,"name":"constructor","url":"classes/Adapter.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite","parent":"Adapter"},{"id":88,"kind":1024,"name":"modblue","url":"classes/Adapter.html#modblue","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Adapter"},{"id":89,"kind":1024,"name":"id","url":"classes/Adapter.html#id","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Adapter"},{"id":90,"kind":262144,"name":"name","url":"classes/Adapter.html#name","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":91,"kind":262144,"name":"addressType","url":"classes/Adapter.html#addressType","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":92,"kind":262144,"name":"address","url":"classes/Adapter.html#address","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Adapter"},{"id":93,"kind":2048,"name":"scanFor","url":"classes/Adapter.html#scanFor","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":94,"kind":2048,"name":"isScanning","url":"classes/Adapter.html#isScanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":95,"kind":2048,"name":"startScanning","url":"classes/Adapter.html#startScanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":96,"kind":2048,"name":"stopScanning","url":"classes/Adapter.html#stopScanning","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":97,"kind":2048,"name":"getScannedPeripherals","url":"classes/Adapter.html#getScannedPeripherals","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":98,"kind":2048,"name":"isAdvertising","url":"classes/Adapter.html#isAdvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":99,"kind":2048,"name":"startAdvertising","url":"classes/Adapter.html#startAdvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":100,"kind":2048,"name":"stopAdvertising","url":"classes/Adapter.html#stopAdvertising","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":101,"kind":2048,"name":"setupGatt","url":"classes/Adapter.html#setupGatt","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":102,"kind":2048,"name":"toString","url":"classes/Adapter.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":103,"kind":2048,"name":"toJSON","url":"classes/Adapter.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Adapter"},{"id":104,"kind":4194304,"name":"AddressType","url":"modules.html#AddressType","classes":"tsd-kind-type-alias"},{"id":105,"kind":32,"name":"CUSTOM","url":"modules.html#CUSTOM","classes":"tsd-kind-variable"},{"id":106,"kind":256,"name":"InspectOptionsStylized","url":"interfaces/InspectOptionsStylized.html","classes":"tsd-kind-interface"},{"id":107,"kind":1024,"name":"depth","url":"interfaces/InspectOptionsStylized.html#depth","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"InspectOptionsStylized"},{"id":108,"kind":2048,"name":"stylize","url":"interfaces/InspectOptionsStylized.html#stylize","classes":"tsd-kind-method tsd-parent-kind-interface","parent":"InspectOptionsStylized"},{"id":109,"kind":128,"name":"MODblue","url":"classes/MODblue.html","classes":"tsd-kind-class"},{"id":110,"kind":512,"name":"constructor","url":"classes/MODblue.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"MODblue"},{"id":111,"kind":2048,"name":"dispose","url":"classes/MODblue.html#dispose","classes":"tsd-kind-method tsd-parent-kind-class","parent":"MODblue"},{"id":112,"kind":2048,"name":"getAdapters","url":"classes/MODblue.html#getAdapters","classes":"tsd-kind-method tsd-parent-kind-class","parent":"MODblue"},{"id":113,"kind":4194304,"name":"PeripheralState","url":"modules.html#PeripheralState","classes":"tsd-kind-type-alias"},{"id":114,"kind":256,"name":"ConnectOptions","url":"interfaces/ConnectOptions.html","classes":"tsd-kind-interface"},{"id":115,"kind":1024,"name":"mtu","url":"interfaces/ConnectOptions.html#mtu","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":116,"kind":1024,"name":"minInterval","url":"interfaces/ConnectOptions.html#minInterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":117,"kind":1024,"name":"maxInterval","url":"interfaces/ConnectOptions.html#maxInterval","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":118,"kind":1024,"name":"latency","url":"interfaces/ConnectOptions.html#latency","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":119,"kind":1024,"name":"supervisionTimeout","url":"interfaces/ConnectOptions.html#supervisionTimeout","classes":"tsd-kind-property tsd-parent-kind-interface","parent":"ConnectOptions"},{"id":120,"kind":128,"name":"Peripheral","url":"classes/Peripheral.html","classes":"tsd-kind-class"},{"id":121,"kind":512,"name":"constructor","url":"classes/Peripheral.html#constructor","classes":"tsd-kind-constructor tsd-parent-kind-class","parent":"Peripheral"},{"id":122,"kind":1024,"name":"adapter","url":"classes/Peripheral.html#adapter","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":123,"kind":262144,"name":"gatt","url":"classes/Peripheral.html#gatt","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Peripheral"},{"id":124,"kind":1024,"name":"uuid","url":"classes/Peripheral.html#uuid","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":125,"kind":1024,"name":"addressType","url":"classes/Peripheral.html#addressType","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":126,"kind":1024,"name":"address","url":"classes/Peripheral.html#address","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":127,"kind":1024,"name":"name","url":"classes/Peripheral.html#name","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":128,"kind":1024,"name":"manufacturerData","url":"classes/Peripheral.html#manufacturerData","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":129,"kind":1024,"name":"rssi","url":"classes/Peripheral.html#rssi","classes":"tsd-kind-property tsd-parent-kind-class","parent":"Peripheral"},{"id":130,"kind":262144,"name":"state","url":"classes/Peripheral.html#state","classes":"tsd-kind-get-signature tsd-parent-kind-class","parent":"Peripheral"},{"id":131,"kind":2048,"name":"connect","url":"classes/Peripheral.html#connect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":132,"kind":2048,"name":"disconnect","url":"classes/Peripheral.html#disconnect","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":133,"kind":2048,"name":"toString","url":"classes/Peripheral.html#toString","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"},{"id":134,"kind":2048,"name":"toJSON","url":"classes/Peripheral.html#toJSON","classes":"tsd-kind-method tsd-parent-kind-class","parent":"Peripheral"}],"index":{"version":"2.3.9","fields":["name","parent"],"fieldVectors":[["name/0",[0,39.964]],["parent/0",[]],["name/1",[1,36.599]],["parent/1",[0,3.731]],["name/2",[2,39.964]],["parent/2",[]],["name/3",[1,36.599]],["parent/3",[2,3.731]],["name/4",[3,45.072]],["parent/4",[]],["name/5",[4,39.964]],["parent/5",[]],["name/6",[5,45.072]],["parent/6",[4,3.731]],["name/7",[6,17.991]],["parent/7",[]],["name/8",[7,25.613]],["parent/8",[6,1.68]],["name/9",[8,45.072]],["parent/9",[6,1.68]],["name/10",[9,34.086]],["parent/10",[6,1.68]],["name/11",[10,30.409]],["parent/11",[6,1.68]],["name/12",[11,45.072]],["parent/12",[6,1.68]],["name/13",[12,45.072]],["parent/13",[6,1.68]],["name/14",[13,45.072]],["parent/14",[6,1.68]],["name/15",[14,45.072]],["parent/15",[6,1.68]],["name/16",[15,45.072]],["parent/16",[6,1.68]],["name/17",[16,45.072]],["parent/17",[6,1.68]],["name/18",[17,39.964]],["parent/18",[6,1.68]],["name/19",[18,39.964]],["parent/19",[6,1.68]],["name/20",[19,45.072]],["parent/20",[6,1.68]],["name/21",[20,45.072]],["parent/21",[6,1.68]],["name/22",[21,45.072]],["parent/22",[6,1.68]],["name/23",[22,45.072]],["parent/23",[6,1.68]],["name/24",[23,45.072]],["parent/24",[6,1.68]],["name/25",[24,39.964]],["parent/25",[6,1.68]],["name/26",[25,39.964]],["parent/26",[6,1.68]],["name/27",[26,27.726]],["parent/27",[6,1.68]],["name/28",[27,27.726]],["parent/28",[6,1.68]],["name/29",[28,24.703]],["parent/29",[]],["name/30",[7,25.613]],["parent/30",[28,2.306]],["name/31",[29,45.072]],["parent/31",[28,2.306]],["name/32",[9,34.086]],["parent/32",[28,2.306]],["name/33",[10,30.409]],["parent/33",[28,2.306]],["name/34",[17,39.964]],["parent/34",[28,2.306]],["name/35",[18,39.964]],["parent/35",[28,2.306]],["name/36",[24,39.964]],["parent/36",[28,2.306]],["name/37",[25,39.964]],["parent/37",[28,2.306]],["name/38",[26,27.726]],["parent/38",[28,2.306]],["name/39",[27,27.726]],["parent/39",[28,2.306]],["name/40",[30,26.614]],["parent/40",[]],["name/41",[7,25.613]],["parent/41",[30,2.485]],["name/42",[10,30.409]],["parent/42",[30,2.485]],["name/43",[31,36.599]],["parent/43",[30,2.485]],["name/44",[32,34.086]],["parent/44",[30,2.485]],["name/45",[26,27.726]],["parent/45",[30,2.485]],["name/46",[27,27.726]],["parent/46",[30,2.485]],["name/47",[33,25.613]],["parent/47",[]],["name/48",[7,25.613]],["parent/48",[33,2.391]],["name/49",[34,18.922]],["parent/49",[33,2.391]],["name/50",[10,30.409]],["parent/50",[33,2.391]],["name/51",[35,45.072]],["parent/51",[33,2.391]],["name/52",[36,45.072]],["parent/52",[33,2.391]],["name/53",[26,27.726]],["parent/53",[33,2.391]],["name/54",[27,27.726]],["parent/54",[33,2.391]],["name/55",[31,36.599]],["parent/55",[33,2.391]],["name/56",[32,34.086]],["parent/56",[33,2.391]],["name/57",[37,26.614]],["parent/57",[]],["name/58",[7,25.613]],["parent/58",[37,2.485]],["name/59",[38,20.505]],["parent/59",[37,2.485]],["name/60",[10,30.409]],["parent/60",[37,2.485]],["name/61",[39,45.072]],["parent/61",[37,2.485]],["name/62",[27,27.726]],["parent/62",[37,2.485]],["name/63",[31,36.599]],["parent/63",[37,2.485]],["name/64",[32,34.086]],["parent/64",[37,2.485]],["name/65",[26,27.726]],["parent/65",[37,2.485]],["name/66",[40,32.079]],["parent/66",[]],["name/67",[1,36.599]],["parent/67",[40,2.995]],["name/68",[7,25.613]],["parent/68",[40,2.995]],["name/69",[38,20.505]],["parent/69",[40,2.995]],["name/70",[41,45.072]],["parent/70",[40,2.995]],["name/71",[42,25.613]],["parent/71",[]],["name/72",[7,25.613]],["parent/72",[42,2.391]],["name/73",[30,26.614]],["parent/73",[42,2.391]],["name/74",[9,34.086]],["parent/74",[42,2.391]],["name/75",[10,30.409]],["parent/75",[42,2.391]],["name/76",[43,45.072]],["parent/76",[42,2.391]],["name/77",[44,45.072]],["parent/77",[42,2.391]],["name/78",[45,45.072]],["parent/78",[42,2.391]],["name/79",[26,27.726]],["parent/79",[42,2.391]],["name/80",[27,27.726]],["parent/80",[42,2.391]],["name/81",[46,32.079]],["parent/81",[]],["name/82",[47,45.072]],["parent/82",[46,2.995]],["name/83",[48,39.964]],["parent/83",[46,2.995]],["name/84",[49,39.964]],["parent/84",[46,2.995]],["name/85",[50,45.072]],["parent/85",[46,2.995]],["name/86",[34,18.922]],["parent/86",[]],["name/87",[7,25.613]],["parent/87",[34,1.767]],["name/88",[51,32.079]],["parent/88",[34,1.767]],["name/89",[52,45.072]],["parent/89",[34,1.767]],["name/90",[53,39.964]],["parent/90",[34,1.767]],["name/91",[54,36.599]],["parent/91",[34,1.767]],["name/92",[55,39.964]],["parent/92",[34,1.767]],["name/93",[56,45.072]],["parent/93",[34,1.767]],["name/94",[57,45.072]],["parent/94",[34,1.767]],["name/95",[58,45.072]],["parent/95",[34,1.767]],["name/96",[59,45.072]],["parent/96",[34,1.767]],["name/97",[60,45.072]],["parent/97",[34,1.767]],["name/98",[61,45.072]],["parent/98",[34,1.767]],["name/99",[62,45.072]],["parent/99",[34,1.767]],["name/100",[63,45.072]],["parent/100",[34,1.767]],["name/101",[64,45.072]],["parent/101",[34,1.767]],["name/102",[26,27.726]],["parent/102",[34,1.767]],["name/103",[27,27.726]],["parent/103",[34,1.767]],["name/104",[54,36.599]],["parent/104",[]],["name/105",[65,45.072]],["parent/105",[]],["name/106",[66,36.599]],["parent/106",[]],["name/107",[67,45.072]],["parent/107",[66,3.417]],["name/108",[68,45.072]],["parent/108",[66,3.417]],["name/109",[51,32.079]],["parent/109",[]],["name/110",[7,25.613]],["parent/110",[51,2.995]],["name/111",[69,45.072]],["parent/111",[51,2.995]],["name/112",[70,45.072]],["parent/112",[51,2.995]],["name/113",[71,45.072]],["parent/113",[]],["name/114",[72,30.409]],["parent/114",[]],["name/115",[32,34.086]],["parent/115",[72,2.839]],["name/116",[73,45.072]],["parent/116",[72,2.839]],["name/117",[74,45.072]],["parent/117",[72,2.839]],["name/118",[75,45.072]],["parent/118",[72,2.839]],["name/119",[76,45.072]],["parent/119",[72,2.839]],["name/120",[38,20.505]],["parent/120",[]],["name/121",[7,25.613]],["parent/121",[38,1.914]],["name/122",[34,18.922]],["parent/122",[38,1.914]],["name/123",[30,26.614]],["parent/123",[38,1.914]],["name/124",[9,34.086]],["parent/124",[38,1.914]],["name/125",[54,36.599]],["parent/125",[38,1.914]],["name/126",[55,39.964]],["parent/126",[38,1.914]],["name/127",[53,39.964]],["parent/127",[38,1.914]],["name/128",[77,45.072]],["parent/128",[38,1.914]],["name/129",[78,45.072]],["parent/129",[38,1.914]],["name/130",[79,45.072]],["parent/130",[38,1.914]],["name/131",[48,39.964]],["parent/131",[38,1.914]],["name/132",[49,39.964]],["parent/132",[38,1.914]],["name/133",[26,27.726]],["parent/133",[38,1.914]],["name/134",[27,27.726]],["parent/134",[38,1.914]]],"invertedIndex":[["__type",{"_index":1,"name":{"1":{},"3":{},"67":{}},"parent":{}}],["adapter",{"_index":34,"name":{"49":{},"86":{},"122":{}},"parent":{"87":{},"88":{},"89":{},"90":{},"91":{},"92":{},"93":{},"94":{},"95":{},"96":{},"97":{},"98":{},"99":{},"100":{},"101":{},"102":{},"103":{}}}],["adapterevents",{"_index":46,"name":{"81":{}},"parent":{"82":{},"83":{},"84":{},"85":{}}}],["addcharacteristic",{"_index":44,"name":{"77":{}},"parent":{}}],["adddescriptor",{"_index":23,"name":{"24":{}},"parent":{}}],["address",{"_index":55,"name":{"92":{},"126":{}},"parent":{}}],["addresstype",{"_index":54,"name":{"91":{},"104":{},"125":{}},"parent":{}}],["addservice",{"_index":35,"name":{"51":{}},"parent":{}}],["broadcast",{"_index":19,"name":{"20":{}},"parent":{}}],["characteristic",{"_index":29,"name":{"31":{}},"parent":{}}],["characteristics",{"_index":43,"name":{"76":{}},"parent":{}}],["connect",{"_index":48,"name":{"83":{},"131":{}},"parent":{}}],["connectoptions",{"_index":72,"name":{"114":{}},"parent":{"115":{},"116":{},"117":{},"118":{},"119":{}}}],["constructor",{"_index":7,"name":{"8":{},"30":{},"41":{},"48":{},"58":{},"68":{},"72":{},"87":{},"110":{},"121":{}},"parent":{}}],["custom",{"_index":65,"name":{"105":{}},"parent":{}}],["depth",{"_index":67,"name":{"107":{}},"parent":{}}],["descriptors",{"_index":15,"name":{"16":{}},"parent":{}}],["details",{"_index":41,"name":{"70":{}},"parent":{}}],["disconnect",{"_index":49,"name":{"84":{},"132":{}},"parent":{}}],["discover",{"_index":47,"name":{"82":{}},"parent":{}}],["discovercharacteristics",{"_index":45,"name":{"78":{}},"parent":{}}],["discoverdescriptors",{"_index":16,"name":{"17":{}},"parent":{}}],["discoverservices",{"_index":39,"name":{"61":{}},"parent":{}}],["dispose",{"_index":69,"name":{"111":{}},"parent":{}}],["error",{"_index":50,"name":{"85":{}},"parent":{}}],["gatt",{"_index":30,"name":{"40":{},"73":{},"123":{}},"parent":{"41":{},"42":{},"43":{},"44":{},"45":{},"46":{}}}],["gattcharacteristic",{"_index":6,"name":{"7":{}},"parent":{"8":{},"9":{},"10":{},"11":{},"12":{},"13":{},"14":{},"15":{},"16":{},"17":{},"18":{},"19":{},"20":{},"21":{},"22":{},"23":{},"24":{},"25":{},"26":{},"27":{},"28":{}}}],["gattcharacteristicevents",{"_index":4,"name":{"5":{}},"parent":{"6":{}}}],["gattcharacteristicproperty",{"_index":3,"name":{"4":{}},"parent":{}}],["gattdescriptor",{"_index":28,"name":{"29":{}},"parent":{"30":{},"31":{},"32":{},"33":{},"34":{},"35":{},"36":{},"37":{},"38":{},"39":{}}}],["gatterror",{"_index":40,"name":{"66":{}},"parent":{"67":{},"68":{},"69":{},"70":{}}}],["gattlocal",{"_index":33,"name":{"47":{}},"parent":{"48":{},"49":{},"50":{},"51":{},"52":{},"53":{},"54":{},"55":{},"56":{}}}],["gattremote",{"_index":37,"name":{"57":{}},"parent":{"58":{},"59":{},"60":{},"61":{},"62":{},"63":{},"64":{},"65":{}}}],["gattservice",{"_index":42,"name":{"71":{}},"parent":{"72":{},"73":{},"74":{},"75":{},"76":{},"77":{},"78":{},"79":{},"80":{}}}],["getadapters",{"_index":70,"name":{"112":{}},"parent":{}}],["getscannedperipherals",{"_index":60,"name":{"97":{}},"parent":{}}],["handleread",{"_index":24,"name":{"25":{},"36":{}},"parent":{}}],["handlewrite",{"_index":25,"name":{"26":{},"37":{}},"parent":{}}],["id",{"_index":52,"name":{"89":{}},"parent":{}}],["inspectoptionsstylized",{"_index":66,"name":{"106":{}},"parent":{"107":{},"108":{}}}],["isadvertising",{"_index":61,"name":{"98":{}},"parent":{}}],["isremote",{"_index":10,"name":{"11":{},"33":{},"42":{},"50":{},"60":{},"75":{}},"parent":{}}],["isscanning",{"_index":57,"name":{"94":{}},"parent":{}}],["latency",{"_index":75,"name":{"118":{}},"parent":{}}],["manufacturerdata",{"_index":77,"name":{"128":{}},"parent":{}}],["maxinterval",{"_index":74,"name":{"117":{}},"parent":{}}],["mininterval",{"_index":73,"name":{"116":{}},"parent":{}}],["modblue",{"_index":51,"name":{"88":{},"109":{}},"parent":{"110":{},"111":{},"112":{}}}],["mtu",{"_index":32,"name":{"44":{},"56":{},"64":{},"115":{}},"parent":{}}],["name",{"_index":53,"name":{"90":{},"127":{}},"parent":{}}],["notification",{"_index":5,"name":{"6":{}},"parent":{}}],["notify",{"_index":20,"name":{"21":{}},"parent":{}}],["peripheral",{"_index":38,"name":{"59":{},"69":{},"120":{}},"parent":{"121":{},"122":{},"123":{},"124":{},"125":{},"126":{},"127":{},"128":{},"129":{},"130":{},"131":{},"132":{},"133":{},"134":{}}}],["peripheralstate",{"_index":71,"name":{"113":{}},"parent":{}}],["prepare",{"_index":36,"name":{"52":{}},"parent":{}}],["properties",{"_index":11,"name":{"12":{}},"parent":{}}],["propertyflag",{"_index":12,"name":{"13":{}},"parent":{}}],["read",{"_index":17,"name":{"18":{},"34":{}},"parent":{}}],["readfunction",{"_index":0,"name":{"0":{}},"parent":{"1":{}}}],["rssi",{"_index":78,"name":{"129":{}},"parent":{}}],["scanfor",{"_index":56,"name":{"93":{}},"parent":{}}],["secure",{"_index":13,"name":{"14":{}},"parent":{}}],["secureflag",{"_index":14,"name":{"15":{}},"parent":{}}],["service",{"_index":8,"name":{"9":{}},"parent":{}}],["services",{"_index":31,"name":{"43":{},"55":{},"63":{}},"parent":{}}],["setupgatt",{"_index":64,"name":{"101":{}},"parent":{}}],["startadvertising",{"_index":62,"name":{"99":{}},"parent":{}}],["startscanning",{"_index":58,"name":{"95":{}},"parent":{}}],["state",{"_index":79,"name":{"130":{}},"parent":{}}],["stopadvertising",{"_index":63,"name":{"100":{}},"parent":{}}],["stopscanning",{"_index":59,"name":{"96":{}},"parent":{}}],["stylize",{"_index":68,"name":{"108":{}},"parent":{}}],["subscribe",{"_index":21,"name":{"22":{}},"parent":{}}],["supervisiontimeout",{"_index":76,"name":{"119":{}},"parent":{}}],["tojson",{"_index":27,"name":{"28":{},"39":{},"46":{},"54":{},"62":{},"80":{},"103":{},"134":{}},"parent":{}}],["tostring",{"_index":26,"name":{"27":{},"38":{},"45":{},"53":{},"65":{},"79":{},"102":{},"133":{}},"parent":{}}],["unsubscribe",{"_index":22,"name":{"23":{}},"parent":{}}],["uuid",{"_index":9,"name":{"10":{},"32":{},"74":{},"124":{}},"parent":{}}],["write",{"_index":18,"name":{"19":{},"35":{}},"parent":{}}],["writefunction",{"_index":2,"name":{"2":{}},"parent":{"3":{}}}]],"pipeline":[]}} \ No newline at end of file diff --git a/docs/assets/style.css b/docs/assets/style.css new file mode 100644 index 00000000..ff488199 --- /dev/null +++ b/docs/assets/style.css @@ -0,0 +1,1384 @@ +@import url("./icons.css"); + +:root { + /* Light */ + --light-color-background: #fcfcfc; + --light-color-secondary-background: #fff; + --light-color-text: #222; + --light-color-text-aside: #707070; + --light-color-link: #4da6ff; + --light-color-menu-divider: #eee; + --light-color-menu-divider-focus: #000; + --light-color-menu-label: #707070; + --light-color-panel: var(--light-color-secondary-background); + --light-color-panel-divider: #eee; + --light-color-comment-tag: #707070; + --light-color-comment-tag-text: #fff; + --light-color-ts: #9600ff; + --light-color-ts-interface: #647f1b; + --light-color-ts-enum: #937210; + --light-color-ts-class: #0672de; + --light-color-ts-private: #707070; + --light-color-toolbar: #fff; + --light-color-toolbar-text: #333; + --light-icon-filter: invert(0); + --light-external-icon: url("data:image/svg+xml;utf8,"); + + /* Dark */ + --dark-color-background: #36393f; + --dark-color-secondary-background: #2f3136; + --dark-color-text: #ffffff; + --dark-color-text-aside: #e6e4e4; + --dark-color-link: #00aff4; + --dark-color-menu-divider: #eee; + --dark-color-menu-divider-focus: #000; + --dark-color-menu-label: #707070; + --dark-color-panel: var(--dark-color-secondary-background); + --dark-color-panel-divider: #818181; + --dark-color-comment-tag: #dcddde; + --dark-color-comment-tag-text: #2f3136; + --dark-color-ts: #c97dff; + --dark-color-ts-interface: #9cbe3c; + --dark-color-ts-enum: #d6ab29; + --dark-color-ts-class: #3695f3; + --dark-color-ts-private: #e2e2e2; + --dark-color-toolbar: #34373c; + --dark-color-toolbar-text: #ffffff; + --dark-icon-filter: invert(1); + --dark-external-icon: url("data:image/svg+xml;utf8,"); +} + +@media (prefers-color-scheme: light) { + :root { + --color-background: var(--light-color-background); + --color-secondary-background: var(--light-color-secondary-background); + --color-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + --color-menu-divider: var(--light-color-menu-divider); + --color-menu-divider-focus: var(--light-color-menu-divider-focus); + --color-menu-label: var(--light-color-menu-label); + --color-panel: var(--light-color-panel); + --color-panel-divider: var(--light-color-panel-divider); + --color-comment-tag: var(--light-color-comment-tag); + --color-comment-tag-text: var(--light-color-comment-tag-text); + --color-ts: var(--light-color-ts); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-class: var(--light-color-ts-class); + --color-ts-private: var(--light-color-ts-private); + --color-toolbar: var(--light-color-toolbar); + --color-toolbar-text: var(--light-color-toolbar-text); + --icon-filter: var(--light-icon-filter); + --external-icon: var(--light-external-icon); + } +} + +@media (prefers-color-scheme: dark) { + :root { + --color-background: var(--dark-color-background); + --color-secondary-background: var(--dark-color-secondary-background); + --color-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + --color-menu-divider: var(--dark-color-menu-divider); + --color-menu-divider-focus: var(--dark-color-menu-divider-focus); + --color-menu-label: var(--dark-color-menu-label); + --color-panel: var(--dark-color-panel); + --color-panel-divider: var(--dark-color-panel-divider); + --color-comment-tag: var(--dark-color-comment-tag); + --color-comment-tag-text: var(--dark-color-comment-tag-text); + --color-ts: var(--dark-color-ts); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-private: var(--dark-color-ts-private); + --color-toolbar: var(--dark-color-toolbar); + --color-toolbar-text: var(--dark-color-toolbar-text); + --icon-filter: var(--dark-icon-filter); + --external-icon: var(--dark-external-icon); + } +} + +body { + margin: 0; +} + +body.light { + --color-background: var(--light-color-background); + --color-secondary-background: var(--light-color-secondary-background); + --color-text: var(--light-color-text); + --color-text-aside: var(--light-color-text-aside); + --color-link: var(--light-color-link); + --color-menu-divider: var(--light-color-menu-divider); + --color-menu-divider-focus: var(--light-color-menu-divider-focus); + --color-menu-label: var(--light-color-menu-label); + --color-panel: var(--light-color-panel); + --color-panel-divider: var(--light-color-panel-divider); + --color-comment-tag: var(--light-color-comment-tag); + --color-comment-tag-text: var(--light-color-comment-tag-text); + --color-ts: var(--light-color-ts); + --color-ts-interface: var(--light-color-ts-interface); + --color-ts-enum: var(--light-color-ts-enum); + --color-ts-class: var(--light-color-ts-class); + --color-ts-private: var(--light-color-ts-private); + --color-toolbar: var(--light-color-toolbar); + --color-toolbar-text: var(--light-color-toolbar-text); + --icon-filter: var(--light-icon-filter); + --external-icon: var(--light-external-icon); +} + +body.dark { + --color-background: var(--dark-color-background); + --color-secondary-background: var(--dark-color-secondary-background); + --color-text: var(--dark-color-text); + --color-text-aside: var(--dark-color-text-aside); + --color-link: var(--dark-color-link); + --color-menu-divider: var(--dark-color-menu-divider); + --color-menu-divider-focus: var(--dark-color-menu-divider-focus); + --color-menu-label: var(--dark-color-menu-label); + --color-panel: var(--dark-color-panel); + --color-panel-divider: var(--dark-color-panel-divider); + --color-comment-tag: var(--dark-color-comment-tag); + --color-comment-tag-text: var(--dark-color-comment-tag-text); + --color-ts: var(--dark-color-ts); + --color-ts-interface: var(--dark-color-ts-interface); + --color-ts-enum: var(--dark-color-ts-enum); + --color-ts-class: var(--dark-color-ts-class); + --color-ts-private: var(--dark-color-ts-private); + --color-toolbar: var(--dark-color-toolbar); + --color-toolbar-text: var(--dark-color-toolbar-text); + --icon-filter: var(--dark-icon-filter); + --external-icon: var(--dark-external-icon); +} + +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; +} + +pre { + white-space: pre; + white-space: pre-wrap; + word-wrap: break-word; +} + +dl, +menu, +ol, +ul { + margin: 1em 0; +} + +dd { + margin: 0 0 0 40px; +} + +.container { + max-width: 1200px; + margin: 0 auto; + padding: 0 40px; +} +@media (max-width: 640px) { + .container { + padding: 0 20px; + } +} + +.container-main { + padding-bottom: 200px; +} + +.row { + display: flex; + position: relative; + margin: 0 -10px; +} +.row:after { + visibility: hidden; + display: block; + content: ""; + clear: both; + height: 0; +} + +.col-4, +.col-8 { + box-sizing: border-box; + float: left; + padding: 0 10px; +} + +.col-4 { + width: 33.3333333333%; +} +.col-8 { + width: 66.6666666667%; +} + +ul.tsd-descriptions > li > :first-child, +.tsd-panel > :first-child, +.col-8 > :first-child, +.col-4 > :first-child, +ul.tsd-descriptions > li > :first-child > :first-child, +.tsd-panel > :first-child > :first-child, +.col-8 > :first-child > :first-child, +.col-4 > :first-child > :first-child, +ul.tsd-descriptions > li > :first-child > :first-child > :first-child, +.tsd-panel > :first-child > :first-child > :first-child, +.col-8 > :first-child > :first-child > :first-child, +.col-4 > :first-child > :first-child > :first-child { + margin-top: 0; +} +ul.tsd-descriptions > li > :last-child, +.tsd-panel > :last-child, +.col-8 > :last-child, +.col-4 > :last-child, +ul.tsd-descriptions > li > :last-child > :last-child, +.tsd-panel > :last-child > :last-child, +.col-8 > :last-child > :last-child, +.col-4 > :last-child > :last-child, +ul.tsd-descriptions > li > :last-child > :last-child > :last-child, +.tsd-panel > :last-child > :last-child > :last-child, +.col-8 > :last-child > :last-child > :last-child, +.col-4 > :last-child > :last-child > :last-child { + margin-bottom: 0; +} + +@keyframes fade-in { + from { + opacity: 0; + } + to { + opacity: 1; + } +} +@keyframes fade-out { + from { + opacity: 1; + visibility: visible; + } + to { + opacity: 0; + } +} +@keyframes fade-in-delayed { + 0% { + opacity: 0; + } + 33% { + opacity: 0; + } + 100% { + opacity: 1; + } +} +@keyframes fade-out-delayed { + 0% { + opacity: 1; + visibility: visible; + } + 66% { + opacity: 0; + } + 100% { + opacity: 0; + } +} +@keyframes shift-to-left { + from { + transform: translate(0, 0); + } + to { + transform: translate(-25%, 0); + } +} +@keyframes unshift-to-left { + from { + transform: translate(-25%, 0); + } + to { + transform: translate(0, 0); + } +} +@keyframes pop-in-from-right { + from { + transform: translate(100%, 0); + } + to { + transform: translate(0, 0); + } +} +@keyframes pop-out-to-right { + from { + transform: translate(0, 0); + visibility: visible; + } + to { + transform: translate(100%, 0); + } +} +body { + background: var(--color-background); + font-family: "Segoe UI", sans-serif; + font-size: 16px; + color: var(--color-text); +} + +a { + color: var(--color-link); + text-decoration: none; +} +a:hover { + text-decoration: underline; +} +a.external[target="_blank"] { + background-image: var(--external-icon); + background-position: top 3px right; + background-repeat: no-repeat; + padding-right: 13px; +} + +code, +pre { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + padding: 0.2em; + margin: 0; + font-size: 14px; +} + +pre { + padding: 10px; +} +pre code { + padding: 0; + font-size: 100%; +} + +blockquote { + margin: 1em 0; + padding-left: 1em; + border-left: 4px solid gray; +} + +.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 .col-content { + width: 72%; + } + html .col-menu { + width: 28%; + } + html .tsd-navigation { + padding-left: 10px; + } +} +@media (max-width: 900px) { + html .col-content { + float: none; + width: 100%; + } + html .col-menu { + position: fixed !important; + overflow: auto; + -webkit-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: var(--color-panel); + transform: translate(100%, 0); + } + html .col-menu > *:last-child { + padding-bottom: 20px; + } + html .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; + } + + .to-has-menu .overlay { + animation: fade-in 0.4s; + } + + .to-has-menu :is(header, footer, .col-content) { + animation: shift-to-left 0.4s; + } + + .to-has-menu .col-menu { + animation: pop-in-from-right 0.4s; + } + + .from-has-menu .overlay { + animation: fade-out 0.4s; + } + + .from-has-menu :is(header, footer, .col-content) { + animation: unshift-to-left 0.4s; + } + + .from-has-menu .col-menu { + animation: pop-out-to-right 0.4s; + } + + .has-menu body { + overflow: hidden; + } + .has-menu .overlay { + visibility: visible; + } + .has-menu :is(header, footer, .col-content) { + transform: translate(-25%, 0); + } + .has-menu .col-menu { + visibility: visible; + transform: translate(0, 0); + display: grid; + grid-template-rows: auto 1fr; + max-height: 100vh; + } + .has-menu .tsd-navigation { + max-height: 100%; + } +} + +.tsd-page-title { + padding: 70px 0 20px 0; + margin: 0 0 40px 0; + background: var(--color-panel); + box-shadow: 0 0 5px rgba(0, 0, 0, 0.35); +} +.tsd-page-title h1 { + margin: 0; +} + +.tsd-breadcrumb { + margin: 0; + padding: 0; + color: var(--color-text-aside); +} +.tsd-breadcrumb a { + color: var(--color-text-aside); + text-decoration: none; +} +.tsd-breadcrumb a:hover { + text-decoration: underline; +} +.tsd-breadcrumb li { + display: inline; +} +.tsd-breadcrumb li:after { + content: " / "; +} + +dl.tsd-comment-tags { + overflow: hidden; +} +dl.tsd-comment-tags dt { + float: left; + padding: 1px 5px; + margin: 0 10px 0 0; + border-radius: 4px; + border: 1px solid var(--color-comment-tag); + color: var(--color-comment-tag); + font-size: 0.8em; + font-weight: normal; +} +dl.tsd-comment-tags dd { + margin: 0 0 10px 0; +} +dl.tsd-comment-tags dd:before, +dl.tsd-comment-tags dd:after { + display: table; + content: " "; +} +dl.tsd-comment-tags dd pre, +dl.tsd-comment-tags dd:after { + clear: both; +} +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-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: var(--color-panel); + visibility: hidden; + 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 { + animation: fade-in 0.2s; + } + .from-has-options #tsd-filter .tsd-filter-group { + animation: fade-out 0.2s; + } + #tsd-filter label, + #tsd-filter .tsd-select { + display: block; + padding-right: 20px; + } +} + +footer { + border-top: 1px solid var(--color-panel-divider); + background-color: var(--color-panel); +} +footer.with-border-bottom { + border-bottom: 1px solid var(--color-panel-divider); +} +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 var(--color-panel-divider); +} +.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-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: var(--color-ts); +} +.tsd-index-panel .tsd-parent-kind-interface a { + color: var(--color-ts-interface); +} +.tsd-index-panel .tsd-parent-kind-enum a { + color: var(--color-ts-enum); +} +.tsd-index-panel .tsd-parent-kind-class a { + color: var(--color-ts-class); +} +.tsd-index-panel .tsd-kind-module a { + color: var(--color-ts); +} +.tsd-index-panel .tsd-kind-interface a { + color: var(--color-ts-interface); +} +.tsd-index-panel .tsd-kind-enum a { + color: var(--color-ts-enum); +} +.tsd-index-panel .tsd-kind-class a { + color: var(--color-ts-class); +} +.tsd-index-panel .tsd-is-private a { + color: var(--color-ts-private); +} + +.tsd-flag { + display: inline-block; + padding: 1px 5px; + border-radius: 4px; + color: var(--color-comment-tag-text); + background-color: var(--color-comment-tag); + 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-member [data-tsd-kind] { + color: var(--color-ts); +} +.tsd-member [data-tsd-kind="Interface"] { + color: var(--color-ts-interface); +} +.tsd-member [data-tsd-kind="Enum"] { + color: var(--color-ts-enum); +} +.tsd-member [data-tsd-kind="Class"] { + color: var(--color-ts-class); +} +.tsd-member [data-tsd-kind="Private"] { + color: var(--color-ts-private); +} + +.tsd-navigation { + margin: 0 0 0 40px; +} +.tsd-navigation a { + display: block; + padding-top: 2px; + padding-bottom: 2px; + border-left: 2px solid transparent; + color: var(--color-text); + text-decoration: none; + 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 var(--color-panel-divider); +} +.tsd-navigation.primary li { + border-top: 1px solid var(--color-panel-divider); +} +.tsd-navigation.primary li.current > a { + font-weight: bold; +} +.tsd-navigation.primary li.label span { + display: block; + padding: 20px 0 6px 5px; + color: var(--color-menu-label); +} +.tsd-navigation.primary li.globals + li > span, +.tsd-navigation.primary li.globals + li > a { + padding-top: 20px; +} + +.tsd-navigation.secondary { + max-height: calc(100vh - 1rem - 40px); + overflow: auto; + position: sticky; + top: calc(0.5rem + 40px); + transition: 0.3s; +} +.tsd-navigation.secondary.tsd-navigation--toolbar-hide { + max-height: calc(100vh - 1rem); + top: 0.5rem; +} +.tsd-navigation.secondary ul { + 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: var(--color-panel-divider); +} +.tsd-navigation.secondary li.focus > a, +.tsd-navigation.secondary ul.current li.focus > a { + border-left-color: var(--color-menu-divider-focus); +} +.tsd-navigation.secondary li.current { + margin-top: 20px; + margin-bottom: 20px; + border-left-color: var(--color-panel-divider); +} +.tsd-navigation.secondary li.current > a { + font-weight: bold; +} + +@media (min-width: 901px) { + .menu-sticky-wrap { + position: static; + } +} + +.tsd-panel { + margin: 20px 0; + padding: 20px; + background-color: var(--color-panel); + 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 var(--color-panel-divider); +} +.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; + border-collapse: collapse; +} +.tsd-panel table th { + font-weight: bold; +} +.tsd-panel table th, +.tsd-panel table td { + padding: 6px 13px; + border: 1px solid var(--color-panel-divider); +} +.tsd-panel table tr { + background: var(--color-background); +} +.tsd-panel table tr:nth-child(even) { + background: var(--color-secondary-background); +} + +.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 { + 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: var(--color-text); +} +#tsd-search .field label { + position: absolute; + overflow: hidden; + right: -40px; +} +#tsd-search .field input, +#tsd-search .title { + 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: var(--color-background); +} +#tsd-search .results li:nth-child(even) { + background-color: var(--color-panel); +} +#tsd-search .results li.state { + display: none; +} +#tsd-search .results li.current, +#tsd-search .results li:hover { + background-color: var(--color-panel-divider); +} +#tsd-search .results a { + display: block; +} +#tsd-search .results a:before { + top: 10px; +} +#tsd-search .results span.parent { + color: var(--color-text-aside); + font-weight: normal; +} +#tsd-search.has-focus { + background-color: var(--color-panel-divider); +} +#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 var(--color-panel-divider); + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; + font-size: 14px; + overflow-x: auto; +} +.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: var(--color-text-aside); + font-weight: normal; +} + +.tsd-signature-type { + font-style: italic; + font-weight: normal; +} + +.tsd-signatures { + padding: 0; + margin: 0 0 1em 0; + border: 1px solid var(--color-panel-divider); +} +.tsd-signatures .tsd-signature { + margin: 0; + border-width: 1px 0 0 0; + transition: background-color 0.1s; +} +.tsd-signatures .tsd-signature:first-child { + border-top-width: 0; +} +.tsd-signatures .tsd-signature.current { + background-color: var(--color-panel-divider); +} +.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; + 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 { + animation: fade-in-delayed 0.3s; +} +ul.tsd-descriptions.active > .tsd-description.fade-out { + 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-signature, +ul.tsd-type-parameters > li.tsd-parameter-signature { + 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: var(--color-text-aside); + margin: 0 0 1em 0; +} +.tsd-sources a { + color: var(--color-text-aside); + text-decoration: underline; +} +.tsd-sources ul, +.tsd-sources p { + margin: 0 !important; +} +.tsd-sources ul { + list-style: none; + padding: 0; +} + +.tsd-page-toolbar { + position: fixed; + z-index: 1; + top: 0; + left: 0; + width: 100%; + height: 40px; + color: var(--color-toolbar-text); + background: var(--color-toolbar); + border-bottom: 1px solid var(--color-panel-divider); + transition: transform 0.3s linear; +} +.tsd-page-toolbar a { + color: var(--color-toolbar-text); + 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-page-toolbar--hide { + transform: translateY(-100%); +} + +.tsd-select .tsd-select-list li:before, +.tsd-select .tsd-select-label:before, +.tsd-widget:before { + content: ""; + display: inline-block; + width: 40px; + height: 40px; + margin: 0 -8px 0 0; + background-image: url(./widgets.png); + background-repeat: no-repeat; + text-indent: -1024px; + vertical-align: bottom; + filter: var(--icon-filter); +} +@media (-webkit-min-device-pixel-ratio: 1.5), (min-resolution: 144dpi) { + .tsd-select .tsd-select-list li:before, + .tsd-select .tsd-select-label:before, + .tsd-widget:before { + background-image: url(./widgets@2x.png); + background-size: 320px 40px; + } +} + +.tsd-widget { + display: inline-block; + overflow: hidden; + opacity: 0.8; + height: 40px; + transition: opacity 0.1s, background-color 0.2s; + vertical-align: bottom; + cursor: pointer; +} +.tsd-widget:hover { + opacity: 0.9; +} +.tsd-widget.active { + opacity: 1; + background-color: var(--color-panel-divider); +} +.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; + transition: opacity 0.1s, background-color 0.2s; + vertical-align: bottom; + cursor: pointer; +} +.tsd-select .tsd-select-label { + opacity: 0.6; + 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; + 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); + transition: visibility 0s 0.2s, opacity 0.2s; +} +.tsd-select .tsd-select-list li { + padding: 0 20px 0 0; + background-color: var(--color-background); +} +.tsd-select .tsd-select-list li:before { + background-position: 40px 0; +} +.tsd-select .tsd-select-list li:nth-child(even) { + background-color: var(--color-panel); +} +.tsd-select .tsd-select-list li:hover { + background-color: var(--color-panel-divider); +} +.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%; +} diff --git a/docs/assets/images/widgets.png b/docs/assets/widgets.png similarity index 100% rename from docs/assets/images/widgets.png rename to docs/assets/widgets.png diff --git a/docs/assets/images/widgets@2x.png b/docs/assets/widgets@2x.png similarity index 100% rename from docs/assets/images/widgets@2x.png rename to docs/assets/widgets@2x.png diff --git a/docs/classes/Adapter.html b/docs/classes/Adapter.html new file mode 100644 index 00000000..b8e0ef48 --- /dev/null +++ b/docs/classes/Adapter.html @@ -0,0 +1,47 @@ +Adapter | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

Index

Constructors

constructor

  • new Adapter(modblue: MODblue, id: string, name: string, address?: string): Adapter

Properties

Readonly id

id: string
+

The unique identifier of this adapter.

+

Readonly modblue

modblue: MODblue
+

The instance of MODblue that this adapter was found by.

+

Static defaultMaxListeners

defaultMaxListeners: number

Accessors

address

  • get address(): string
  • +

    The MAC address of this adapter. All lowercase, with colon separator between bytes, e.g. 11:22:33:aa:bb:cc

    +

    Returns string

addressType

  • get addressType(): string

name

  • get name(): string

Methods

addListener

  • Type parameters

    Parameters

    Returns Adapter

emit

  • emit<U>(event: U, ...args: Parameters<AdapterEvents[U]>): boolean
  • Type parameters

    Parameters

    Returns boolean

eventNames

  • eventNames<U>(): U[]
  • Type parameters

    Returns U[]

getMaxListeners

  • getMaxListeners(): number
  • Returns number

Abstract getScannedPeripherals

Abstract isAdvertising

  • isAdvertising(): boolean
  • +

    Returns true if this adapter is currently advertising, false otherwise.

    +

    Returns boolean

Abstract isScanning

  • isScanning(): boolean

listenerCount

  • Parameters

    Returns number

listeners

  • Type parameters

    Parameters

    • type: U

    Returns AdapterEvents[U][]

off

  • Type parameters

    Parameters

    Returns Adapter

on

  • Type parameters

    Parameters

    Returns Adapter

once

  • Type parameters

    Parameters

    Returns Adapter

prependListener

  • Type parameters

    Parameters

    Returns Adapter

prependOnceListener

  • Type parameters

    Parameters

    Returns Adapter

rawListeners

  • Type parameters

    Parameters

    • type: U

    Returns AdapterEvents[U][]

removeAllListeners

  • Parameters

    Returns Adapter

removeListener

  • Type parameters

    Parameters

    Returns Adapter

scanFor

  • scanFor(filter: string | ((peripheral: Peripheral) => boolean), timeoutInSeconds?: number, serviceUUIDs?: string[]): Promise<Peripheral>
  • +

    Scans for a specific Peripheral using the specified matching function and returns the peripheral once found. +If the timeout is reached before finding a peripheral the returned promise will be rejected.

    +

    Parameters

    • filter: string | ((peripheral: Peripheral) => boolean)
      +

      Either a string that is used as name prefix, or a function that returns true if the specified peripheral is the peripheral we're looking for.

      +
    • timeoutInSeconds: number = 10
      +

      The timeout in seconds. The returned promise will reject once the timeout is reached.

      +
    • Optional serviceUUIDs: string[]
      +

      The UUIDs of the GattServices that must be contained in the advertisement data.

      +

    Returns Promise<Peripheral>

setMaxListeners

  • setMaxListeners(n: number): Adapter
  • Parameters

    • n: number

    Returns Adapter

Abstract setupGatt

  • setupGatt(maxMtu?: number): Promise<GattLocal>
  • +

    Setup the GATT server for this adapter to communicate with connecting remote peripherals.

    +

    Parameters

    • Optional maxMtu: number
      +

      The maximum MTU that will be negotiated in case the remote peripheral starts an MTU negotation.

      +

    Returns Promise<GattLocal>

Abstract startAdvertising

  • startAdvertising(deviceName: string, serviceUUIDs?: string[]): Promise<void>
  • +

    Start advertising on this adapter.

    +

    Parameters

    • deviceName: string
      +

      The device name that is included in the advertisement.

      +
    • Optional serviceUUIDs: string[]
      +

      The UUIDs of the GattServices that are included in the advertisement.

      +

    Returns Promise<void>

Abstract startScanning

  • startScanning(serviceUUIDs?: string[], allowDuplicates?: boolean): Promise<void>
  • +

    Start scanning for nearby Peripherals.

    +

    Parameters

    • Optional serviceUUIDs: string[]
      +

      The UUIDs of the GattService that an advertising +packet must advertise to emit a discover event.

      +
    • Optional allowDuplicates: boolean
      +

      True if advertisements for the same peripheral should emit multiple discover events.

      +

    Returns Promise<void>

Abstract stopAdvertising

  • stopAdvertising(): Promise<void>

Abstract stopScanning

  • stopScanning(): Promise<void>

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/Gatt.html b/docs/classes/Gatt.html new file mode 100644 index 00000000..283e7750 --- /dev/null +++ b/docs/classes/Gatt.html @@ -0,0 +1,11 @@ +Gatt | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

A local or remote GATT server.

+

Hierarchy

Index

Constructors

Properties

Accessors

Methods

Constructors

constructor

Properties

Readonly services

services: Map<string, GattService> = ...
+

The services that belong to this GATT server, mapped by UUID. +If this is a remote GATT use discoverServices to discover them.

+

Accessors

Abstract isRemote

  • get isRemote(): boolean

mtu

  • get mtu(): number
  • +

    Local: The maximum MTU that will be agreed upon during negotiation. +Remote: The MTU that was agreed upon during negotiation.

    +

    Returns number

Methods

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattCharacteristic.html b/docs/classes/GattCharacteristic.html new file mode 100644 index 00000000..2cb81a66 --- /dev/null +++ b/docs/classes/GattCharacteristic.html @@ -0,0 +1,58 @@ +GattCharacteristic | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Represents a GATT Characteristic.

+

Hierarchy

Index

Constructors

constructor

Properties

Readonly descriptors

descriptors: Map<string, GattDescriptor> = ...
+

The descriptors that belong to this characteristic, mapped by UUID. +If this is a remote characteristic use discoverDescriptors to discover them.

+

Readonly isRemote

isRemote: boolean
+

True if this is a remote characteristic, false otherwise.

+

Readonly properties

+

A list of all the properties that are enabled/supported for this characteristic.

+

Readonly propertyFlag

propertyFlag: number
+

The list of properties supported by this characteristic as a byte flag per the Bluetooth Core spec.

+

Readonly secure

+

A list of all the properties on this characteristic that are secured.

+

Readonly secureFlag

secureFlag: number
+

The list of all secured properties of this characteristic as a byte flag per the Bluetooth Core spec.

+

Readonly service

service: GattService
+

The GATT service that this characteristic belongs to.

+

Readonly uuid

uuid: string
+

The UUID of this characteristic, no dashes (-).

+

Static defaultMaxListeners

defaultMaxListeners: number

Methods

Abstract addDescriptor

addListener

  • Type parameters

    • U: "notification"

    Parameters

    Returns GattCharacteristic

Abstract broadcast

  • broadcast(broadcast: boolean): Promise<void>
  • +

    Remote only: Enable or disable broadcasts.

    +

    Parameters

    • broadcast: boolean
      +

      True to enable broadcasts, false otherwise.

      +

    Returns Promise<void>

Abstract discoverDescriptors

emit

  • Type parameters

    • U: "notification"

    Parameters

    Returns boolean

eventNames

  • eventNames<U>(): U[]
  • Type parameters

    • U: "notification"

    Returns U[]

getMaxListeners

  • getMaxListeners(): number
  • Returns number

handleRead

  • handleRead(offset: number): Promise<Buffer>
  • +

    Local only: Handles an incoming read request for this characteristic.

    +

    Parameters

    • offset: number
      +

      The offset to start at

      +

    Returns Promise<Buffer>

    The read data.

    +

handleWrite

  • handleWrite(offset: number, data: Buffer, withoutResponse: boolean): Promise<number>
  • +

    Local only: Handles an incoming write request for this characteristic.

    +

    Parameters

    • offset: number
      +

      The offset to start at.

      +
    • data: Buffer
      +

      The data to write.

      +
    • withoutResponse: boolean
      +

      True to not produce a response code, false otherwise.

      +

    Returns Promise<number>

    The result code.

    +

listenerCount

  • listenerCount(type: "notification"): number
  • Parameters

    • type: "notification"

    Returns number

listeners

  • Type parameters

    • U: "notification"

    Parameters

    • type: U

    Returns GattCharacteristicEvents[U][]

Abstract notify

  • notify(notify: boolean): Promise<void>
  • +

    Remote only: Enable or disable notifications.

    +

    Parameters

    • notify: boolean
      +

      True to enable notifies, false otherwise.

      +

    Returns Promise<void>

off

on

once

prependListener

  • Type parameters

    • U: "notification"

    Parameters

    Returns GattCharacteristic

prependOnceListener

  • Type parameters

    • U: "notification"

    Parameters

    Returns GattCharacteristic

rawListeners

  • Type parameters

    • U: "notification"

    Parameters

    • type: U

    Returns GattCharacteristicEvents[U][]

Abstract read

  • read(): Promise<Buffer>

removeAllListeners

  • Parameters

    • Optional event: "notification"

    Returns GattCharacteristic

removeListener

  • Type parameters

    • U: "notification"

    Parameters

    Returns GattCharacteristic

setMaxListeners

  • Parameters

    • n: number

    Returns GattCharacteristic

subscribe

  • subscribe(): Promise<void>

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

unsubscribe

  • unsubscribe(): Promise<void>

Abstract write

  • write(data: Buffer, withoutResponse: boolean): Promise<void>
  • +

    Remote only: Write the specified data to this characteristic.

    +

    Parameters

    • data: Buffer
      +

      The data to write.

      +
    • withoutResponse: boolean
      +

      Do not require a response from the remote GATT server for this write.

      +

    Returns Promise<void>

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattDescriptor.html b/docs/classes/GattDescriptor.html new file mode 100644 index 00000000..03fcbdcd --- /dev/null +++ b/docs/classes/GattDescriptor.html @@ -0,0 +1,15 @@ +GattDescriptor | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Represents a GATT Descriptor.

+

Hierarchy

  • GattDescriptor

Index

Constructors

constructor

Properties

Readonly characteristic

characteristic: GattCharacteristic
+

The GATT characteristic that this descriptor belongs to

+

Readonly isRemote

isRemote: boolean
+

True if this is a remote characteristic, false otherwise.

+

Readonly uuid

uuid: string
+

The UUID of this descriptor, no dashes (-).

+

Methods

handleRead

  • handleRead(offset: number): Promise<Buffer>

handleWrite

  • handleWrite(offset: number, data: Buffer): Promise<number>

Abstract read

  • read(): Promise<Buffer>

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Abstract write

  • write(data: Buffer): Promise<void>

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattError.html b/docs/classes/GattError.html new file mode 100644 index 00000000..e047bb56 --- /dev/null +++ b/docs/classes/GattError.html @@ -0,0 +1,5 @@ +GattError | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • Error
    • GattError

Index

Constructors

constructor

Properties

Optional details

details?: string

message

message: string

name

name: string

Readonly peripheral

peripheral: Peripheral

Optional stack

stack?: string

Static Optional prepareStackTrace

prepareStackTrace?: (err: Error, stackTraces: CallSite[]) => any

Type declaration

    • (err: Error, stackTraces: CallSite[]): any
    • +

      Optional override for formatting stack traces

      +

      Parameters

      • err: Error
      • stackTraces: CallSite[]

      Returns any

Static stackTraceLimit

stackTraceLimit: number

Methods

Static captureStackTrace

  • captureStackTrace(targetObject: object, constructorOpt?: Function): void
  • +

    Create .stack property on a target object

    +

    Parameters

    • targetObject: object
    • Optional constructorOpt: Function

    Returns void

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattLocal.html b/docs/classes/GattLocal.html new file mode 100644 index 00000000..7e9c018a --- /dev/null +++ b/docs/classes/GattLocal.html @@ -0,0 +1,17 @@ +GattLocal | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

A local GATT server.

+

Hierarchy

Index

Constructors

constructor

Properties

Readonly adapter

adapter: Adapter
+

The adapter that this GATT server belongs to.

+

Readonly services

services: Map<string, GattService> = ...
+

The services that belong to this GATT server, mapped by UUID. +If this is a remote GATT use discoverServices to discover them.

+

Accessors

isRemote

  • get isRemote(): boolean

mtu

  • get mtu(): number
  • +

    Local: The maximum MTU that will be agreed upon during negotiation. +Remote: The MTU that was agreed upon during negotiation.

    +

    Returns number

Methods

Abstract addService

Abstract prepare

  • prepare(deviceName: string): Promise<void>
  • +

    Prepares this GATT server for advertisement.

    +

    Parameters

    • deviceName: string
      +

      The name of this device as specified in the general service / characteristic.

      +

    Returns Promise<void>

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattRemote.html b/docs/classes/GattRemote.html new file mode 100644 index 00000000..6679d676 --- /dev/null +++ b/docs/classes/GattRemote.html @@ -0,0 +1,13 @@ +GattRemote | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

A remote GATT server.

+

Hierarchy

Index

Constructors

constructor

Properties

Readonly peripheral

peripheral: Peripheral
+

The peripheral that this GATT server belongs to.

+

Readonly services

services: Map<string, GattService> = ...
+

The services that belong to this GATT server, mapped by UUID. +If this is a remote GATT use discoverServices to discover them.

+

Accessors

isRemote

  • get isRemote(): boolean

mtu

  • get mtu(): number
  • +

    Local: The maximum MTU that will be agreed upon during negotiation. +Remote: The MTU that was agreed upon during negotiation.

    +

    Returns number

Methods

Abstract discoverServices

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/GattService.html b/docs/classes/GattService.html new file mode 100644 index 00000000..c5fc720f --- /dev/null +++ b/docs/classes/GattService.html @@ -0,0 +1,18 @@ +GattService | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Represents a GATT service.

+

Hierarchy

  • GattService

Index

Constructors

constructor

Properties

Readonly characteristics

characteristics: Map<string, GattCharacteristic> = ...
+

The characteristics that belong to this service, mapped by UUID. +If this is a remote service use discoverCharacteristics to discover them.

+

Readonly gatt

gatt: Gatt
+

The GATT server this service belongs to.

+

Readonly isRemote

isRemote: boolean
+

True if this is a remote service, false otherwise.

+

Readonly uuid

uuid: string
+

The UUID of this service, no dashes (-).

+

Methods

Abstract addCharacteristic

Abstract discoverCharacteristics

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/MODblue.html b/docs/classes/MODblue.html new file mode 100644 index 00000000..a4cee834 --- /dev/null +++ b/docs/classes/MODblue.html @@ -0,0 +1,8 @@ +MODblue | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Main class to interface with BLE. +Scan for adapters and use an adapter to perform specific actions.

+

Hierarchy

  • MODblue

Index

Constructors

constructor

Methods

Abstract dispose

  • dispose(): Promise<void>
  • +

    Dispose of these BLE bindings. Object should be considered unusable after this.

    +

    Returns Promise<void>

Abstract getAdapters

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/Peripheral.html b/docs/classes/Peripheral.html new file mode 100644 index 00000000..06c3f457 --- /dev/null +++ b/docs/classes/Peripheral.html @@ -0,0 +1,28 @@ +Peripheral | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Represents a peripheral that was found during scanning.

+

Hierarchy

  • Peripheral

Index

Constructors

constructor

  • new Peripheral(adapter: Adapter, uuid: string, name: string, addressType: AddressType, address: string, advertisement?: Buffer, rssi?: number): Peripheral

Properties

Readonly adapter

adapter: Adapter
+

The adapter that this peripheral was found by.

+

Readonly address

address: string
+

The MAC address of this peripheral. All lowercase, with colon separator between bytes, e.g. 11:22:33:aa:bb:cc

+

Readonly addressType

addressType: AddressType
+

The MAC address type of this peripheral.

+

manufacturerData

manufacturerData: Buffer
+

Any manufacturer advertisement data received from the peripheral. Includes the company identifier.

+

name

name: string
+

The advertised name of the peripheral.

+

rssi

rssi: number
+

The current RSSI signal strength of the peripheral.

+

Readonly uuid

uuid: string
+

The unique identifier for this peripheral.

+

Accessors

gatt

state

Methods

Abstract connect

  • +

    Connect to this peripheral and setup GATT. Throws an error when connecting fails. +Some connection settings may not be supported on certain platforms and wil be ignored.

    +

    Parameters

    Returns Promise<GattRemote>

Abstract disconnect

  • disconnect(): Promise<void>
  • +

    Disconnect from this peripheral. Does nothing if not connected. This method never throws an error. +When connecting to a peripheral you should always wrap your calls in try-catch-finally and call this method at the end.

    +

    try { peripheral.connect() } catch (err) { ... } finally { peripheral.disconnect(); }

    +

    Returns Promise<void>

toJSON

  • toJSON(): Record<string, unknown>

toString

  • toString(): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/classes/adapter.html b/docs/classes/adapter.html deleted file mode 100644 index ddc4afd9..00000000 --- a/docs/classes/adapter.html +++ /dev/null @@ -1,1232 +0,0 @@ - - - - - - Adapter | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class Adapter

-
-
-
-
-
-
-
-

Hierarchy

- -
-
-

Index

-
- -
-
-
-

Constructors

-
- -

constructor

-
    -
  • new Adapter(modblue: MODblue, id: string, name: string, address?: string): Adapter
  • -
-
    -
  • - -

    Parameters

    -
      -
    • -
      modblue: MODblue
      -
    • -
    • -
      id: string
      -
    • -
    • -
      name: string
      -
    • -
    • -
      Optional address: string
      -
    • -
    -

    Returns Adapter

    -
  • -
-
-
-
-

Properties

-
- -

Readonly id

-
id: string
- -
-
-

The unique identifier of this adapter.

-
-
-
-
- -

Readonly modblue

-
modblue: MODblue
- -
-
-

The instance of MODblue that this adapter was found by.

-
-
-
-
- -

Static defaultMaxListeners

-
defaultMaxListeners: number
- -
-
-
-

Accessors

-
- -

address

-
    -
  • get address(): string
  • -
-
    -
  • - -
    -
    -

    The MAC address of this adapter. All lowercase, with colon separator between bytes, e.g. 11:22:33:aa:bb:cc

    -
    -
    -

    Returns string

    -
  • -
-
-
- -

addressType

-
    -
  • get addressType(): string
  • -
- -
-
- -

name

-
    -
  • get name(): string
  • -
- -
-
-
-

Methods

-
- -

addListener

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

emit

-
    -
  • emit<U>(event: U, ...args: Parameters<AdapterEvents[U]>): boolean
  • -
-
    -
  • - -

    Type parameters

    - -

    Parameters

    -
      -
    • -
      event: U
      -
    • -
    • -
      Rest ...args: Parameters<AdapterEvents[U]>
      -
    • -
    -

    Returns boolean

    -
  • -
-
-
- -

eventNames

-
    -
  • eventNames<U>(): U[]
  • -
-
    -
  • - -

    Type parameters

    - -

    Returns U[]

    -
  • -
-
-
- -

getMaxListeners

-
    -
  • getMaxListeners(): number
  • -
-
    -
  • - -

    Returns number

    -
  • -
-
-
- -

Abstract getScannedPeripherals

-
    -
  • getScannedPeripherals(): Promise<Peripheral[]>
  • -
- -
-
- -

Abstract isAdvertising

-
    -
  • isAdvertising(): boolean
  • -
-
    -
  • - -
    -
    -

    Returns true if this adapter is currently advertising, false otherwise.

    -
    -
    -

    Returns boolean

    -
  • -
-
-
- -

Abstract isScanning

-
    -
  • isScanning(): boolean
  • -
-
    -
  • - -
    -
    -

    Returns true if this adapter is currently scanning, false otherwise.

    -
    -
    -

    Returns boolean

    -
  • -
-
-
- -

listenerCount

- -
    -
  • - -

    Parameters

    - -

    Returns number

    -
  • -
-
-
- -

listeners

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    -
      -
    • -
      type: U
      -
    • -
    -

    Returns AdapterEvents[U][]

    -
  • -
-
-
- -

off

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

on

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

once

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

prependListener

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

prependOnceListener

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

rawListeners

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    -
      -
    • -
      type: U
      -
    • -
    -

    Returns AdapterEvents[U][]

    -
  • -
-
-
- -

removeAllListeners

- -
    -
  • - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

removeListener

- -
    -
  • - -

    Type parameters

    - -

    Parameters

    - -

    Returns Adapter

    -
  • -
-
-
- -

scanFor

-
    -
  • scanFor(filter: string | ((peripheral: Peripheral) => boolean), timeoutInSeconds?: number, serviceUUIDs?: string[]): Promise<Peripheral>
  • -
-
    -
  • - -
    -
    -

    Scans for a specific Peripheral using the specified matching function and returns the peripheral once found. - If the timeout is reached before finding a peripheral the returned promise will be rejected.

    -
    -
    -

    Parameters

    -
      -
    • -
      filter: string | ((peripheral: Peripheral) => boolean)
      -
      -

      Either a string that is used as name prefix, or a function that returns true if the specified peripheral is the peripheral we're looking for.

      -
      -
    • -
    • -
      timeoutInSeconds: number = 10
      -
      -

      The timeout in seconds. The returned promise will reject once the timeout is reached.

      -
      -
    • -
    • -
      Optional serviceUUIDs: string[]
      -
      -

      The UUIDs of the GattServices that must be contained in the advertisement data.

      -
      -
    • -
    -

    Returns Promise<Peripheral>

    -
  • -
-
-
- -

setMaxListeners

-
    -
  • setMaxListeners(n: number): Adapter
  • -
-
    -
  • - -

    Parameters

    -
      -
    • -
      n: number
      -
    • -
    -

    Returns Adapter

    -
  • -
-
-
- -

Abstract setupGatt

-
    -
  • setupGatt(maxMtu?: number): Promise<GattLocal>
  • -
-
    -
  • - -
    -
    -

    Setup the GATT server for this adapter to communicate with connecting remote peripherals.

    -
    -
    -

    Parameters

    -
      -
    • -
      Optional maxMtu: number
      -
      -

      The maximum MTU that will be negotiated in case the remote peripheral starts an MTU negotation.

      -
      -
    • -
    -

    Returns Promise<GattLocal>

    -
  • -
-
-
- -

Abstract startAdvertising

-
    -
  • startAdvertising(deviceName: string, serviceUUIDs?: string[]): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Start advertising on this adapter.

    -
    -
    -

    Parameters

    -
      -
    • -
      deviceName: string
      -
      -

      The device name that is included in the advertisement.

      -
      -
    • -
    • -
      Optional serviceUUIDs: string[]
      -
      -

      The UUIDs of the GattServices that are included in the advertisement.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

Abstract startScanning

-
    -
  • startScanning(serviceUUIDs?: string[], allowDuplicates?: boolean): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Start scanning for nearby Peripherals.

    -
    -
    -

    Parameters

    -
      -
    • -
      Optional serviceUUIDs: string[]
      -
      -

      The UUIDs of the GattService that an advertising - packet must advertise to emit a discover event.

      -
      -
    • -
    • -
      Optional allowDuplicates: boolean
      -
      -

      True if advertisements for the same peripheral should emit multiple discover events.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

Abstract stopAdvertising

-
    -
  • stopAdvertising(): Promise<void>
  • -
- -
-
- -

Abstract stopScanning

-
    -
  • stopScanning(): Promise<void>
  • -
- -
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gatt.html b/docs/classes/gatt.html deleted file mode 100644 index 4480a9fa..00000000 --- a/docs/classes/gatt.html +++ /dev/null @@ -1,383 +0,0 @@ - - - - - - Gatt | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class Gatt

-
-
-
-
-
-
-
-
-
-

A local or remote GATT server.

-
-
-
-
-

Hierarchy

- -
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Accessors

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Readonly services

-
services: Map<string, GattService> = ...
- -
-
-

The services that belong to this GATT server, mapped by UUID. - If this is a remote GATT use discoverServices to discover them.

-
-
-
-
-
-

Accessors

-
- -

Abstract isRemote

-
    -
  • get isRemote(): boolean
  • -
-
    -
  • - -
    -
    -

    True if this is a remote GATT server, false otherwise.

    -
    -
    -

    Returns boolean

    -
  • -
-
-
- -

mtu

-
    -
  • get mtu(): number
  • -
-
    -
  • - -
    -
    -

    Local: The maximum MTU that will be agreed upon during negotiation. - Remote: The MTU that was agreed upon during negotiation.

    -
    -
    -

    Returns number

    -
  • -
-
-
-
-

Methods

-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gattcharacteristic.html b/docs/classes/gattcharacteristic.html deleted file mode 100644 index 4a890479..00000000 --- a/docs/classes/gattcharacteristic.html +++ /dev/null @@ -1,1315 +0,0 @@ - - - - - - GattCharacteristic | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattCharacteristic

-
-
-
-
-
-
-
-
-
-

Represents a GATT Characteristic.

-
-
-
-
-

Hierarchy

- -
-
-

Index

-
- -
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Readonly descriptors

-
descriptors: Map<string, GattDescriptor> = ...
- -
-
-

The descriptors that belong to this characteristic, mapped by UUID. - If this is a remote characteristic use discoverDescriptors to discover them.

-
-
-
-
- -

Readonly isRemote

-
isRemote: boolean
- -
-
-

True if this is a remote characteristic, false otherwise.

-
-
-
-
- -

Readonly properties

- - -
-
-

A list of all the properties that are enabled/supported for this characteristic.

-
-
-
-
- -

Readonly propertyFlag

-
propertyFlag: number
- -
-
-

The list of properties supported by this characteristic as a byte flag per the Bluetooth Core spec.

-
-
-
-
- -

Readonly secure

- - -
-
-

A list of all the properties on this characteristic that are secured.

-
-
-
-
- -

Readonly secureFlag

-
secureFlag: number
- -
-
-

The list of all secured properties of this characteristic as a byte flag per the Bluetooth Core spec.

-
-
-
-
- -

Readonly service

-
service: GattService
- -
-
-

The GATT service that this characteristic belongs to.

-
-
-
-
- -

Readonly uuid

-
uuid: string
- -
-
-

The UUID of this characteristic, no dashes (-).

-
-
-
-
- -

Static defaultMaxListeners

-
defaultMaxListeners: number
- -
-
-
-

Methods

-
- -

Abstract addDescriptor

-
    -
  • addDescriptor(uuid: string, value: Buffer): Promise<GattDescriptor>
  • -
- -
-
- -

addListener

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

Abstract broadcast

-
    -
  • broadcast(broadcast: boolean): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Remote only: Enable or disable broadcasts.

    -
    -
    -

    Parameters

    -
      -
    • -
      broadcast: boolean
      -
      -

      True to enable broadcasts, false otherwise.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

Abstract discoverDescriptors

- - -
-
- -

emit

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns boolean

    -
  • -
-
-
- -

eventNames

-
    -
  • eventNames<U>(): U[]
  • -
-
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Returns U[]

    -
  • -
-
-
- -

getMaxListeners

-
    -
  • getMaxListeners(): number
  • -
-
    -
  • - -

    Returns number

    -
  • -
-
-
- -

handleRead

-
    -
  • handleRead(offset: number): Promise<Buffer>
  • -
-
    -
  • - -
    -
    -

    Local only: Handles an incoming read request for this characteristic.

    -
    -
    -

    Parameters

    -
      -
    • -
      offset: number
      -
      -

      The offset to start at

      -
      -
    • -
    -

    Returns Promise<Buffer>

    -

    The read data.

    -
  • -
-
-
- -

handleWrite

-
    -
  • handleWrite(offset: number, data: Buffer, withoutResponse: boolean): Promise<number>
  • -
-
    -
  • - -
    -
    -

    Local only: Handles an incoming write request for this characteristic.

    -
    -
    -

    Parameters

    -
      -
    • -
      offset: number
      -
      -

      The offset to start at.

      -
      -
    • -
    • -
      data: Buffer
      -
      -

      The data to write.

      -
      -
    • -
    • -
      withoutResponse: boolean
      -
      -

      True to not produce a response code, false otherwise.

      -
      -
    • -
    -

    Returns Promise<number>

    -

    The result code.

    -
  • -
-
-
- -

listenerCount

-
    -
  • listenerCount(type: "notification"): number
  • -
-
    -
  • - -

    Parameters

    -
      -
    • -
      type: "notification"
      -
    • -
    -

    Returns number

    -
  • -
-
-
- -

listeners

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    -
      -
    • -
      type: U
      -
    • -
    -

    Returns GattCharacteristicEvents[U][]

    -
  • -
-
-
- -

Abstract notify

-
    -
  • notify(notify: boolean): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Remote only: Enable or disable notifications.

    -
    -
    -

    Parameters

    -
      -
    • -
      notify: boolean
      -
      -

      True to enable notifies, false otherwise.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

off

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

on

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

once

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

prependListener

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

prependOnceListener

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

rawListeners

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    -
      -
    • -
      type: U
      -
    • -
    -

    Returns GattCharacteristicEvents[U][]

    -
  • -
-
-
- -

Abstract read

-
    -
  • read(): Promise<Buffer>
  • -
- -
-
- -

removeAllListeners

- -
    -
  • - -

    Parameters

    -
      -
    • -
      Optional event: "notification"
      -
    • -
    -

    Returns GattCharacteristic

    -
  • -
-
-
- -

removeListener

- -
    -
  • - -

    Type parameters

    -
      -
    • -

      U: "notification"

      -
    • -
    -

    Parameters

    - -

    Returns GattCharacteristic

    -
  • -
-
-
- -

setMaxListeners

- -
    -
  • - -

    Parameters

    -
      -
    • -
      n: number
      -
    • -
    -

    Returns GattCharacteristic

    -
  • -
-
-
- -

subscribe

-
    -
  • subscribe(): Promise<void>
  • -
- -
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
- -

unsubscribe

-
    -
  • unsubscribe(): Promise<void>
  • -
- -
-
- -

Abstract write

-
    -
  • write(data: Buffer, withoutResponse: boolean): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Remote only: Write the specified data to this characteristic.

    -
    -
    -

    Parameters

    -
      -
    • -
      data: Buffer
      -
      -

      The data to write.

      -
      -
    • -
    • -
      withoutResponse: boolean
      -
      -

      Do not require a response from the remote GATT server for this write.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gattdescriptor.html b/docs/classes/gattdescriptor.html deleted file mode 100644 index 42dbc36c..00000000 --- a/docs/classes/gattdescriptor.html +++ /dev/null @@ -1,475 +0,0 @@ - - - - - - GattDescriptor | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattDescriptor

-
-
-
-
-
-
-
-
-
-

Represents a GATT Descriptor.

-
-
-
-
-

Hierarchy

-
    -
  • - GattDescriptor -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Readonly characteristic

-
characteristic: GattCharacteristic
- -
-
-

The GATT characteristic that this descriptor belongs to

-
-
-
-
- -

Readonly isRemote

-
isRemote: boolean
- -
-
-

True if this is a remote characteristic, false otherwise.

-
-
-
-
- -

Readonly uuid

-
uuid: string
- -
-
-

The UUID of this descriptor, no dashes (-).

-
-
-
-
-
-

Methods

-
- -

handleRead

-
    -
  • handleRead(offset: number): Promise<Buffer>
  • -
- -
-
- -

handleWrite

-
    -
  • handleWrite(offset: number, data: Buffer): Promise<number>
  • -
- -
-
- -

Abstract read

-
    -
  • read(): Promise<Buffer>
  • -
- -
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
- -

Abstract write

-
    -
  • write(data: Buffer): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Writes the specified data to this descriptor.

    -
    -
    -

    Parameters

    -
      -
    • -
      data: Buffer
      -
      -

      The data to write.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gatterror.html b/docs/classes/gatterror.html deleted file mode 100644 index 6718b937..00000000 --- a/docs/classes/gatterror.html +++ /dev/null @@ -1,427 +0,0 @@ - - - - - - GattError | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattError

-
-
-
-
-
-
-
-

Hierarchy

-
    -
  • - Error -
      -
    • - GattError -
    • -
    -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Optional details

-
details: string
- -
-
- -

message

-
message: string
- -
-
- -

name

-
name: string
- -
-
- -

Readonly peripheral

-
peripheral: Peripheral
- -
-
- -

Optional stack

-
stack: string
- -
-
- -

Static Optional prepareStackTrace

-
prepareStackTrace: (err: Error, stackTraces: CallSite[]) => any
- -
-
-

Optional override for formatting stack traces

-
-
-
see
-

https://v8.dev/docs/stack-trace-api#customizing-stack-traces

-
-
-
-
-

Type declaration

-
    -
  • -
      -
    • (err: Error, stackTraces: CallSite[]): any
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        err: Error
        -
      • -
      • -
        stackTraces: CallSite[]
        -
      • -
      -

      Returns any

      -
    • -
    -
  • -
-
-
-
- -

Static stackTraceLimit

-
stackTraceLimit: number
- -
-
-
-

Methods

-
- -

Static captureStackTrace

-
    -
  • captureStackTrace(targetObject: object, constructorOpt?: Function): void
  • -
-
    -
  • - -
    -
    -

    Create .stack property on a target object

    -
    -
    -

    Parameters

    -
      -
    • -
      targetObject: object
      -
    • -
    • -
      Optional constructorOpt: Function
      -
    • -
    -

    Returns void

    -
  • -
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gattlocal.html b/docs/classes/gattlocal.html deleted file mode 100644 index d8ac007d..00000000 --- a/docs/classes/gattlocal.html +++ /dev/null @@ -1,473 +0,0 @@ - - - - - - GattLocal | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattLocal

-
-
-
-
-
-
-
-
-
-

A local GATT server.

-
-
-
-
-

Hierarchy

-
    -
  • - Gatt -
      -
    • - GattLocal -
    • -
    -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Accessors

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Readonly adapter

-
adapter: Adapter
- -
-
-

The adapter that this GATT server belongs to.

-
-
-
-
- -

Readonly services

-
services: Map<string, GattService> = ...
- -
-
-

The services that belong to this GATT server, mapped by UUID. - If this is a remote GATT use discoverServices to discover them.

-
-
-
-
-
-

Accessors

-
- -

isRemote

-
    -
  • get isRemote(): boolean
  • -
- -
-
- -

mtu

-
    -
  • get mtu(): number
  • -
-
    -
  • - -
    -
    -

    Local: The maximum MTU that will be agreed upon during negotiation. - Remote: The MTU that was agreed upon during negotiation.

    -
    -
    -

    Returns number

    -
  • -
-
-
-
-

Methods

-
- -

Abstract addService

- - -
-
- -

Abstract prepare

-
    -
  • prepare(deviceName: string): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Prepares this GATT server for advertisement.

    -
    -
    -

    Parameters

    -
      -
    • -
      deviceName: string
      -
      -

      The name of this device as specified in the general service / characteristic.

      -
      -
    • -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gattremote.html b/docs/classes/gattremote.html deleted file mode 100644 index c497ed57..00000000 --- a/docs/classes/gattremote.html +++ /dev/null @@ -1,429 +0,0 @@ - - - - - - GattRemote | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattRemote

-
-
-
-
-
-
-
-
-
-

A remote GATT server.

-
-
-
-
-

Hierarchy

-
    -
  • - Gatt -
      -
    • - GattRemote -
    • -
    -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Accessors

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Properties

-
- -

Readonly peripheral

-
peripheral: Peripheral
- -
-
-

The peripheral that this GATT server belongs to.

-
-
-
-
- -

Readonly services

-
services: Map<string, GattService> = ...
- -
-
-

The services that belong to this GATT server, mapped by UUID. - If this is a remote GATT use discoverServices to discover them.

-
-
-
-
-
-

Accessors

-
- -

isRemote

-
    -
  • get isRemote(): boolean
  • -
- -
-
- -

mtu

-
    -
  • get mtu(): number
  • -
-
    -
  • - -
    -
    -

    Local: The maximum MTU that will be agreed upon during negotiation. - Remote: The MTU that was agreed upon during negotiation.

    -
    -
    -

    Returns number

    -
  • -
-
-
-
-

Methods

-
- -

Abstract discoverServices

- - -
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/gattservice.html b/docs/classes/gattservice.html deleted file mode 100644 index 845d1068..00000000 --- a/docs/classes/gattservice.html +++ /dev/null @@ -1,473 +0,0 @@ - - - - - - GattService | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class GattService

-
-
-
-
-
-
-
-
-
-

Represents a GATT service.

-
-
-
-
-

Hierarchy

-
    -
  • - GattService -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

-
    -
  • new GattService(gatt: Gatt, uuid: string, isRemote: boolean): GattService
  • -
- -
-
-
-

Properties

-
- -

Readonly characteristics

-
characteristics: Map<string, GattCharacteristic> = ...
- -
-
-

The characteristics that belong to this service, mapped by UUID. - If this is a remote service use discoverCharacteristics to discover them.

-
-
-
-
- -

Readonly gatt

-
gatt: Gatt
- -
-
-

The GATT server this service belongs to.

-
-
-
-
- -

Readonly isRemote

-
isRemote: boolean
- -
-
-

True if this is a remote service, false otherwise.

-
-
-
-
- -

Readonly uuid

-
uuid: string
- -
-
-

The UUID of this service, no dashes (-).

-
-
-
-
-
-

Methods

-
- -

Abstract addCharacteristic

- - -
-
- -

Abstract discoverCharacteristics

- - -
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/modblue.html b/docs/classes/modblue.html deleted file mode 100644 index 440fa4b9..00000000 --- a/docs/classes/modblue.html +++ /dev/null @@ -1,285 +0,0 @@ - - - - - - MODblue | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class MODblue

-
-
-
-
-
-
-
-
-
-

Main class to interface with BLE. - Scan for adapters and use an adapter to perform specific actions.

-
-
-
-
-

Hierarchy

-
    -
  • - MODblue -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

- - -
-
-
-

Methods

-
- -

Abstract dispose

-
    -
  • dispose(): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Dispose of these BLE bindings. Object should be considered unusable after this.

    -
    -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

Abstract getAdapters

-
    -
  • getAdapters(): Promise<Adapter[]>
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/classes/peripheral.html b/docs/classes/peripheral.html deleted file mode 100644 index fbbfeae4..00000000 --- a/docs/classes/peripheral.html +++ /dev/null @@ -1,561 +0,0 @@ - - - - - - Peripheral | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Class Peripheral

-
-
-
-
-
-
-
-
-
-

Represents a peripheral that was found during scanning.

-
-
-
-
-

Hierarchy

-
    -
  • - Peripheral -
  • -
-
-
-

Index

-
-
-
-

Constructors

- -
-
-

Properties

- -
-
-

Accessors

- -
-
-

Methods

- -
-
-
-
-
-

Constructors

-
- -

constructor

-
    -
  • new Peripheral(adapter: Adapter, uuid: string, name: string, addressType: AddressType, address: string, advertisement?: Buffer, rssi?: number): Peripheral
  • -
- -
-
-
-

Properties

-
- -

Readonly adapter

-
adapter: Adapter
- -
-
-

The adapter that this peripheral was found by.

-
-
-
-
- -

Readonly address

-
address: string
- -
-
-

The MAC address of this peripheral. All lowercase, with colon separator between bytes, e.g. 11:22:33:aa:bb:cc

-
-
-
-
- -

Readonly addressType

-
addressType: AddressType
- -
-
-

The MAC address type of this peripheral.

-
-
-
-
- -

manufacturerData

-
manufacturerData: Buffer
- -
-
-

Any manufacturer advertisement data received from the peripheral. Includes the company identifier.

-
-
-
-
- -

name

-
name: string
- -
-
-

The advertised name of the peripheral.

-
-
-
-
- -

rssi

-
rssi: number
- -
-
-

The current RSSI signal strength of the peripheral.

-
-
-
-
- -

Readonly uuid

-
uuid: string
- -
-
-

The unique identifier for this peripheral.

-
-
-
-
-
-

Accessors

-
- -

gatt

- - -
-
- -

state

- - -
-
-
-

Methods

-
- -

Abstract connect

- -
    -
  • - -
    -
    -

    Connect to this peripheral and setup GATT. Throws an error when connecting fails. - Some connection settings may not be supported on certain platforms and wil be ignored.

    -
    -
    -

    Parameters

    -
      -
    • -
      Optional options: ConnectOptions
      -
      -

      The connection options.

      -
      -
    • -
    -

    Returns Promise<GattRemote>

    -
  • -
-
-
- -

Abstract disconnect

-
    -
  • disconnect(): Promise<void>
  • -
-
    -
  • - -
    -
    -

    Disconnect from this peripheral. Does nothing if not connected. This method never throws an error. - When connecting to a peripheral you should always wrap your calls in try-catch-finally and call this method at the end.

    -

    try { peripheral.connect() } catch (err) { ... } finally { peripheral.disconnect(); }

    -
    -
    -

    Returns Promise<void>

    -
  • -
-
-
- -

toJSON

-
    -
  • toJSON(): Record<string, unknown>
  • -
- -
-
- -

toString

-
    -
  • toString(): string
  • -
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index 937acd6e..987252c3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1,395 +1,155 @@ - - - - - - @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
-

@modum-io/modblue - v12.0.4

-
-
-
-
-
-
-
- -

ModBlue

-
-

Trying to make the world better place by improving the bluetooth experience one library at a time.

- -

Getting started

-
- -

Prerequisites

-
- -

OS X

-
- - -

Linux

-
-
    -
  • Give net_cap_raw to node

    -
    -

    **This command may not work if you're using NVM or asdf!

    -
    Make sure to give the actual node binary the permission**
    -
    -
    -
    sudo setcap cap_net_raw+eip $(eval readlink -f $(which node))
    -
    -
  • -
  • Stop/Disable the bluetooth service if you're planning to advertise with the hci bindings:

    -
    -

    Please note that this stops the dbus bindings from working properly!

    -
    -
    sudo systemctl stop bluetooth
    -
    -

    You can also disable it permanently:

    -
    sudo systemctl disable bluetooth
    -
    -
  • -
- -
Debian flavours
-
-
    -
  •  sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev
    -
    -
  • -
- -
Fedora and other RPM-based distros
-
-
    -
  •  sudo yum install bluez bluez-libs bluez-libs-devel
    -
    -
  • -
- -

Installation

-
-

Install the module from npm:

-
npm i -E @modum-io/modblue
-
-

Then install the peer depencies depending on which one(s) you want to use:

- - -

Usage

-
-

Create a new MODblue object to get started (all bindings have the same interface)

-
import { HciMODblue } from '@modum-io/modblue/hci'; // for hci bindings
-// import { DbusMODblue } from '@modum-io/modblue/dbus'; // for dbus bindings
+@modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

@modum-io/modblue - v12.0.5

+ +

ModBlue

+
+

Trying to make the world better place by improving the bluetooth experience one library at a time.

-const modblue = new HciMODblue(); // or: new DbusMODblue() -
-

Now you can scan & use one or multiple of the adapters:

-
const adapters = await modblue.getAdapters();
-const adapter = adapters[0];
-
- -

Scanning

-
-

Use an adapter to scan for devices in proximity:

-
const serviceUUIDs: string[] = [];        // Optional: Advertised service UUIDs, without dashes (-)
-const allowDuplicates: boolean = true;    // Optional: Allow duplicate 'discover' events for the same device
+
+  

Getting started

+
-await adapter.startScanning(serviceUUIDs, allowDuplicates); -
-

Now you can either wait for a few seconds to scan and then get all the scanned peripherals

-
const peripherals = await adapter.getScannedPeripherals();
-
-

or you can attach an event to trigger each time a new peripheral is discovered (or more often if allowDuplicates is true):

-
adapter.on('discover', (peripheral) => console.log('Discovered', peripheral.address));
-
-

Once discovered you can connect to a peripheral and grab it's GATT to discover services and characteristics:

-
await peripheral.connect();
-
-// Setup GATT
-const requestMtu = 517;    // Optional: Request a specific MTU
-const gatt = await peripheral.setupGatt(requestMtu);
+
+  

Prerequisites

+
-// Discover services -const services = await gatt.discoverServices(); -const service = services[0]; + +

OS X

+
+ -// Discover characteristics -const characteristics = await service.discoverCharacteristics(); -const characteristic = characteristics[0]; + +

Linux

+
+
    +
  • Give net_cap_raw to node

    +
    +

    This command may not work if you're using NVM or asdf!
    Make sure to give the actual node binary the permission

    +
    +
    sudo setcap cap_net_raw+eip $(eval readlink -f $(which node))
    +
    +
  • +
  • Stop/Disable the bluetooth service if you're planning to advertise with the hci bindings:

    +
    +

    Please note that this stops the dbus bindings from working properly!

    +
    +
    sudo systemctl stop bluetooth
    +
    +

    You can also disable it permanently:

    +
    sudo systemctl disable bluetooth
    +
    +
  • +
-// Discover descriptors -const descriptors = await characteristic.discoverDescriptors(); -const descriptor = descriptors[0]; + +
Debian flavours
+
+
    +
  •  sudo apt-get install bluetooth bluez libbluetooth-dev libudev-dev
    +
    +
  • +
-// Read value -const buffer = await characteristic.read(); -// or -const buffer = await descriptor.readValue(); + +
Fedora and other RPM-based distros
+
+
    +
  •  sudo yum install bluez bluez-libs bluez-libs-devel
    +
    +
  • +
-// Write value -const withoutResponse: boolean = true; // Tell the peripheral we don't need a response for this write + +

Installation

+
+

Install the module from npm:

+
npm i -E @modum-io/modblue
+
+

Then install the peer depencies depending on which one(s) you want to use:

+ -await characteristic.write(buffer, withoutResponse); -// or -await descriptor.writeValue(buffer); + +

Usage

+
+

Create a new MODblue object to get started (all bindings have the same interface)

+
import { HciMODblue } from '@modum-io/modblue/hci'; // for hci bindings
// import { DbusMODblue } from '@modum-io/modblue/dbus'; // for dbus bindings

const modblue = new HciMODblue(); // or: new DbusMODblue()
- -

Advertising

-
-

First you have to setup the local GATT and the services and characteristics you want to advertise:

-
import { GattServiceInput } from '@modum-io/modblue';
-
-const maxMtu: number = 517;                             // Optional: Specify the maximum MTU that should be negotiated with connecting devices.
-const gatt = await adapter.setupGatt(maxMtu);           // Setup our local GATT server
-
-const deviceName: string = 'MODblue Testing';
-const services: GattServiceInput[] = [
-   {
-      uuid: '48ee0000bf49460ca3d77ec7a512a4ce',          // UUID of the service (without dashes [-])
-      characteristics: [
-         {
-            uuid: '48ee0001bf49460ca3d77ec7a512a4ce',    // UUID of the characteristic
-            properties: ['read'],                        // Supported properties on the characteristic
-            secure: [],                                  // Which of the supported properties are secured
-            descriptors: [],                             // Descriptors on this characteristic
-            value: Buffer.from('test', 'utf-8')          // The (constant) data that is returned for this characteristic
-         },
-      {
-         uuid: '48ee0002bf49460ca3d77ec7a512a4ce',
-         properties: ['read'],
-         secure: [],
-         descriptors: [],
-         onRead: async (offset) => {
-            // This function receives the offset at which to start reading
-            if (offset === 0) {
-               // Only do your computation when the first bytes are requested.
-               // In case of subsequent reads (because of long data / small MTU) we want to return the same data as before, starting at the offset
-               }
-
-               // Returns a tuple containing: [error: number, data: Buffer] - Use 0 for the error on success.
-               return [0, Buffer.from('other', 'utf-8').slice(offset)];
-            }
-         },
-         {
-            uuid: '48ee0003bf49460ca3d77ec7a512a4cd',
-            properties: ['write', 'write-without-response'],
-            secure: [],
-            descriptors: [],
-            onWrite: (offset, data, withoutResponse) => {
-               // This function handles writing data to the characteristic
-               console.log('writing', offset, data, withoutResponse);
-            }
-         }
-      ]
-   }
-];
-gatt.setData(deviceName, services);
+

Now you can scan & use one or multiple of the adapters:

+
const adapters = await modblue.getAdapters();
const adapter = adapters[0];
-

To advertise services and characteristics use:

-
const deviceName: string = 'MODblue Testing';    // You can use a different advertising name then the name in the GATT
-const advertisedServiceUUIDs: string[] = [];     // Optional: Advertise specific service UUIDs (without dashes [-])
 
-await adapter.startAdvertising(deviceName, advertisedServiceUUIDs);
+
+  

Scanning

+
+

Use an adapter to scan for devices in proximity:

+
const serviceUUIDs: string[] = [];        // Optional: Advertised service UUIDs, without dashes (-)
const allowDuplicates: boolean = true; // Optional: Allow duplicate 'discover' events for the same device

await adapter.startScanning(serviceUUIDs, allowDuplicates); +
+

Now you can either wait for a few seconds to scan and then get all the scanned peripherals

+
const peripherals = await adapter.getScannedPeripherals();
 
- -

Tests

-
- -

Adapters

-
-

This test will list all available adapters for all available bindings.

-
    -
  1. Run test using

    -
    node tests/adapters.js
    +

    or you can attach an event to trigger each time a new peripheral is discovered (or more often if allowDuplicates is true):

    +
    adapter.on('discover', (peripheral) => console.log('Discovered', peripheral.address));
     
    -
  2. -
- -

Connect

-
-

This test will connect, discover services and characteristics, read a single characteristic value and disconnect. - The test runs indefinitely and rotates between all specified devices.

-
    -
  1. Run test using

    -
    export BINDINGS="hci";
    -export LOGGER_IDS="AA:AA:AA:AA:AA:AA|BB:BB:BB:BB:BB:BB";
    -export SERVICE_ID="48ee0000bf49460ca3d77ec7a512a4cd";
    -export CHARACTERISTIC_ID = "48ee000bbf49460ca3d77ec7a512a4cd";
    -node tests/connect.js $BINDINGS $LOGGER_IDS $SERVICE_ID $CHARACTERISTIC_ID
    +

    Once discovered you can connect to a peripheral and grab it's GATT to discover services and characteristics:

    +
    await peripheral.connect();

    // Setup GATT
    const requestMtu = 517; // Optional: Request a specific MTU
    const gatt = await peripheral.setupGatt(requestMtu);

    // Discover services
    const services = await gatt.discoverServices();
    const service = services[0];

    // Discover characteristics
    const characteristics = await service.discoverCharacteristics();
    const characteristic = characteristics[0];

    // Discover descriptors
    const descriptors = await characteristic.discoverDescriptors();
    const descriptor = descriptors[0];

    // Read value
    const buffer = await characteristic.read();
    // or
    const buffer = await descriptor.readValue();

    // Write value
    const withoutResponse: boolean = true; // Tell the peripheral we don't need a response for this write

    await characteristic.write(buffer, withoutResponse);
    // or
    await descriptor.writeValue(buffer);
    -
  2. -
- -

This test will advertise some services and characteristics under a specified name. - The test runs indefinitely and waits for connections.

-
    -
  1. Run test using

    -
    export BINDINGS="hci";
    -export ADVERTISE_NAME="MODblue Testing";
    -node tests/advertise.js $BINDINGS "$ADVERTISE_NAME"
    +
    +
    +  

    Advertising

    +
    +

    First you have to setup the local GATT and the services and characteristics you want to advertise:

    +
    import { GattServiceInput } from '@modum-io/modblue';

    const maxMtu: number = 517; // Optional: Specify the maximum MTU that should be negotiated with connecting devices.
    const gatt = await adapter.setupGatt(maxMtu); // Setup our local GATT server

    const deviceName: string = 'MODblue Testing';
    const services: GattServiceInput[] = [
    {
    uuid: '48ee0000bf49460ca3d77ec7a512a4ce', // UUID of the service (without dashes [-])
    characteristics: [
    {
    uuid: '48ee0001bf49460ca3d77ec7a512a4ce', // UUID of the characteristic
    properties: ['read'], // Supported properties on the characteristic
    secure: [], // Which of the supported properties are secured
    descriptors: [], // Descriptors on this characteristic
    value: Buffer.from('test', 'utf-8') // The (constant) data that is returned for this characteristic
    },
    {
    uuid: '48ee0002bf49460ca3d77ec7a512a4ce',
    properties: ['read'],
    secure: [],
    descriptors: [],
    onRead: async (offset) => {
    // This function receives the offset at which to start reading
    if (offset === 0) {
    // Only do your computation when the first bytes are requested.
    // In case of subsequent reads (because of long data / small MTU) we want to return the same data as before, starting at the offset
    }

    // Returns a tuple containing: [error: number, data: Buffer] - Use 0 for the error on success.
    return [0, Buffer.from('other', 'utf-8').slice(offset)];
    }
    },
    {
    uuid: '48ee0003bf49460ca3d77ec7a512a4cd',
    properties: ['write', 'write-without-response'],
    secure: [],
    descriptors: [],
    onWrite: (offset, data, withoutResponse) => {
    // This function handles writing data to the characteristic
    console.log('writing', offset, data, withoutResponse);
    }
    }
    ]
    }
    ];
    gatt.setData(deviceName, services); +
    +

    To advertise services and characteristics use:

    +
    const deviceName: string = 'MODblue Testing';    // You can use a different advertising name then the name in the GATT
    const advertisedServiceUUIDs: string[] = []; // Optional: Advertise specific service UUIDs (without dashes [-])

    await adapter.startAdvertising(deviceName, advertisedServiceUUIDs);
    -
  2. -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file + + +

Tests

+
+ + +

Adapters

+
+

This test will list all available adapters for all available bindings.

+
    +
  1. Run test using

    +
    node tests/adapters.js
    +
    +
  2. +
+ + +

Connect

+
+

This test will connect, discover services and characteristics, read a single characteristic value and disconnect. +The test runs indefinitely and rotates between all specified devices.

+
    +
  1. Run test using

    +
    export BINDINGS="hci";
    export LOGGER_IDS="AA:AA:AA:AA:AA:AA|BB:BB:BB:BB:BB:BB";
    export SERVICE_ID="48ee0000bf49460ca3d77ec7a512a4cd";
    export CHARACTERISTIC_ID = "48ee000bbf49460ca3d77ec7a512a4cd";
    node tests/connect.js $BINDINGS $LOGGER_IDS $SERVICE_ID $CHARACTERISTIC_ID +
    +
  2. +
+ + +

This test will advertise some services and characteristics under a specified name. +The test runs indefinitely and waits for connections.

+
    +
  1. Run test using

    +
    export BINDINGS="hci";
    export ADVERTISE_NAME="MODblue Testing";
    node tests/advertise.js $BINDINGS "$ADVERTISE_NAME" +
    +
  2. +
+

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/interfaces/AdapterEvents.html b/docs/interfaces/AdapterEvents.html new file mode 100644 index 00000000..c4b1892b --- /dev/null +++ b/docs/interfaces/AdapterEvents.html @@ -0,0 +1 @@ +AdapterEvents | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • AdapterEvents

Index

Methods

connect

disconnect

  • disconnect(peripheral: Peripheral, reason?: string): void

discover

error

  • error(error: Error): void

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/interfaces/ConnectOptions.html b/docs/interfaces/ConnectOptions.html new file mode 100644 index 00000000..9ac278bf --- /dev/null +++ b/docs/interfaces/ConnectOptions.html @@ -0,0 +1,14 @@ +ConnectOptions | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu
+

Connection options used to establish the BLE connection. +Certain options are only supported on certain platforms / bindings.

+

Hierarchy

  • ConnectOptions

Index

Properties

Optional latency

latency?: number
+

The connection latency.

+

Optional maxInterval

maxInterval?: number
+

The maximum connection interval

+

Optional minInterval

minInterval?: number
+

The minimum connection interval.

+

Optional mtu

mtu?: number
+

The requested MTU that is sent during the MTU negotiation. Actual mtu may be lower.

+

Optional supervisionTimeout

supervisionTimeout?: number
+

The supervision timeout.

+

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/interfaces/GattCharacteristicEvents.html b/docs/interfaces/GattCharacteristicEvents.html new file mode 100644 index 00000000..fbbf808d --- /dev/null +++ b/docs/interfaces/GattCharacteristicEvents.html @@ -0,0 +1 @@ +GattCharacteristicEvents | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

Interface GattCharacteristicEvents

Hierarchy

  • GattCharacteristicEvents

Index

Methods

notification

  • notification(data: Buffer): void

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/interfaces/InspectOptionsStylized.html b/docs/interfaces/InspectOptionsStylized.html new file mode 100644 index 00000000..cc9ecc09 --- /dev/null +++ b/docs/interfaces/InspectOptionsStylized.html @@ -0,0 +1 @@ +InspectOptionsStylized | @modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

Hierarchy

  • InspectOptionsStylized

Index

Properties

Methods

Properties

Optional depth

depth?: number

Methods

stylize

  • stylize(text: string, styleType: Style): string

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/docs/interfaces/adapterevents.html b/docs/interfaces/adapterevents.html deleted file mode 100644 index 716593ba..00000000 --- a/docs/interfaces/adapterevents.html +++ /dev/null @@ -1,342 +0,0 @@ - - - - - - AdapterEvents | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Interface AdapterEvents

-
-
-
-
-
-
-
-

Hierarchy

-
    -
  • - AdapterEvents -
  • -
-
-
-

Index

-
-
-
-

Properties

- -
-
-
-
-
-

Properties

-
- -

connect

-
connect: (peripheral: Peripheral) => void
- -
-

Type declaration

-
    -
  • - -
      -
    • -

      Parameters

      - -

      Returns void

      -
    • -
    -
  • -
-
-
-
- -

disconnect

-
disconnect: (peripheral: Peripheral, reason?: string) => void
- -
-

Type declaration

-
    -
  • -
      -
    • (peripheral: Peripheral, reason?: string): void
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        peripheral: Peripheral
        -
      • -
      • -
        Optional reason: string
        -
      • -
      -

      Returns void

      -
    • -
    -
  • -
-
-
-
- -

discover

-
discover: (peripheral: Peripheral) => void
- -
-

Type declaration

-
    -
  • - -
      -
    • -

      Parameters

      - -

      Returns void

      -
    • -
    -
  • -
-
-
-
- -

error

-
error: (error: Error) => void
- -
-

Type declaration

-
    -
  • -
      -
    • (error: Error): void
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        error: Error
        -
      • -
      -

      Returns void

      -
    • -
    -
  • -
-
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/interfaces/connectoptions.html b/docs/interfaces/connectoptions.html deleted file mode 100644 index 9927c972..00000000 --- a/docs/interfaces/connectoptions.html +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - ConnectOptions | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Interface ConnectOptions

-
-
-
-
-
-
-
-
-
-

Connection options used to establish the BLE connection. - Certain options are only supported on certain platforms / bindings.

-
-
-
-
-

Hierarchy

-
    -
  • - ConnectOptions -
  • -
-
-
-

Index

-
-
-
-

Properties

- -
-
-
-
-
-

Properties

-
- -

Optional latency

-
latency: number
- -
-
-

The connection latency.

-
-
-
-
- -

Optional maxInterval

-
maxInterval: number
- -
-
-

The maximum connection interval

-
-
-
-
- -

Optional minInterval

-
minInterval: number
- -
-
-

The minimum connection interval.

-
-
-
-
- -

Optional mtu

-
mtu: number
- -
-
-

The requested MTU that is sent during the MTU negotiation. Actual mtu may be lower.

-
-
-
-
- -

Optional supervisionTimeout

-
supervisionTimeout: number
- -
-
-

The supervision timeout.

-
-
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/interfaces/gattcharacteristicevents.html b/docs/interfaces/gattcharacteristicevents.html deleted file mode 100644 index 1c4e7b91..00000000 --- a/docs/interfaces/gattcharacteristicevents.html +++ /dev/null @@ -1,234 +0,0 @@ - - - - - - GattCharacteristicEvents | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Interface GattCharacteristicEvents

-
-
-
-
-
-
-
-

Hierarchy

-
    -
  • - GattCharacteristicEvents -
  • -
-
-
-

Index

-
-
-
-

Properties

- -
-
-
-
-
-

Properties

-
- -

notification

-
notification: (data: Buffer) => void
- -
-

Type declaration

-
    -
  • -
      -
    • (data: Buffer): void
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        data: Buffer
        -
      • -
      -

      Returns void

      -
    • -
    -
  • -
-
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/interfaces/inspectoptionsstylized.html b/docs/interfaces/inspectoptionsstylized.html deleted file mode 100644 index 142979c6..00000000 --- a/docs/interfaces/inspectoptionsstylized.html +++ /dev/null @@ -1,251 +0,0 @@ - - - - - - InspectOptionsStylized | @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
- -

Interface InspectOptionsStylized

-
-
-
-
-
-
-
-

Hierarchy

-
    -
  • - InspectOptionsStylized -
  • -
-
-
-

Index

-
-
-
-

Properties

- -
-
-

Methods

- -
-
-
-
-
-

Properties

-
- -

Optional depth

-
depth: number
- -
-
-
-

Methods

-
- -

stylize

-
    -
  • stylize(text: string, styleType: Style): string
  • -
-
    -
  • - -

    Parameters

    -
      -
    • -
      text: string
      -
    • -
    • -
      styleType: Style
      -
    • -
    -

    Returns string

    -
  • -
-
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file diff --git a/docs/modules.html b/docs/modules.html index fa2f0437..a8c43682 100644 --- a/docs/modules.html +++ b/docs/modules.html @@ -1,333 +1,5 @@ - - - - - - @modum-io/modblue - v12.0.4 - - - - - - -
-
-
-
- -
-
- Options -
-
- All -
    -
  • Public
  • -
  • Public/Protected
  • -
  • All
  • -
-
- - - - -
-
- Menu -
-
-
-
-
-
-

@modum-io/modblue - v12.0.4

-
-
-
-
-
-
-
-

Index

-
- -
-
-
-

Type aliases

-
- -

AddressType

-
AddressType: "public" | "random" | "unknown"
- -
-
-

The type of MAC address as defined by the Bluetooth Core spec.

-
-
-
-
- -

GattCharacteristicProperty

-
GattCharacteristicProperty: "broadcast" | "read" | "write-without-response" | "write" | "notify" | "indicate" | "authenticated-signed-writes" | "extended-properties" | "reliable-write" | "writable-auxiliaries" | "authorize"
- -
-
- -

PeripheralState

-
PeripheralState: "connecting" | "connected" | "disconnecting" | "disconnected"
- -
-
-

The current state of the peripheral.

-
-
-
-
- -

ReadFunction

-
ReadFunction: (offset: number) => Promise<Buffer>
- -
-

Type declaration

-
    -
  • -
      -
    • (offset: number): Promise<Buffer>
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        offset: number
        -
      • -
      -

      Returns Promise<Buffer>

      -
    • -
    -
  • -
-
-
-
- -

WriteFunction

-
WriteFunction: (offset: number, data: Buffer, withoutResponse: boolean) => Promise<number>
- -
-

Type declaration

-
    -
  • -
      -
    • (offset: number, data: Buffer, withoutResponse: boolean): Promise<number>
    • -
    -
      -
    • -

      Parameters

      -
        -
      • -
        offset: number
        -
      • -
      • -
        data: Buffer
        -
      • -
      • -
        withoutResponse: boolean
        -
      • -
      -

      Returns Promise<number>

      -
    • -
    -
  • -
-
-
-
-
-

Variables

-
- -

Const CUSTOM

-
CUSTOM: symbol = ...
- -
-
-
- -
-
-
-
-

Legend

-
-
    -
  • Constructor
  • -
  • Property
  • -
  • Method
  • -
-
    -
  • Property
  • -
  • Method
  • -
-
    -
  • Inherited property
  • -
  • Inherited method
  • -
-
-
-
-
-

Generated using TypeDoc

-
-
- - - \ No newline at end of file +@modum-io/modblue - v12.0.5
Options
All
  • Public
  • Public/Protected
  • All
Menu

@modum-io/modblue - v12.0.5

Index

Type aliases

AddressType

AddressType: "public" | "random" | "unknown"
+

The type of MAC address as defined by the Bluetooth Core spec.

+

GattCharacteristicProperty

GattCharacteristicProperty: "broadcast" | "read" | "write-without-response" | "write" | "notify" | "indicate" | "authenticated-signed-writes" | "extended-properties" | "reliable-write" | "writable-auxiliaries" | "authorize"

PeripheralState

PeripheralState: "connecting" | "connected" | "disconnecting" | "disconnected"
+

The current state of the peripheral.

+

ReadFunction

ReadFunction: (offset: number) => Promise<Buffer>

Type declaration

    • (offset: number): Promise<Buffer>
    • Parameters

      • offset: number

      Returns Promise<Buffer>

WriteFunction

WriteFunction: (offset: number, data: Buffer, withoutResponse: boolean) => Promise<number>

Type declaration

    • (offset: number, data: Buffer, withoutResponse: boolean): Promise<number>
    • Parameters

      • offset: number
      • data: Buffer
      • withoutResponse: boolean

      Returns Promise<number>

Variables

CUSTOM

CUSTOM: symbol = ...

Legend

  • Constructor
  • Property
  • Method
  • Property
  • Method
  • Inherited property
  • Inherited method

Settings

Theme

Generated using TypeDoc

\ No newline at end of file diff --git a/lib/bindings/dbus/Adapter.js b/lib/bindings/dbus/Adapter.js index eaeb7e76..7d9b84fc 100644 --- a/lib/bindings/dbus/Adapter.js +++ b/lib/bindings/dbus/Adapter.js @@ -126,8 +126,8 @@ class DbusAdapter extends models_1.Adapter { const scanning = yield this.prop(misc_1.I_BLUEZ_ADAPTER, 'Discovering'); if (!scanning) { yield this.adapterIface.SetDiscoveryFilter({ - Transport: misc_1.buildTypedValue('string', 'le'), - DuplicateData: misc_1.buildTypedValue('boolean', false) + Transport: (0, misc_1.buildTypedValue)('string', 'le'), + DuplicateData: (0, misc_1.buildTypedValue)('boolean', false) }); yield this.adapterIface.StartDiscovery(); if (!this.isScanning()) { diff --git a/lib/bindings/dbus/Adapter.js.map b/lib/bindings/dbus/Adapter.js.map index 4abe8ea7..3ad77be9 100644 --- a/lib/bindings/dbus/Adapter.js.map +++ b/lib/bindings/dbus/Adapter.js.map @@ -1 +1 @@ -{"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../../src/bindings/dbus/Adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,yCAA2E;AAE3E,iCAAsH;AAEtH,6CAA8C;AAE9C,MAAM,eAAe,GAAG,CAAC,CAAC,CAAC,aAAa;AACxC,MAAM,kBAAkB,GAAG,EAAE,CAAC,CAAC,aAAa;AAE5C,MAAa,WAAY,SAAQ,gBAAO;IAgBvC,YAAmB,OAAoB,EAAE,IAAY,EAAE,IAAY,EAAE,OAAe;QACnF,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;QATxD,gBAAW,GAAG,KAAK,CAAC;QACpB,aAAQ,GAAG,KAAK,CAAC;QACjB,oBAAe,GAAG,KAAK,CAAC;QAExB,wBAAmB,GAAoC,EAAE,CAAC;QAE1D,gBAAW,GAA4B,IAAI,GAAG,EAAE,CAAC;QAmLjD,kBAAa,GAAG,CAAC,IAAY,EAAE,IAAgB,EAAE,EAAE;;YAC1D,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,CAAC;YAE7C,IAAI,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC1C,IAAI,CAAC,UAAU,EAAE;gBAChB,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAe,CAAC;gBACxC,MAAM,OAAO,GAAG,CAAC,MAAA,IAAI,CAAC,OAAO,0CAAE,KAAgB,CAAA,CAAC,WAAW,EAAE,CAAC;gBAC9D,MAAM,WAAW,GAAG,MAAA,IAAI,CAAC,WAAW,0CAAE,KAAoB,CAAC;gBAC3D,MAAM,aAAa,GAAG,MAAA,IAAI,CAAC,gBAAgB,0CAAE,KAA0C,CAAC;gBACxF,IAAI,gBAAgB,GAAW,IAAI,CAAC;gBACpC,IAAI,aAAa,EAAE;oBAClB,gBAAgB,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBACnC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE;wBAC7C,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;wBAC/B,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;wBAClC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,gBAAgB,EAAE,MAAM,EAAE,aAAa,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;qBACvF;iBACD;gBACD,MAAM,IAAI,GAAG,MAAA,IAAI,CAAC,IAAI,0CAAE,KAAe,CAAC;gBACxC,UAAU,GAAG,IAAI,2BAAc,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,CAAC,CAAC;gBACpG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,CAAC,CAAC;aACrC;YAED,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QACnC,CAAC,CAAC;QAEM,sBAAiB,GAAG,GAAS,EAAE;YACtC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAE/B,KAAK,MAAM,UAAU,IAAI,IAAI,EAAE;gBAC9B,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;oBACtC,SAAS;iBACT;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,CAAC,qBAAc,CAAC,CAAC;gBACnD,IAAI,CAAC,SAAS,EAAE;oBACf,SAAS;iBACT;gBAED,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;aAC1C;QACF,CAAC,CAAA,CAAC;QAxND,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IAClB,CAAC;IAEa,IAAI;;YACjB,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrB,OAAO;aACP;YAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAExB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;YAC5E,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,YAAY,CAAC,uBAAgB,CAAC,CAAC;YACjE,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,iBAAiB,EAAE,CAAC,IAAY,EAAE,IAAgC,EAAE,EAAE;gBAC7F,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE;oBACtC,OAAO;iBACP;gBAED,MAAM,SAAS,GAAG,IAAI,CAAC,qBAAc,CAAC,CAAC;gBACvC,IAAI,CAAC,SAAS,EAAE;oBACf,OAAO;iBACP;gBAED,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAClB,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;iBACpC;YACF,CAAC,CAAC,CAAC;YAEH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;YAC3E,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,sBAAe,CAAC,CAAC;YACtD,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,mBAAY,CAAC,CAAC;YAEjD,MAAM,mBAAmB,GAAG,CAAC,KAAa,EAAE,YAAwB,EAAE,EAAE;gBACvE,IAAI,KAAK,KAAK,sBAAe,EAAE;oBAC9B,OAAO;iBACP;gBAED,IAAI,aAAa,IAAI,YAAY,EAAE;oBAClC,IAAI,IAAI,CAAC,QAAQ,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;wBACrD,IAAI,CAAC,UAAU,EAAE,CAAC;qBAClB;yBAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,YAAY,CAAC,WAAW,CAAC,KAAK,EAAE;wBAC5D,IAAI,CAAC,WAAW,EAAE,CAAC;qBACnB;iBACD;YACF,CAAC,CAAC;YACF,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,mBAAmB,EAAE,mBAAmB,CAAC,CAAC;QAC9D,CAAC;KAAA;IAEa,IAAI,CAAI,KAAa,EAAE,IAAY;;YAChD,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;YACvD,OAAO,OAAO,CAAC,KAAK,CAAC;QACtB,CAAC;KAAA;IAEY,qBAAqB;;YACjC,OAAO,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC;QACvC,CAAC;KAAA;IAEM,UAAU;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IAEY,aAAa;;YACzB,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;YAElB,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAClB,OAAO;aACP;YAED,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YAEzB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAU,sBAAe,EAAE,aAAa,CAAC,CAAC;YAC1E,IAAI,CAAC,QAAQ,EAAE;gBACd,MAAM,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC;oBAC1C,SAAS,EAAE,sBAAe,CAAC,QAAQ,EAAE,IAAI,CAAC;oBAC1C,aAAa,EAAE,sBAAe,CAAC,SAAS,EAAE,KAAK,CAAC;iBAChD,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,CAAC;gBAEzC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;oBACvB,MAAM,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;wBACpC,MAAM,OAAO,GAAG,GAAG,EAAE;4BACpB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;4BAClF,YAAY,CAAC,KAAK,CAAC,CAAC;wBACrB,CAAC,CAAC;wBACF,MAAM,OAAO,GAAG,GAAG,EAAE;4BACpB,OAAO,EAAE,CAAC;4BACV,GAAG,EAAE,CAAC;wBACP,CAAC,CAAC;wBACF,MAAM,MAAM,GAAG,CAAC,GAAU,EAAE,EAAE;4BAC7B,OAAO,EAAE,CAAC;4BACV,GAAG,CAAC,GAAG,CAAC,CAAC;wBACV,CAAC,CAAC;wBAEF,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,EAAE;4BACnC,IAAI,KAAK,EAAE;gCACV,OAAO,EAAE,CAAC;6BACV;wBACF,CAAC,CAAC;wBACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC,CAAC;wBACrG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACzC,CAAC,CAAC,CAAC;iBACH;aACD;YAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,iBAAiB,EAAE,CAAC;YAC5D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE;gBACvB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;aAC7D;YAED,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC,IAAI,CAAC,iBAAiB,EAAE,eAAe,GAAG,IAAI,CAAC,CAAC;QAChF,CAAC;KAAA;IAEO,WAAW;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAChD,QAAQ,CAAC,IAAI,CAAC,CAAC;SACf;IACF,CAAC;IAEY,YAAY;;YACxB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;gBACnB,OAAO;aACP;YAED,aAAa,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;YAExB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC;YAExC,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;gBACtB,MAAM,IAAI,OAAO,CAAO,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;oBACpC,MAAM,OAAO,GAAG,GAAG,EAAE;wBACpB,IAAI,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC;wBAClF,YAAY,CAAC,KAAK,CAAC,CAAC;oBACrB,CAAC,CAAC;oBACF,MAAM,OAAO,GAAG,GAAG,EAAE;wBACpB,OAAO,EAAE,CAAC;wBACV,GAAG,EAAE,CAAC;oBACP,CAAC,CAAC;oBACF,MAAM,MAAM,GAAG,CAAC,GAAU,EAAE,EAAE;wBAC7B,OAAO,EAAE,CAAC;wBACV,GAAG,CAAC,GAAG,CAAC,CAAC;oBACV,CAAC,CAAC;oBAEF,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAE,EAAE;wBACnC,IAAI,CAAC,KAAK,EAAE;4BACX,OAAO,EAAE,CAAC;yBACV;oBACF,CAAC,CAAC;oBACF,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC,CAAC;oBACrG,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAC;aACH;QACF,CAAC;KAAA;IAEO,UAAU;QACjB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAEtB,IAAI,IAAI,CAAC,eAAe,EAAE;YACzB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,mBAAmB,EAAE;gBAChD,QAAQ,CAAC,KAAK,CAAC,CAAC;aAChB;YAED,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,OAAO;SACP;QAED,8FAA8F;QAC9F,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;YAC/B,QAAQ;QACT,CAAC,CAAC,CAAC;IACJ,CAAC;IA8CM,aAAa;QACnB,OAAO,KAAK,CAAC;IACd,CAAC;IAEY,gBAAgB;;YAC5B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5C,CAAC;KAAA;IACY,eAAe;;YAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5C,CAAC;KAAA;IAEY,SAAS;;YACrB,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC5C,CAAC;KAAA;CACD;AA3PD,kCA2PC"} \ No newline at end of file +{"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../../src/bindings/dbus/Adapter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/bindings/dbus/gatt/Characteristic.js b/lib/bindings/dbus/gatt/Characteristic.js index b5fcfbb4..c0c65295 100644 --- a/lib/bindings/dbus/gatt/Characteristic.js +++ b/lib/bindings/dbus/gatt/Characteristic.js @@ -37,7 +37,7 @@ class DbusGattCharacteristic extends models_1.GattCharacteristic { return __awaiter(this, void 0, void 0, function* () { const iface = yield this.getInterface(); return iface.ReadValue({ - offset: misc_1.buildTypedValue('uint16', 0) + offset: (0, misc_1.buildTypedValue)('uint16', 0) }); }); } @@ -45,8 +45,8 @@ class DbusGattCharacteristic extends models_1.GattCharacteristic { return __awaiter(this, void 0, void 0, function* () { const iface = yield this.getInterface(); yield iface.WriteValue([...data], { - offset: misc_1.buildTypedValue('uint16', 0), - type: misc_1.buildTypedValue('string', withoutResponse ? 'command' : 'request') + offset: (0, misc_1.buildTypedValue)('uint16', 0), + type: (0, misc_1.buildTypedValue)('string', withoutResponse ? 'command' : 'request') }); }); } diff --git a/lib/bindings/dbus/gatt/Characteristic.js.map b/lib/bindings/dbus/gatt/Characteristic.js.map index 3f972533..0baba1d7 100644 --- a/lib/bindings/dbus/gatt/Characteristic.js.map +++ b/lib/bindings/dbus/gatt/Characteristic.js.map @@ -1 +1 @@ -{"version":3,"file":"Characteristic.js","sourceRoot":"","sources":["../../../../src/bindings/dbus/gatt/Characteristic.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Characteristic.js","sourceRoot":"","sources":["../../../../src/bindings/dbus/gatt/Characteristic.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/bindings/hci/gatt/GattRemote.js b/lib/bindings/hci/gatt/GattRemote.js index 94c72239..ddf073ac 100644 --- a/lib/bindings/hci/gatt/GattRemote.js +++ b/lib/bindings/hci/gatt/GattRemote.js @@ -71,7 +71,7 @@ class HciGattRemote extends models_1.GattRemote { this.hci = hci; this.hci.on('aclDataPkt', this.onAclStreamData); this.cmdTimeout = cmdTimeout; - this.mutex = async_mutex_1.withTimeout(new async_mutex_1.Mutex(), this.cmdTimeout, new models_1.GattError(peripheral, 'GATT command mutex timeout')); + this.mutex = (0, async_mutex_1.withTimeout)(new async_mutex_1.Mutex(), this.cmdTimeout, new models_1.GattError(peripheral, 'GATT command mutex timeout')); this.currentCmd = null; this.mtuWasExchanged = false; } diff --git a/lib/bindings/hci/gatt/GattRemote.js.map b/lib/bindings/hci/gatt/GattRemote.js.map index 27981f44..d301850c 100644 --- a/lib/bindings/hci/gatt/GattRemote.js.map +++ b/lib/bindings/hci/gatt/GattRemote.js.map @@ -1 +1 @@ -{"version":3,"file":"GattRemote.js","sourceRoot":"","sources":["../../../../src/bindings/hci/gatt/GattRemote.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"GattRemote.js","sourceRoot":"","sources":["../../../../src/bindings/hci/gatt/GattRemote.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/bindings/hci/misc/Hci.js b/lib/bindings/hci/misc/Hci.js index 5dec90e9..1d741034 100644 --- a/lib/bindings/hci/misc/Hci.js +++ b/lib/bindings/hci/misc/Hci.js @@ -128,9 +128,9 @@ class Hci extends tiny_typed_emitter_1.TypedEmitter { this.handles = new Map(); this.currentCmd = null; this.cmdTimeout = cmdTimeout; - this.cmdMutex = async_mutex_1.withTimeout(new async_mutex_1.Mutex(), this.cmdTimeout, new HciError_1.HciError(`HCI command mutex timeout`)); + this.cmdMutex = (0, async_mutex_1.withTimeout)(new async_mutex_1.Mutex(), this.cmdTimeout, new HciError_1.HciError(`HCI command mutex timeout`)); this.connTimeout = connTimeout; - this.connMutex = async_mutex_1.withTimeout(new async_mutex_1.Mutex(), this.connTimeout, new HciError_1.HciError(`HCI connection mutex timeout`)); + this.connMutex = (0, async_mutex_1.withTimeout)(new async_mutex_1.Mutex(), this.connTimeout, new HciError_1.HciError(`HCI connection mutex timeout`)); } static createSocket() { let Socket; diff --git a/lib/bindings/hci/misc/Hci.js.map b/lib/bindings/hci/misc/Hci.js.map index 704ef2a8..04c781c4 100644 --- a/lib/bindings/hci/misc/Hci.js.map +++ b/lib/bindings/hci/misc/Hci.js.map @@ -1 +1 @@ -{"version":3,"file":"Hci.js","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Hci.js","sourceRoot":"","sources":["../../../../src/bindings/hci/misc/Hci.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/models/Adapter.js b/lib/models/Adapter.js index c746b3ab..ac5ca6b7 100644 --- a/lib/models/Adapter.js +++ b/lib/models/Adapter.js @@ -103,7 +103,7 @@ class Adapter extends tiny_typed_emitter_1.TypedEmitter { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/Adapter.js.map b/lib/models/Adapter.js.map index 12db8c37..1d1fb781 100644 --- a/lib/models/Adapter.js.map +++ b/lib/models/Adapter.js.map @@ -1 +1 @@ -{"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../src/models/Adapter.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Adapter.js","sourceRoot":"","sources":["../../src/models/Adapter.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/models/Peripheral.js b/lib/models/Peripheral.js index 63441668..9825e9b2 100644 --- a/lib/models/Peripheral.js +++ b/lib/models/Peripheral.js @@ -49,7 +49,7 @@ class Peripheral { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/Peripheral.js.map b/lib/models/Peripheral.js.map index 143e7d3a..61a771a6 100644 --- a/lib/models/Peripheral.js.map +++ b/lib/models/Peripheral.js.map @@ -1 +1 @@ -{"version":3,"file":"Peripheral.js","sourceRoot":"","sources":["../../src/models/Peripheral.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAK/B,uCAA2D;AAkC3D;;GAEG;AACH,MAAsB,UAAU;IAmD/B,YACC,OAAgB,EAChB,IAAY,EACZ,IAAY,EACZ,WAAwB,EACxB,OAAe,EACf,aAAsB,EACtB,IAAa;QAEb,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;IAC9B,CAAC;IA5DD,IAAW,IAAI;QACd,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IA6BD;;OAEG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IA4CM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAzHD,gCAyHC"} \ No newline at end of file +{"version":3,"file":"Peripheral.js","sourceRoot":"","sources":["../../src/models/Peripheral.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAK/B,uCAA2D;AAkC3D;;GAEG;AACH,MAAsB,UAAU;IAmD/B,YACC,OAAgB,EAChB,IAAY,EACZ,IAAY,EACZ,WAAwB,EACxB,OAAe,EACf,aAAsB,EACtB,IAAa;QAEb,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC;QACtC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QAEjB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;IAC9B,CAAC;IA5DD,IAAW,IAAI;QACd,IAAI,IAAI,CAAC,KAAK,KAAK,WAAW,EAAE;YAC/B,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SACzD;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACnB,CAAC;IA6BD;;OAEG;IACH,IAAW,KAAK;QACf,OAAO,IAAI,CAAC,MAAM,CAAC;IACpB,CAAC;IA4CM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,OAAO,EAAE,IAAI,CAAC,OAAO;SACrB,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAzHD,gCAyHC"} \ No newline at end of file diff --git a/lib/models/gatt/Characteristic.js b/lib/models/gatt/Characteristic.js index 68499b4b..6739de2d 100644 --- a/lib/models/gatt/Characteristic.js +++ b/lib/models/gatt/Characteristic.js @@ -201,7 +201,7 @@ class GattCharacteristic extends tiny_typed_emitter_1.TypedEmitter { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/gatt/Characteristic.js.map b/lib/models/gatt/Characteristic.js.map index 8879e06c..c4a6cdda 100644 --- a/lib/models/gatt/Characteristic.js.map +++ b/lib/models/gatt/Characteristic.js.map @@ -1 +1 @@ -{"version":3,"file":"Characteristic.js","sourceRoot":"","sources":["../../../src/models/gatt/Characteristic.ts"],"names":[],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"Characteristic.js","sourceRoot":"","sources":["../../../src/models/gatt/Characteristic.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/lib/models/gatt/Descriptor.js b/lib/models/gatt/Descriptor.js index 9eaf84a3..ff29b1f9 100644 --- a/lib/models/gatt/Descriptor.js +++ b/lib/models/gatt/Descriptor.js @@ -58,7 +58,7 @@ class GattDescriptor { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/gatt/Descriptor.js.map b/lib/models/gatt/Descriptor.js.map index ed8b6f23..a65b0ce0 100644 --- a/lib/models/gatt/Descriptor.js.map +++ b/lib/models/gatt/Descriptor.js.map @@ -1 +1 @@ -{"version":3,"file":"Descriptor.js","sourceRoot":"","sources":["../../../src/models/gatt/Descriptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAA+B;AAE/B,wCAA4D;AAI5D;;GAEG;AACH,MAAsB,cAAc;IAkBnC,YAAmB,cAAkC,EAAE,IAAY,EAAE,QAAiB,EAAE,KAAc;QACrG,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;IAaY,UAAU,CAAC,MAAc;;YACrC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC1D;YAED,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;KAAA;IAEY,WAAW,CAAC,MAAc,EAAE,IAAY;;YACpD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC1D;YACD,IAAI,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACnE;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,OAAO,CAAC,CAAC;QACV,CAAC;KAAA;IAEM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAjFD,wCAiFC"} \ No newline at end of file +{"version":3,"file":"Descriptor.js","sourceRoot":"","sources":["../../../src/models/gatt/Descriptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,+BAA+B;AAE/B,wCAA4D;AAI5D;;GAEG;AACH,MAAsB,cAAc;IAkBnC,YAAmB,cAAkC,EAAE,IAAY,EAAE,QAAiB,EAAE,KAAc;QACrG,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAEzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,CAAC;IAaY,UAAU,CAAC,MAAc;;YACrC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC1D;YAED,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACjC,CAAC;KAAA;IAEY,WAAW,CAAC,MAAc,EAAE,IAAY;;YACpD,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAClB,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;aAC1D;YACD,IAAI,MAAM,EAAE;gBACX,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;aACnE;YAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAClB,OAAO,CAAC,CAAC;QACV,CAAC;KAAA;IAEM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,cAAc,EAAE,IAAI,CAAC,cAAc;SACnC,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAjFD,wCAiFC"} \ No newline at end of file diff --git a/lib/models/gatt/Gatt.js b/lib/models/gatt/Gatt.js index 02d4273a..b96880e4 100644 --- a/lib/models/gatt/Gatt.js +++ b/lib/models/gatt/Gatt.js @@ -43,7 +43,7 @@ class Gatt { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/gatt/Gatt.js.map b/lib/models/gatt/Gatt.js.map index 5ae9d6a2..529afd25 100644 --- a/lib/models/gatt/Gatt.js.map +++ b/lib/models/gatt/Gatt.js.map @@ -1 +1 @@ -{"version":3,"file":"Gatt.js","sourceRoot":"","sources":["../../../src/models/gatt/Gatt.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAE/B,wCAA4D;AAI5D;;GAEG;AACH,MAAsB,IAAI;IAqBzB,YAAmB,GAAY,EAAE,QAAwB;QAfzD;;;WAGG;QACa,aAAQ,GAA6B,IAAI,GAAG,EAAE,CAAC;QAY9D,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,QAAQ,EAAE;YACb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACzC;SACD;IACF,CAAC;IAhBD;;;OAGG;IACH,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAYM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;SAC5B,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAvDD,oBAuDC"} \ No newline at end of file +{"version":3,"file":"Gatt.js","sourceRoot":"","sources":["../../../src/models/gatt/Gatt.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAE/B,wCAA4D;AAI5D;;GAEG;AACH,MAAsB,IAAI;IAqBzB,YAAmB,GAAY,EAAE,QAAwB;QAfzD;;;WAGG;QACa,aAAQ,GAA6B,IAAI,GAAG,EAAE,CAAC;QAY9D,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,QAAQ,EAAE;YACb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACzC;SACD;IACF,CAAC;IAhBD;;;OAGG;IACH,IAAW,GAAG;QACb,OAAO,IAAI,CAAC,IAAI,CAAC;IAClB,CAAC;IAYM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;SAC5B,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAvDD,oBAuDC"} \ No newline at end of file diff --git a/lib/models/gatt/GattLocal.js b/lib/models/gatt/GattLocal.js index ecb8e949..69fa214b 100644 --- a/lib/models/gatt/GattLocal.js +++ b/lib/models/gatt/GattLocal.js @@ -33,7 +33,7 @@ class GattLocal extends Gatt_1.Gatt { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/gatt/GattLocal.js.map b/lib/models/gatt/GattLocal.js.map index edcae2ce..1468e95b 100644 --- a/lib/models/gatt/GattLocal.js.map +++ b/lib/models/gatt/GattLocal.js.map @@ -1 +1 @@ -{"version":3,"file":"GattLocal.js","sourceRoot":"","sources":["../../../src/models/gatt/GattLocal.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAG/B,wCAA4D;AAE5D,iCAA8B;AAG9B;;GAEG;AACH,MAAsB,SAAU,SAAQ,WAAI;IAU3C,YAAmB,OAAgB,EAAE,GAAY,EAAE,QAAwB;QAC1E,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAErB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,QAAQ,EAAE;YACb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACzC;SACD;IACF,CAAC;IAdD,IAAW,QAAQ;QAClB,OAAO,KAAK,CAAC;IACd,CAAC;IAyBM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO,EAAE,CAAC;IACX,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAtDD,8BAsDC"} \ No newline at end of file +{"version":3,"file":"GattLocal.js","sourceRoot":"","sources":["../../../src/models/gatt/GattLocal.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAG/B,wCAA4D;AAE5D,iCAA8B;AAG9B;;GAEG;AACH,MAAsB,SAAU,SAAQ,WAAI;IAU3C,YAAmB,OAAgB,EAAE,GAAY,EAAE,QAAwB;QAC1E,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAErB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QAEvB,IAAI,QAAQ,EAAE;YACb,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE;gBAC/B,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;aACzC;SACD;IACF,CAAC;IAdD,IAAW,QAAQ;QAClB,OAAO,KAAK,CAAC;IACd,CAAC;IAyBM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO,EAAE,CAAC;IACX,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AAtDD,8BAsDC"} \ No newline at end of file diff --git a/lib/models/gatt/Service.js b/lib/models/gatt/Service.js index 173c824a..a452addd 100644 --- a/lib/models/gatt/Service.js +++ b/lib/models/gatt/Service.js @@ -33,7 +33,7 @@ class GattService { } const newOptions = Object.assign(Object.assign({}, options), { depth: options.depth === null ? null : options.depth - 1 }); const padding = ' '.repeat(name.length + 1); - const inner = util_1.inspect(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); + const inner = (0, util_1.inspect)(this.toJSON(), newOptions).replace(/\n/g, `\n${padding}`); return `${options.stylize(name, 'special')} ${inner}`; } } diff --git a/lib/models/gatt/Service.js.map b/lib/models/gatt/Service.js.map index 251d4f99..372a682f 100644 --- a/lib/models/gatt/Service.js.map +++ b/lib/models/gatt/Service.js.map @@ -1 +1 @@ -{"version":3,"file":"Service.js","sourceRoot":"","sources":["../../../src/models/gatt/Service.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAE/B,wCAA4D;AAK5D;;GAEG;AACH,MAAsB,WAAW;IAsBhC,YAAmB,IAAU,EAAE,IAAY,EAAE,QAAiB;QAN9D;;;WAGG;QACa,oBAAe,GAAoC,IAAI,GAAG,EAAE,CAAC;QAG5E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IA4BM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,cAAO,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AA9ED,kCA8EC"} \ No newline at end of file +{"version":3,"file":"Service.js","sourceRoot":"","sources":["../../../src/models/gatt/Service.ts"],"names":[],"mappings":";;;AAAA,+BAA+B;AAE/B,wCAA4D;AAK5D;;GAEG;AACH,MAAsB,WAAW;IAsBhC,YAAmB,IAAU,EAAE,IAAY,EAAE,QAAiB;QAN9D;;;WAGG;QACa,oBAAe,GAAoC,IAAI,GAAG,EAAE,CAAC;QAG5E,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,CAAC;IA4BM,QAAQ;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACtC,CAAC;IAEM,MAAM;QACZ,OAAO;YACN,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC;IACH,CAAC;IAEM,CAAC,gBAAM,CAAC,CAAC,KAAa,EAAE,OAA+B;QAC7D,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACd,OAAO,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,GAAG,EAAE,SAAS,CAAC,CAAC;SAC/C;QAED,MAAM,UAAU,mCAAQ,OAAO,KAAE,KAAK,EAAE,OAAO,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,GAAG,CAAC,GAAE,CAAC;QAE5F,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAA,cAAO,EAAC,IAAI,CAAC,MAAM,EAAE,EAAE,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,KAAK,OAAO,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,IAAI,KAAK,EAAE,CAAC;IACvD,CAAC;CACD;AA9ED,kCA8EC"} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index 36b9be57..261e1201 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@modum-io/modblue", - "version": "12.0.4", + "version": "12.0.5", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@modum-io/modblue", - "version": "12.0.4", + "version": "12.0.5", "hasInstallScript": true, "license": "UNLICENSED", "dependencies": { diff --git a/package.json b/package.json index 66c51bff..187c9f8a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@modum-io/modblue", - "version": "12.0.4", + "version": "12.0.5", "description": "BLE module using dbus or hci.", "homepage": "https://modum-io.github.io/modblue/", "bugs": {