From d83c4e4e506d963c6f2504e0a8913141f1e6605a Mon Sep 17 00:00:00 2001 From: Bholendra Singh <47040352+bholendraofficial@users.noreply.github.com> Date: Wed, 26 May 2021 00:57:00 +0530 Subject: [PATCH] doc added --- .idea/virtualcreditcard.iml | 9 + doc/api/__404error.html | 95 ++ doc/api/cardtype/CardType-class.html | 271 +++++ doc/api/cardtype/CardType/toString.html | 134 +++ doc/api/cardtype/cardtype-library.html | 123 +++ doc/api/categories.json | 1 + doc/api/index.html | 123 +++ doc/api/index.json | 1 + doc/api/static-assets/favicon.png | Bin 0 -> 916 bytes doc/api/static-assets/github.css | 99 ++ doc/api/static-assets/highlight.pack.js | 691 ++++++++++++ doc/api/static-assets/play_button.svg | 1 + doc/api/static-assets/readme.md | 19 + doc/api/static-assets/script.js | 272 +++++ doc/api/static-assets/styles.css | 996 ++++++++++++++++++ doc/api/static-assets/typeahead.bundle.min.js | 8 + .../VirtualCreditCard-class.html | 371 +++++++ .../VirtualCreditCard/VirtualCreditCard.html | 162 +++ .../VirtualCreditCard/backgroundColor.html | 137 +++ .../VirtualCreditCard/cardHolderName.html | 137 +++ .../VirtualCreditCard/cardNumber.html | 137 +++ .../VirtualCreditCard/createState.html | 158 +++ .../VirtualCreditCard/cvv.html | 137 +++ .../VirtualCreditCard/expiryMonth.html | 137 +++ .../VirtualCreditCard/expiryYear.html | 137 +++ .../VirtualCreditCard/showShadow.html | 137 +++ .../virtualcreditcard-library.html | 123 +++ .../VirtualCreditCardWeb-class.html | 371 +++++++ .../VirtualCreditCardWeb.html | 162 +++ .../VirtualCreditCardWeb/backgroundColor.html | 137 +++ .../VirtualCreditCardWeb/cardHolderName.html | 137 +++ .../VirtualCreditCardWeb/cardNumber.html | 137 +++ .../VirtualCreditCardWeb/createState.html | 158 +++ .../VirtualCreditCardWeb/cvv.html | 137 +++ .../VirtualCreditCardWeb/expiryMonth.html | 137 +++ .../VirtualCreditCardWeb/expiryYear.html | 137 +++ .../VirtualCreditCardWeb/showShadow.html | 137 +++ .../virtualcreditcard_web-library.html | 123 +++ 38 files changed, 6389 insertions(+) create mode 100644 doc/api/__404error.html create mode 100644 doc/api/cardtype/CardType-class.html create mode 100644 doc/api/cardtype/CardType/toString.html create mode 100644 doc/api/cardtype/cardtype-library.html create mode 100644 doc/api/categories.json create mode 100644 doc/api/index.html create mode 100644 doc/api/index.json create mode 100644 doc/api/static-assets/favicon.png create mode 100644 doc/api/static-assets/github.css create mode 100644 doc/api/static-assets/highlight.pack.js create mode 100644 doc/api/static-assets/play_button.svg create mode 100644 doc/api/static-assets/readme.md create mode 100644 doc/api/static-assets/script.js create mode 100644 doc/api/static-assets/styles.css create mode 100644 doc/api/static-assets/typeahead.bundle.min.js create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard-class.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/VirtualCreditCard.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/backgroundColor.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/cardHolderName.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/cardNumber.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/createState.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/cvv.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/expiryMonth.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/expiryYear.html create mode 100644 doc/api/virtualcreditcard/VirtualCreditCard/showShadow.html create mode 100644 doc/api/virtualcreditcard/virtualcreditcard-library.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb-class.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/VirtualCreditCardWeb.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/backgroundColor.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/cardHolderName.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/cardNumber.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/createState.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/cvv.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/expiryMonth.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/expiryYear.html create mode 100644 doc/api/virtualcreditcard_web/VirtualCreditCardWeb/showShadow.html create mode 100644 doc/api/virtualcreditcard_web/virtualcreditcard_web-library.html diff --git a/.idea/virtualcreditcard.iml b/.idea/virtualcreditcard.iml index 55d90fc..55d3b87 100644 --- a/.idea/virtualcreditcard.iml +++ b/.idea/virtualcreditcard.iml @@ -9,6 +9,15 @@ + + + + + + + + + diff --git a/doc/api/__404error.html b/doc/api/__404error.html new file mode 100644 index 0000000..b12ca2a --- /dev/null +++ b/doc/api/__404error.html @@ -0,0 +1,95 @@ + + + + + + + + + virtualcreditcard - Dart API docs + + + + + + + + + + + + + +
+ +
+ + +
virtualcreditcard
+ +
+ +
+ + + +
+

404: Something's gone wrong :-(

+ +
+

You've tried to visit a page that doesn't exist. Luckily this site + has other pages.

+

If you were looking for something specific, try searching: +

+

+ +
+
+ + + +
+ +
+ + virtualcreditcard + 0.0.2 + + +
+ + + + + + + + + + diff --git a/doc/api/cardtype/CardType-class.html b/doc/api/cardtype/CardType-class.html new file mode 100644 index 0000000..9b85895 --- /dev/null +++ b/doc/api/cardtype/CardType-class.html @@ -0,0 +1,271 @@ + + + + + + + + CardType enum - cardtype library - Dart API + + + + + + + + + + + + + +
+ +
+ + +
CardType
+ +
+ +
+ + + +
+

CardType enum Null safety +

+ + + +
+

Constants

+ +
+
+ americanExpress + → const CardType +
+
+ + +
+ const CardType(3) +
+
+
+ discover + → const CardType +
+
+ + +
+ const CardType(4) +
+
+
+ mastercard + → const CardType +
+
+ + +
+ const CardType(1) +
+
+
+ otherBrand + → const CardType +
+
+ + +
+ const CardType(0) +
+
+
+ values + → const List<CardType> +
+
+

A constant List of the values in this enum, in order of their declaration.

+ +
+ const List<CardType> +
+
+
+ visa + → const CardType +
+
+ + +
+ const CardType(2) +
+
+
+
+ + +
+

Properties

+ +
+
+ hashCode + int +
+
+ The hash code for this object. [...] +
read-only, inherited
+
+
+ index + int +
+
+

The integer index of this enum.

+
final
+
+
+ runtimeType + Type +
+
+ A representation of the runtime type of the object. +
read-only, inherited
+
+
+
+ +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + +
+
+ Invoked when a non-existent method or property is accessed. [...] +
inherited
+
+
+ toString() + String + +
+
+ A string representation of this object. [...] +
override
+
+
+
+ +
+

Operators

+
+
+ operator ==(Object other) + bool + +
+
+ The equality operator. [...] +
inherited
+
+
+
+ + +
+ + + +
+ +
+ + virtualcreditcard + 0.0.2 + + +
+ + + + + + + + + + diff --git a/doc/api/cardtype/CardType/toString.html b/doc/api/cardtype/CardType/toString.html new file mode 100644 index 0000000..4b617b6 --- /dev/null +++ b/doc/api/cardtype/CardType/toString.html @@ -0,0 +1,134 @@ + + + + + + + + toString method - CardType extension - cardtype library - Dart API + + + + + + + + + + + + + +
+ +
+ + +
toString
+ +
+ +
+ + + +
+

toString method Null safety +

+ +
+ String + toString +() +
override
+
+
+

A string representation of this object.

+

Some classes have a default textual representation, +often paired with a static parse function (like int.parse). +These classes will provide the textual representation as +their string represetion.

+

Other classes have no meaningful textual representation +that a program will care about. +Such classes will typically override toString to provide +useful information when inspecting the object, +mainly for debugging or logging.

+
+ + + +
+ + + +
+ +
+ + virtualcreditcard + 0.0.2 + + +
+ + + + + + + + + + diff --git a/doc/api/cardtype/cardtype-library.html b/doc/api/cardtype/cardtype-library.html new file mode 100644 index 0000000..f2af524 --- /dev/null +++ b/doc/api/cardtype/cardtype-library.html @@ -0,0 +1,123 @@ + + + + + + + + cardtype library - Dart API + + + + + + + + + + + + + +
+ +
+ + +
cardtype
+ +
+ +
+ + + +
+

cardtype library Null safety +

+ + + + + + + + +
+

Enums

+ +
+
+ CardType +
+
+ +
+
+
+ + + +
+ + + +
+ +
+ + virtualcreditcard + 0.0.2 + + +
+ + + + + + + + + + diff --git a/doc/api/categories.json b/doc/api/categories.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/doc/api/categories.json @@ -0,0 +1 @@ +[] diff --git a/doc/api/index.html b/doc/api/index.html new file mode 100644 index 0000000..5131e11 --- /dev/null +++ b/doc/api/index.html @@ -0,0 +1,123 @@ + + + + + + + + + virtualcreditcard - Dart API docs + + + + + + + + + + + + + +
+ +
+ + +
virtualcreditcard
+ +
+ +
+ + + +
+
+

virtualcreditcard

+

Virtual Credit Card Widget

+

Getting Started

+

https://pub.dev/packages/virtualcreditcard

+

This project is a starting point for a Flutter +plug-in package, +a specialized package that includes platform-specific implementation code for +Android and/or iOS.

+

For help getting started with Flutter, view our +online documentation, which offers tutorials, +samples, guidance on mobile development, and a full API reference.

+

Simulator Screen Shot - iPhone 12 Pro Max - 2021-05-25 at 23 24 18 +Simulator Screen Shot - iPhone 12 Pro Max - 2021-05-25 at 23 24 23

+
+ +
+

Libraries

+
+
+ cardtype +
+
+ +
+
+ virtualcreditcard +
+
+ +
+
+ virtualcreditcard_web +
+
+ +
+
+
+ +
+ + + +
+ +
+ + virtualcreditcard + 0.0.2 + + +
+ + + + + + + + + + diff --git a/doc/api/index.json b/doc/api/index.json new file mode 100644 index 0000000..62dccd7 --- /dev/null +++ b/doc/api/index.json @@ -0,0 +1 @@ +[{"name":"cardtype","qualifiedName":"cardtype","href":"cardtype/cardtype-library.html","type":"library","overriddenDepth":0,"packageName":"virtualcreditcard"},{"name":"CardType","qualifiedName":"cardtype.CardType","href":"cardtype/CardType-class.html","type":"enum","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"cardtype","type":"library"}},{"name":"toString","qualifiedName":"cardtype.CardType.toString","href":"cardtype/CardType/toString.html","type":"method","overriddenDepth":1,"packageName":"virtualcreditcard","enclosedBy":{"name":"CardType","type":"enum"}},{"name":"virtualcreditcard","qualifiedName":"virtualcreditcard","href":"virtualcreditcard/virtualcreditcard-library.html","type":"library","overriddenDepth":0,"packageName":"virtualcreditcard"},{"name":"VirtualCreditCard","qualifiedName":"virtualcreditcard.VirtualCreditCard","href":"virtualcreditcard/VirtualCreditCard-class.html","type":"class","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"virtualcreditcard","type":"library"}},{"name":"VirtualCreditCard","qualifiedName":"virtualcreditcard.VirtualCreditCard.VirtualCreditCard","href":"virtualcreditcard/VirtualCreditCard/VirtualCreditCard.html","type":"constructor","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"backgroundColor","qualifiedName":"virtualcreditcard.VirtualCreditCard.backgroundColor","href":"virtualcreditcard/VirtualCreditCard/backgroundColor.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"cardHolderName","qualifiedName":"virtualcreditcard.VirtualCreditCard.cardHolderName","href":"virtualcreditcard/VirtualCreditCard/cardHolderName.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"cardNumber","qualifiedName":"virtualcreditcard.VirtualCreditCard.cardNumber","href":"virtualcreditcard/VirtualCreditCard/cardNumber.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"createState","qualifiedName":"virtualcreditcard.VirtualCreditCard.createState","href":"virtualcreditcard/VirtualCreditCard/createState.html","type":"method","overriddenDepth":1,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"cvv","qualifiedName":"virtualcreditcard.VirtualCreditCard.cvv","href":"virtualcreditcard/VirtualCreditCard/cvv.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"expiryMonth","qualifiedName":"virtualcreditcard.VirtualCreditCard.expiryMonth","href":"virtualcreditcard/VirtualCreditCard/expiryMonth.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"expiryYear","qualifiedName":"virtualcreditcard.VirtualCreditCard.expiryYear","href":"virtualcreditcard/VirtualCreditCard/expiryYear.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"showShadow","qualifiedName":"virtualcreditcard.VirtualCreditCard.showShadow","href":"virtualcreditcard/VirtualCreditCard/showShadow.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCard","type":"class"}},{"name":"virtualcreditcard_web","qualifiedName":"virtualcreditcard_web","href":"virtualcreditcard_web/virtualcreditcard_web-library.html","type":"library","overriddenDepth":0,"packageName":"virtualcreditcard"},{"name":"VirtualCreditCardWeb","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb","href":"virtualcreditcard_web/VirtualCreditCardWeb-class.html","type":"class","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"virtualcreditcard_web","type":"library"}},{"name":"VirtualCreditCardWeb","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.VirtualCreditCardWeb","href":"virtualcreditcard_web/VirtualCreditCardWeb/VirtualCreditCardWeb.html","type":"constructor","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"backgroundColor","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.backgroundColor","href":"virtualcreditcard_web/VirtualCreditCardWeb/backgroundColor.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"cardHolderName","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.cardHolderName","href":"virtualcreditcard_web/VirtualCreditCardWeb/cardHolderName.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"cardNumber","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.cardNumber","href":"virtualcreditcard_web/VirtualCreditCardWeb/cardNumber.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"createState","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.createState","href":"virtualcreditcard_web/VirtualCreditCardWeb/createState.html","type":"method","overriddenDepth":1,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"cvv","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.cvv","href":"virtualcreditcard_web/VirtualCreditCardWeb/cvv.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"expiryMonth","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.expiryMonth","href":"virtualcreditcard_web/VirtualCreditCardWeb/expiryMonth.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"expiryYear","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.expiryYear","href":"virtualcreditcard_web/VirtualCreditCardWeb/expiryYear.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}},{"name":"showShadow","qualifiedName":"virtualcreditcard_web.VirtualCreditCardWeb.showShadow","href":"virtualcreditcard_web/VirtualCreditCardWeb/showShadow.html","type":"property","overriddenDepth":0,"packageName":"virtualcreditcard","enclosedBy":{"name":"VirtualCreditCardWeb","type":"class"}}] diff --git a/doc/api/static-assets/favicon.png b/doc/api/static-assets/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..7d3901dedea536544db72421a92a1e1a5bd7b9a3 GIT binary patch literal 916 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!SkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?o1&1o(uwx)=B)od2JA;lF0-I<1_!Nni$0B;_JVP`6^ePWk%uGe5P;))`c8 z0E#4E_^({FCiUWfy^8ff1XKWID;BO+EnW*`YnQLnEM2QnvKFXIqZCR4wE)>bWk5p` z&;M610Vx2g1eyjEfpGOIH^}F$0tzOd`>WTrUnX~@cG)_qoE60vekGp!2UO#|F%UwgUHl(>?1y312LF8@fQH0O zJy3q>SNQQC#^tL_OBY9-`03NN%d~V!%;8UoJD=M&ZjD=XK6ct6qpFRbojZ-HHzu6= zS$^?n?8%>n7k;MheqM6=bMXF;rnQ@DR-TEQc98E@Q!+3>JxhZ8f*Ck{eWG%GInFtq zJI8hIZ}>Wnx3{kEeZj$TdZLrmdV_@;D=qJ27_rJtcB>asc)@Y*ZWqTnj%$95l>!_< zaQ4oZkKet>E9d3O3u|}%6;!jIc=2#*tBl2wCqFee zP2ytDU=9;JR44U8U*~-)!+j@)%?eD0ymSChl4hU#A3#|3JEh9Ggy9GXCyOZ9b{`e#N(i8k-t#&3`2<1 zFU#w05)Dos%ok)58HyB{4_q-}p1>8!@a&mngU=7<1jSo)ha)-afr$M?1}F@%)|Ept+2xac~qpmgHt;uS9G=Okj!Pup3UzjTtq zD8U&o?+&`|s|ATd|T#)9xSgt3)RKVcr L>gTe~DWM4fXC8_& literal 0 HcmV?d00001 diff --git a/doc/api/static-assets/github.css b/doc/api/static-assets/github.css new file mode 100644 index 0000000..791932b --- /dev/null +++ b/doc/api/static-assets/github.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/doc/api/static-assets/highlight.pack.js b/doc/api/static-assets/highlight.pack.js new file mode 100644 index 0000000..0df1807 --- /dev/null +++ b/doc/api/static-assets/highlight.pack.js @@ -0,0 +1,691 @@ +/* + Highlight.js 10.5.0 (af20048d) + License: BSD-3-Clause + Copyright (c) 2006-2020, Ivan Sagalaev +*/ +var hljs=function(){"use strict";function e(t){ +return t instanceof Map?t.clear=t.delete=t.set=()=>{ +throw Error("map is read-only")}:t instanceof Set&&(t.add=t.clear=t.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(t),Object.getOwnPropertyNames(t).forEach((n=>{var s=t[n] +;"object"!=typeof s||Object.isFrozen(s)||e(s)})),t}var t=e,n=e;t.default=n +;class s{constructor(e){void 0===e.data&&(e.data={}),this.data=e.data} +ignoreMatch(){this.ignore=!0}}function r(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function a(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const i=e=>!!e.kind +;class o{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=r(e)}openNode(e){if(!i(e))return;let t=e.kind +;e.sublanguage||(t=`${this.classPrefix}${t}`),this.span(t)}closeNode(e){ +i(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}class l{constructor(){this.rootNode={ +children:[]},this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t={kind:e,children:[]} +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +l._collapse(e)})))}}class c extends l{constructor(e){super(),this.options=e} +addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())} +addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root +;n.kind=t,n.sublanguage=!0,this.add(n)}toHTML(){ +return new o(this,this.options).value()}finalize(){return!0}}function u(e){ +return e?"string"==typeof e?e:e.source:null} +const g="[a-zA-Z]\\w*",d="[a-zA-Z_]\\w*",h="\\b\\d+(\\.\\d+)?",f="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",p="\\b(0b[01]+)",m={ +begin:"\\\\[\\s\\S]",relevance:0},b={className:"string",begin:"'",end:"'", +illegal:"\\n",contains:[m]},x={className:"string",begin:'"',end:'"', +illegal:"\\n",contains:[m]},E={ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},v=(e,t,n={})=>{const s=a({className:"comment",begin:e,end:t,contains:[]},n) +;return s.contains.push(E),s.contains.push({className:"doctag", +begin:"(?:TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",relevance:0}),s +},N=v("//","$"),w=v("/\\*","\\*/"),R=v("#","$");var y=Object.freeze({ +__proto__:null,IDENT_RE:g,UNDERSCORE_IDENT_RE:d,NUMBER_RE:h,C_NUMBER_RE:f, +BINARY_NUMBER_RE:p, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=((...e)=>e.map((e=>u(e))).join(""))(t,/.*\b/,e.binary,/\b.*/)), +a({className:"meta",begin:t,end:/$/,relevance:0,"on:begin":(e,t)=>{ +0!==e.index&&t.ignoreMatch()}},e)},BACKSLASH_ESCAPE:m,APOS_STRING_MODE:b, +QUOTE_STRING_MODE:x,PHRASAL_WORDS_MODE:E,COMMENT:v,C_LINE_COMMENT_MODE:N, +C_BLOCK_COMMENT_MODE:w,HASH_COMMENT_MODE:R,NUMBER_MODE:{className:"number", +begin:h,relevance:0},C_NUMBER_MODE:{className:"number",begin:f,relevance:0}, +BINARY_NUMBER_MODE:{className:"number",begin:p,relevance:0},CSS_NUMBER_MODE:{ +className:"number", +begin:h+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0},REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{className:"regexp", +begin:/\//,end:/\/[gimuy]*/,illegal:/\n/,contains:[m,{begin:/\[/,end:/\]/, +relevance:0,contains:[m]}]}]},TITLE_MODE:{className:"title",begin:g,relevance:0 +},UNDERSCORE_TITLE_MODE:{className:"title",begin:d,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function _(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function k(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=_,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords) +}function M(e,t){ +Array.isArray(e.illegal)&&(e.illegal=((...e)=>"("+e.map((e=>u(e))).join("|")+")")(...e.illegal)) +}function O(e,t){if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function A(e,t){ +void 0===e.relevance&&(e.relevance=1)} +const L=["of","and","for","in","not","or","if","then","parent","list","value"] +;function B(e,t){return t?Number(t):(e=>L.includes(e.toLowerCase()))(e)?0:1} +function I(e,{plugins:t}){function n(t,n){ +return RegExp(u(t),"m"+(e.case_insensitive?"i":"")+(n?"g":""))}class s{ +constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=(e=>RegExp(e.toString()+"|").exec("").length-1)(e)+1}compile(){ +0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=n(((e,t="|")=>{ +const n=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;let s=0,r="" +;for(let a=0;a0&&(r+=t),r+="(";o.length>0;){const e=n.exec(o);if(null==e){r+=o;break} +r+=o.substring(0,e.index), +o=o.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+(Number(e[1])+i):(r+=e[0], +"("===e[0]&&s++)}r+=")"}return r})(e),!0),this.lastIndex=0}exec(e){ +this.matcherRe.lastIndex=this.lastIndex;const t=this.matcherRe.exec(e) +;if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),s=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,s)}}class r{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new s +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=a(e.classNameAliases||{}),function t(s,i){const o=s +;if(s.compiled)return o +;[O].forEach((e=>e(s,i))),e.compilerExtensions.forEach((e=>e(s,i))), +s.__beforeBegin=null,[k,M,A].forEach((e=>e(s,i))),s.compiled=!0;let l=null +;if("object"==typeof s.keywords&&(l=s.keywords.$pattern, +delete s.keywords.$pattern),s.keywords&&(s.keywords=((e,t)=>{const n={} +;return"string"==typeof e?s("keyword",e):Object.keys(e).forEach((t=>{s(t,e[t]) +})),n;function s(e,s){t&&(s=s.toLowerCase()),s.split(" ").forEach((t=>{ +const s=t.split("|");n[s[0]]=[e,B(s[0],s[1])]}))} +})(s.keywords,e.case_insensitive)), +s.lexemes&&l)throw Error("ERR: Prefer `keywords.$pattern` to `mode.lexemes`, BOTH are not allowed. (see mode reference) ") +;return l=l||s.lexemes||/\w+/, +o.keywordPatternRe=n(l,!0),i&&(s.begin||(s.begin=/\B|\b/), +o.beginRe=n(s.begin),s.endSameAsBegin&&(s.end=s.begin), +s.end||s.endsWithParent||(s.end=/\B|\b/), +s.end&&(o.endRe=n(s.end)),o.terminatorEnd=u(s.end)||"", +s.endsWithParent&&i.terminatorEnd&&(o.terminatorEnd+=(s.end?"|":"")+i.terminatorEnd)), +s.illegal&&(o.illegalRe=n(s.illegal)), +s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>a(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:T(e)?a(e,{ +starts:e.starts?a(e.starts):null +}):Object.isFrozen(e)?a(e):e))("self"===e?s:e)))),s.contains.forEach((e=>{t(e,o) +})),s.starts&&t(s.starts,i),o.matcher=(e=>{const t=new r +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(o),o}(e)}function T(e){ +return!!e&&(e.endsWithParent||T(e.starts))}function j(e){const t={ +props:["language","code","autodetect"],data:()=>({detectedLanguage:"", +unknownLanguage:!1}),computed:{className(){ +return this.unknownLanguage?"":"hljs "+this.detectedLanguage},highlighted(){ +if(!this.autoDetect&&!e.getLanguage(this.language))return console.warn(`The language "${this.language}" you specified could not be found.`), +this.unknownLanguage=!0,r(this.code);let t={} +;return this.autoDetect?(t=e.highlightAuto(this.code), +this.detectedLanguage=t.language):(t=e.highlight(this.language,this.code,this.ignoreIllegals), +this.detectedLanguage=this.language),t.value},autoDetect(){ +return!(this.language&&(e=this.autodetect,!e&&""!==e));var e}, +ignoreIllegals:()=>!0},render(e){return e("pre",{},[e("code",{ +class:this.className,domProps:{innerHTML:this.highlighted}})])}};return{ +Component:t,VuePlugin:{install(e){e.component("highlightjs",t)}}}}const S={ +"after:highlightBlock":({block:e,result:t,text:n})=>{const s=D(e) +;if(!s.length)return;const a=document.createElement("div") +;a.innerHTML=t.value,t.value=((e,t,n)=>{let s=0,a="";const i=[];function o(){ +return e.length&&t.length?e[0].offset!==t[0].offset?e[0].offset"}function c(e){ +a+=""}function u(e){("start"===e.event?l:c)(e.node)} +for(;e.length||t.length;){let t=o() +;if(a+=r(n.substring(s,t[0].offset)),s=t[0].offset,t===e){i.reverse().forEach(c) +;do{u(t.splice(0,1)[0]),t=o()}while(t===e&&t.length&&t[0].offset===s) +;i.reverse().forEach(l) +}else"start"===t[0].event?i.push(t[0].node):i.pop(),u(t.splice(0,1)[0])} +return a+r(n.substr(s))})(s,D(a),n)}};function P(e){ +return e.nodeName.toLowerCase()}function D(e){const t=[];return function e(n,s){ +for(let r=n.firstChild;r;r=r.nextSibling)3===r.nodeType?s+=r.nodeValue.length:1===r.nodeType&&(t.push({ +event:"start",offset:s,node:r}),s=e(r,s),P(r).match(/br|hr|img|input/)||t.push({ +event:"stop",offset:s,node:r}));return s}(e,0),t}const C=e=>{console.error(e) +},H=(e,...t)=>{console.log("WARN: "+e,...t)},$=(e,t)=>{ +console.log(`Deprecated as of ${e}. ${t}`)},U=r,z=a,K=Symbol("nomatch") +;return(e=>{const n=Object.create(null),r=Object.create(null),a=[];let i=!0 +;const o=/(^(<[^>]+>|\t|)+|\n)/gm,l="Could not find the language '{}', did you forget to load/include a language module?",u={ +disableAutodetect:!0,name:"Plain text",contains:[]};let g={ +noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +tabReplace:null,useBR:!1,languages:null,__emitter:c};function d(e){ +return g.noHighlightRe.test(e)}function h(e,t,n,s){const r={code:t,language:e} +;_("before:highlight",r);const a=r.result?r.result:f(r.language,r.code,n,s) +;return a.code=r.code,_("after:highlight",a),a}function f(e,t,r,o){const c=t +;function u(e,t){const n=w.case_insensitive?t[0].toLowerCase():t[0] +;return Object.prototype.hasOwnProperty.call(e.keywords,n)&&e.keywords[n]} +function d(){null!=_.subLanguage?(()=>{if(""===O)return;let e=null +;if("string"==typeof _.subLanguage){ +if(!n[_.subLanguage])return void M.addText(O) +;e=f(_.subLanguage,O,!0,k[_.subLanguage]),k[_.subLanguage]=e.top +}else e=p(O,_.subLanguage.length?_.subLanguage:null) +;_.relevance>0&&(A+=e.relevance),M.addSublanguage(e.emitter,e.language) +})():(()=>{if(!_.keywords)return void M.addText(O);let e=0 +;_.keywordPatternRe.lastIndex=0;let t=_.keywordPatternRe.exec(O),n="";for(;t;){ +n+=O.substring(e,t.index);const s=u(_,t);if(s){const[e,r]=s +;M.addText(n),n="",A+=r;const a=w.classNameAliases[e]||e;M.addKeyword(t[0],a) +}else n+=t[0];e=_.keywordPatternRe.lastIndex,t=_.keywordPatternRe.exec(O)} +n+=O.substr(e),M.addText(n)})(),O=""}function h(e){ +return e.className&&M.openNode(w.classNameAliases[e.className]||e.className), +_=Object.create(e,{parent:{value:_}}),_}function m(e,t,n){let r=((e,t)=>{ +const n=e&&e.exec(t);return n&&0===n.index})(e.endRe,n);if(r){if(e["on:end"]){ +const n=new s(e);e["on:end"](t,n),n.ignore&&(r=!1)}if(r){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return m(e.parent,t,n)}function b(e){ +return 0===_.matcher.regexIndex?(O+=e[0],1):(T=!0,0)}function x(e){ +const t=e[0],n=c.substr(e.index),s=m(_,e,n);if(!s)return K;const r=_ +;r.skip?O+=t:(r.returnEnd||r.excludeEnd||(O+=t),d(),r.excludeEnd&&(O=t));do{ +_.className&&M.closeNode(),_.skip||_.subLanguage||(A+=_.relevance),_=_.parent +}while(_!==s.parent) +;return s.starts&&(s.endSameAsBegin&&(s.starts.endRe=s.endRe), +h(s.starts)),r.returnEnd?0:t.length}let E={};function v(t,n){const a=n&&n[0] +;if(O+=t,null==a)return d(),0 +;if("begin"===E.type&&"end"===n.type&&E.index===n.index&&""===a){ +if(O+=c.slice(n.index,n.index+1),!i){const t=Error("0 width match regex") +;throw t.languageName=e,t.badRule=E.rule,t}return 1} +if(E=n,"begin"===n.type)return function(e){ +const t=e[0],n=e.rule,r=new s(n),a=[n.__beforeBegin,n["on:begin"]] +;for(const n of a)if(n&&(n(e,r),r.ignore))return b(t) +;return n&&n.endSameAsBegin&&(n.endRe=RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")), +n.skip?O+=t:(n.excludeBegin&&(O+=t), +d(),n.returnBegin||n.excludeBegin||(O=t)),h(n),n.returnBegin?0:t.length}(n) +;if("illegal"===n.type&&!r){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(_.className||"")+'"') +;throw e.mode=_,e}if("end"===n.type){const e=x(n);if(e!==K)return e} +if("illegal"===n.type&&""===a)return 1 +;if(B>1e5&&B>3*n.index)throw Error("potential infinite loop, way more iterations than matches") +;return O+=a,a.length}const w=N(e) +;if(!w)throw C(l.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const R=I(w,{plugins:a});let y="",_=o||R;const k={},M=new g.__emitter(g);(()=>{ +const e=[];for(let t=_;t!==w;t=t.parent)t.className&&e.unshift(t.className) +;e.forEach((e=>M.openNode(e)))})();let O="",A=0,L=0,B=0,T=!1;try{ +for(_.matcher.considerAll();;){ +B++,T?T=!1:_.matcher.considerAll(),_.matcher.lastIndex=L +;const e=_.matcher.exec(c);if(!e)break;const t=v(c.substring(L,e.index),e) +;L=e.index+t}return v(c.substr(L)),M.closeAllNodes(),M.finalize(),y=M.toHTML(),{ +relevance:A,value:y,language:e,illegal:!1,emitter:M,top:_}}catch(t){ +if(t.message&&t.message.includes("Illegal"))return{illegal:!0,illegalBy:{ +msg:t.message,context:c.slice(L-100,L+100),mode:t.mode},sofar:y,relevance:0, +value:U(c),emitter:M};if(i)return{illegal:!1,relevance:0,value:U(c),emitter:M, +language:e,top:_,errorRaised:t};throw t}}function p(e,t){ +t=t||g.languages||Object.keys(n);const s=(e=>{const t={relevance:0, +emitter:new g.__emitter(g),value:U(e),illegal:!1,top:u} +;return t.emitter.addText(e),t})(e),r=t.filter(N).filter(R).map((t=>f(t,e,!1))) +;r.unshift(s);const a=r.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(N(e.language).supersetOf===t.language)return 1 +;if(N(t.language).supersetOf===e.language)return-1}return 0})),[i,o]=a,l=i +;return l.second_best=o,l}const m={"before:highlightBlock":({block:e})=>{ +g.useBR&&(e.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")) +},"after:highlightBlock":({result:e})=>{ +g.useBR&&(e.value=e.value.replace(/\n/g,"
"))}},b=/^(<[^>]+>|\t)+/gm,x={ +"after:highlightBlock":({result:e})=>{ +g.tabReplace&&(e.value=e.value.replace(b,(e=>e.replace(/\t/g,g.tabReplace))))}} +;function E(e){let t=null;const n=(e=>{let t=e.className+" " +;t+=e.parentNode?e.parentNode.className:"";const n=g.languageDetectRe.exec(t) +;if(n){const t=N(n[1]) +;return t||(H(l.replace("{}",n[1])),H("Falling back to no-highlight mode for this block.",e)), +t?n[1]:"no-highlight"}return t.split(/\s+/).find((e=>d(e)||N(e)))})(e) +;if(d(n))return;_("before:highlightBlock",{block:e,language:n}),t=e +;const s=t.textContent,a=n?h(n,s,!0):p(s);_("after:highlightBlock",{block:e, +result:a,text:s}),e.innerHTML=a.value,((e,t,n)=>{const s=t?r[t]:n +;e.classList.add("hljs"),s&&e.classList.add(s)})(e,n,a.language),e.result={ +language:a.language,re:a.relevance,relavance:a.relevance +},a.second_best&&(e.second_best={language:a.second_best.language, +re:a.second_best.relevance,relavance:a.second_best.relevance})}const v=()=>{ +v.called||(v.called=!0,document.querySelectorAll("pre code").forEach(E))} +;function N(e){return e=(e||"").toLowerCase(),n[e]||n[r[e]]} +function w(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{r[e]=t +}))}function R(e){const t=N(e);return t&&!t.disableAutodetect}function _(e,t){ +const n=e;a.forEach((e=>{e[n]&&e[n](t)}))}Object.assign(e,{highlight:h, +highlightAuto:p,fixMarkup:e=>{ +return $("10.2.0","fixMarkup will be removed entirely in v11.0"), +$("10.2.0","Please see https://github.com/highlightjs/highlight.js/issues/2534"), +t=e, +g.tabReplace||g.useBR?t.replace(o,(e=>"\n"===e?g.useBR?"
":e:g.tabReplace?e.replace(/\t/g,g.tabReplace):e)):t +;var t},highlightBlock:E,configure:e=>{ +e.useBR&&($("10.3.0","'useBR' will be removed entirely in v11.0"), +$("10.3.0","Please see https://github.com/highlightjs/highlight.js/issues/2559")), +g=z(g,e)},initHighlighting:v,initHighlightingOnLoad:()=>{ +window.addEventListener("DOMContentLoaded",v,!1)},registerLanguage:(t,s)=>{ +let r=null;try{r=s(e)}catch(e){ +if(C("Language definition for '{}' could not be registered.".replace("{}",t)), +!i)throw e;C(e),r=u} +r.name||(r.name=t),n[t]=r,r.rawDefinition=s.bind(null,e),r.aliases&&w(r.aliases,{ +languageName:t})},listLanguages:()=>Object.keys(n),getLanguage:N, +registerAliases:w,requireLanguage:e=>{ +$("10.4.0","requireLanguage will be removed entirely in v11."), +$("10.4.0","Please see https://github.com/highlightjs/highlight.js/pull/2844") +;const t=N(e);if(t)return t +;throw Error("The '{}' language is required, but not loaded.".replace("{}",e))}, +autoDetection:R,inherit:z,addPlugin:e=>{a.push(e)},vuePlugin:j(e).VuePlugin +}),e.debugMode=()=>{i=!1},e.safeMode=()=>{i=!0},e.versionString="10.5.0" +;for(const e in y)"object"==typeof y[e]&&t(y[e]) +;return Object.assign(e,y),e.addPlugin(m),e.addPlugin(S),e.addPlugin(x),e})({}) +}();"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);hljs.registerLanguage("xml",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(e){return a("(?=",e,")")} +function a(...n){return n.map((n=>e(n))).join("")}function s(...n){ +return"("+n.map((n=>e(n))).join("|")+")"}return e=>{ +const t=a(/[A-Z_]/,a("(",/[A-Z0-9_.-]+:/,")?"),/[A-Z0-9_.-]*/),i={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},r={begin:/\s/, +contains:[{className:"meta-keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},c=e.inherit(r,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{ +className:"meta-string"}),g=e.inherit(e.QUOTE_STRING_MODE,{ +className:"meta-string"}),m={endsWithParent:!0,illegal:/`]+/}]}] +}]};return{name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,contains:[{className:"meta",begin://, +relevance:10,contains:[r,g,l,c,{begin:/\[/,end:/\]/,contains:[{className:"meta", +begin://,contains:[r,c,g,l]}]}]},e.COMMENT(//,{ +relevance:10}),{begin://,relevance:10},i,{ +className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"style"},contains:[m],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"script"},contains:[m],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:a(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name", +begin:t,relevance:0,starts:m}]},{className:"tag",begin:a(/<\//,n(a(t,/>/))), +contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0}]}]}} +})());hljs.registerLanguage("swift",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(e){return i("(?=",e,")")} +function i(...n){return n.map((n=>e(n))).join("")}function a(...n){ +return"("+n.map((n=>e(n))).join("|")+")"} +const t=e=>i(/\b/,e,/\w$/.test(e)?/\b/:/\B/),u=["Protocol","Type"].map(t),s=["init","self"].map(t),r=["Any","Self"],o=["associatedtype",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough","fileprivate(set)","fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout","internal(set)","internal","in","is","lazy","let","mutating","nonmutating","open(set)","open","operator","optional","override","postfix","precedencegroup","prefix","private(set)","private","protocol","public(set)","public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias","unowned(safe)","unowned(unsafe)","unowned","var","weak","where","while","willSet"],l=["false","nil","true"],c=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],b=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],p=a(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),F=a(p,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),d=i(p,F,"*"),g=a(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFFFD]/),f=a(g,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),m=i(g,f,"*"),w=i(/[A-Z]/,f,"*"),E=["autoclosure",i(/convention\(/,a("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",i(/objc\(/,m,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","testable","UIApplicationMain","unknown","usableFromInline"],y=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;return e=>{const p=e.COMMENT("/\\*","\\*/",{contains:["self"]}),g={ +className:"keyword",begin:i(/\./,n(a(...u,...s))),end:a(...u,...s), +excludeBegin:!0},A={begin:i(/\./,a(...o)),relevance:0 +},C=o.filter((e=>"string"==typeof e)).concat(["_|0"]),v={variants:[{ +className:"keyword", +begin:a(...o.filter((e=>"string"!=typeof e)).concat(r).map(t),...s)}]},_={ +$pattern:a(/\b\w+(\(\w+\))?/,/#\w+/),keyword:C.concat(c).join(" "), +literal:l.join(" ")},N=[g,A,v],D=[{begin:i(/\./,a(...b)),relevance:0},{ +className:"built_in",begin:i(/\b/,a(...b),/(?=\()/)}],B={begin:/->/,relevance:0 +},M=[B,{className:"operator",relevance:0,variants:[{begin:d},{ +begin:`\\.(\\.|${F})+`}]}],h="([0-9a-fA-F]_*)+",S={className:"number", +relevance:0,variants:[{ +begin:"\\b(([0-9]_*)+)(\\.(([0-9]_*)+))?([eE][+-]?(([0-9]_*)+))?\\b"},{ +begin:`\\b0x(${h})(\\.(${h}))?([pP][+-]?(([0-9]_*)+))?\\b`},{ +begin:/\b0o([0-7]_*)+\b/},{begin:/\b0b([01]_*)+\b/}]},O=(e="")=>({ +className:"subst",variants:[{begin:i(/\\/,e,/[0\\tnr"']/)},{ +begin:i(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),x=(e="")=>({className:"subst", +begin:i(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),k=(e="")=>({className:"subst", +label:"interpol",begin:i(/\\/,e,/\(/),end:/\)/}),L=(e="")=>({begin:i(e,/"""/), +end:i(/"""/,e),contains:[O(e),x(e),k(e)]}),I=(e="")=>({begin:i(e,/"/), +end:i(/"/,e),contains:[O(e),k(e)]}),$={className:"string", +variants:[L(),L("#"),L("##"),L("###"),I(),I("#"),I("##"),I("###")]},T=[{ +begin:i(/`/,m,/`/)},{className:"variable",begin:/\$\d+/},{className:"variable", +begin:`\\$${f}+`}],j=[{begin:/(@|#)available\(/,end:/\)/,keywords:{ +$pattern:/[@#]?\w+/,keyword:y.concat(["@available","#available"]).join(" ")}, +contains:[...M,S,$]},{className:"keyword",begin:i(/@/,a(...E))},{ +className:"meta",begin:i(/@/,m)}],K={begin:n(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +begin:i(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,f,"+") +},{className:"type",begin:w,relevance:0},{begin:/[?!]+/,relevance:0},{ +begin:/\.\.\./,relevance:0},{begin:i(/\s+&\s+/,n(w)),relevance:0}]},P={ +begin://,keywords:_,contains:[...N,...j,B,K]};K.contains.push(P) +;for(const e of $.variants){const n=e.contains.find((e=>"interpol"===e.label)) +;n.keywords=_;const i=[...N,...D,...M,S,$,...T];n.contains=[...i,{begin:/\(/, +end:/\)/,contains:["self",...i]}]}return{name:"Swift",keywords:_, +contains:[e.C_LINE_COMMENT_MODE,p,{className:"function",beginKeywords:"func", +end:/\{/,excludeEnd:!0,contains:[e.inherit(e.TITLE_MODE,{ +begin:/[A-Za-z$_][0-9A-Za-z$_]*/}),{begin://},{className:"params", +begin:/\(/,end:/\)/,endsParent:!0,keywords:_, +contains:["self",...N,S,$,e.C_BLOCK_COMMENT_MODE,{begin:":"}],illegal:/["']/}], +illegal:/\[|%/},{className:"class", +beginKeywords:"struct protocol class extension enum",end:"\\{",excludeEnd:!0, +keywords:_,contains:[e.inherit(e.TITLE_MODE,{ +begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...N]},{beginKeywords:"import", +end:/$/,contains:[e.C_LINE_COMMENT_MODE,p],relevance:0 +},...N,...D,...M,S,$,...T,...j,K]}}})());hljs.registerLanguage("markdown",(()=>{"use strict";function n(...n){ +return n.map((n=>{return(e=n)?"string"==typeof e?e:e.source:null;var e +})).join("")}return e=>{const a={begin:/<\/?[A-Za-z_]/,end:">", +subLanguage:"xml",relevance:0},i={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0 +},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{begin:n(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{ +className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},s={className:"strong",contains:[], +variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},c={ +className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{ +begin:/_(?!_)/,end:/_/,relevance:0}]};s.contains.push(c),c.contains.push(s) +;let t=[a,i] +;return s.contains=s.contains.concat(t),c.contains=c.contains.concat(t), +t=t.concat(s,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:t},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:t}]}]},a,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},s,c,{className:"quote",begin:"^>\\s+",contains:t, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},i,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}})());hljs.registerLanguage("css",(()=>{"use strict";return e=>{ +var n="[a-zA-Z-][a-zA-Z0-9_-]*",a={ +begin:/([*]\s?)?(?:[A-Z_.\-\\]+|--[a-zA-Z0-9_-]+)\s*(\/\*\*\/)?:/, +returnBegin:!0,end:";",endsWithParent:!0,contains:[{className:"attribute", +begin:/\S/,end:":",excludeEnd:!0,starts:{endsWithParent:!0,excludeEnd:!0, +contains:[{begin:/[\w-]+\(/,returnBegin:!0,contains:[{className:"built_in", +begin:/[\w-]+/},{begin:/\(/,end:/\)/, +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE]}] +},e.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"number",begin:"#[0-9A-Fa-f]+"},{className:"meta",begin:"!important"}] +}}]};return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/, +contains:[e.C_BLOCK_COMMENT_MODE,{className:"selector-id", +begin:/#[A-Za-z0-9_-]+/},{className:"selector-class",begin:"\\."+n},{ +className:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},{className:"selector-pseudo", +begin:/:(:)?[a-zA-Z0-9_+()"'.-]+/},{begin:"@(page|font-face)", +lexemes:"@[a-z-]+",keywords:"@page @font-face"},{begin:"@",end:"[{;]", +illegal:/:/,returnBegin:!0,contains:[{className:"keyword", +begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0, +relevance:0,keywords:"and or not only",contains:[{begin:/[a-z-]+:/, +className:"attribute"},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,e.CSS_NUMBER_MODE] +}]},{className:"selector-tag",begin:n,relevance:0},{begin:/\{/,end:/\}/, +illegal:/\S/,contains:[e.C_BLOCK_COMMENT_MODE,{begin:/;/},a]}]}}})());hljs.registerLanguage("dart",(()=>{"use strict";return e=>{const n={ +className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},a={className:"subst", +variants:[{begin:/\$\{/,end:/\}/}],keywords:"true false null this is new super" +},t={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""', +end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n" +},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"""', +end:'"""',contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]}]};a.contains=[e.C_NUMBER_MODE,t] +;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],r=i.map((e=>e+"?")) +;return{name:"Dart",keywords:{ +keyword:"abstract as assert async await break case catch class const continue covariant default deferred do dynamic else enum export extends extension external factory false final finally for Function get hide if implements import in inferface is late library mixin new null on operator part required rethrow return set show static super switch sync this throw true try typedef var void while with yield", +built_in:i.concat(r).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]).join(" "), +$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, +contains:[t,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 +}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", +end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] +},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}})());hljs.registerLanguage("json",(()=>{"use strict";return n=>{const e={ +literal:"true false null" +},i=[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],a=[n.QUOTE_STRING_MODE,n.C_NUMBER_MODE],l={ +end:",",endsWithParent:!0,excludeEnd:!0,contains:a,keywords:e},t={begin:/\{/, +end:/\}/,contains:[{className:"attr",begin:/"/,end:/"/, +contains:[n.BACKSLASH_ESCAPE],illegal:"\\n"},n.inherit(l,{begin:/:/ +})].concat(i),illegal:"\\S"},s={begin:"\\[",end:"\\]",contains:[n.inherit(l)], +illegal:"\\S"};return a.push(t,s),i.forEach((n=>{a.push(n)})),{name:"JSON", +contains:a,keywords:e,illegal:"\\S"}}})());hljs.registerLanguage("objectivec",(()=>{"use strict";return e=>{ +const n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={$pattern:n, +keyword:"@interface @class @protocol @implementation"};return{ +name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], +keywords:{$pattern:n, +keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN", +literal:"false true FALSE TRUE nil YES NO NULL", +built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once" +},illegal:"/,end:/$/, +illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +className:"class",begin:"("+_.keyword.split(" ").join("|")+")\\b",end:/(\{|$)/, +excludeEnd:!0,keywords:_,contains:[e.UNDERSCORE_TITLE_MODE]},{ +begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}})());hljs.registerLanguage("bash",(()=>{"use strict";function e(...e){ +return e.map((e=>{return(s=e)?"string"==typeof s?s:s.source:null;var s +})).join("")}return s=>{const n={},t={begin:/\$\{/,end:/\}/,contains:["self",{ +begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{ +begin:e(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},t]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[s.BACKSLASH_ESCAPE]},i={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[s.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/, +contains:[s.BACKSLASH_ESCAPE,n,a]};a.contains.push(c);const o={begin:/\$\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},s.NUMBER_MODE,n] +},r=s.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[s.inherit(s.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z._-]+\b/, +keyword:"if then else elif fi for while in do done case esac function", +literal:"true false", +built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp" +},contains:[r,s.SHEBANG(),l,o,s.HASH_COMMENT_MODE,i,c,{className:"",begin:/\\"/ +},{className:"string",begin:/'/,end:/'/},n]}}})());hljs.registerLanguage("shell",(()=>{"use strict";return s=>({ +name:"Shell Session",aliases:["console"],contains:[{className:"meta", +begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#]/,starts:{end:/[^\\](?=\s*$)/, +subLanguage:"bash"}}]})})());hljs.registerLanguage("ruby",(()=>{"use strict";function e(...e){ +return e.map((e=>{return(n=e)?"string"==typeof n?n:n.source:null;var n +})).join("")}return n=>{ +var a,i="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",s={ +keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__", +built_in:"proc lambda",literal:"true false nil"},r={className:"doctag", +begin:"@[A-Za-z]+"},b={begin:"#<",end:">"},t=[n.COMMENT("#","$",{contains:[r] +}),n.COMMENT("^=begin","^=end",{contains:[r],relevance:10 +}),n.COMMENT("^__END__","\\n$")],c={className:"subst",begin:/#\{/,end:/\}/, +keywords:s},d={className:"string",contains:[n.BACKSLASH_ESCAPE,c],variants:[{ +begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/, +end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{ +begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/, +end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{ +begin:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{ +begin:/<<[-~]?'?(\w+)\n(?:[^\n]*\n)*?\s*\1\b/,returnBegin:!0,contains:[{ +begin:/<<[-~]?'?/},n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[n.BACKSLASH_ESCAPE,c]})]}]},g="[0-9](_?[0-9])*",l={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${g}))?([eE][+-]?(${g})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},o={className:"params",begin:"\\(",end:"\\)", +endsParent:!0,keywords:s},_=[d,{className:"class",beginKeywords:"class module", +end:"$|;",illegal:/=/,contains:[n.inherit(n.TITLE_MODE,{ +begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{ +begin:"("+n.IDENT_RE+"::)?"+n.IDENT_RE}]}].concat(t)},{className:"function", +begin:e(/def\s*/,(a=i+"\\s*(\\(|;|$)",e("(?=",a,")"))),keywords:"def",end:"$|;", +contains:[n.inherit(n.TITLE_MODE,{begin:i}),o].concat(t)},{begin:n.IDENT_RE+"::" +},{className:"symbol",begin:n.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{ +className:"symbol",begin:":(?!\\s)",contains:[d,{begin:i}],relevance:0},l,{ +className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:s},{ +begin:"("+n.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{ +className:"regexp",contains:[n.BACKSLASH_ESCAPE,c],illegal:/\n/,variants:[{ +begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(", +end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}] +}].concat(b,t),relevance:0}].concat(b,t);c.contains=_,o.contains=_;var E=[{ +begin:/^\s*=>/,starts:{end:"$",contains:_}},{className:"meta", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",contains:_}}];return t.unshift(b),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/, +contains:[n.SHEBANG({binary:"ruby"})].concat(E).concat(t).concat(_)}}})());hljs.registerLanguage("yaml",(()=>{"use strict";return e=>{ +var n="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(s,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={ +end:",",endsWithParent:!0,excludeEnd:!0,contains:[],keywords:n,relevance:0},t={ +begin:/\{/,end:/\}/,contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[", +end:"\\]",contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr", +variants:[{begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{ +begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)" +}]},{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type", +begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},t,g,s],r=[...b] +;return r.pop(),r.push(i),l.contains=r,{name:"YAML",case_insensitive:!0, +aliases:["yml","YAML"],contains:b}}})());hljs.registerLanguage("javascript",(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],s=[].concat(["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],["arguments","this","super","console","window","document","localStorage","module","global"],["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer"],["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"]) +;function r(e){return i("(?=",e,")")}function i(...e){return e.map((e=>{ +return(n=e)?"string"==typeof n?n:n.source:null;var n})).join("")}return t=>{ +const c=e,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/, +isTrulyOpeningTag:(e,n)=>{const a=e[0].length+e.index,s=e.input[a] +;"<"!==s?">"===s&&(((e,{after:n})=>{const a="", +returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{ +begin:t.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0 +},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:A}]}] +},{begin:/,/,relevance:0},{className:"",begin:/\s/,end:/\s*/,skip:!0},{ +variants:[{begin:"<>",end:""},{begin:o.begin,"on:begin":o.isTrulyOpeningTag, +end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0, +contains:["self"]}]}],relevance:0},{className:"function", +beginKeywords:"function",end:/[{;]/,excludeEnd:!0,keywords:l, +contains:["self",t.inherit(t.TITLE_MODE,{begin:c}),p],illegal:/%/},{ +beginKeywords:"while if switch catch for"},{className:"function", +begin:t.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,contains:[p,t.inherit(t.TITLE_MODE,{begin:c})]},{variants:[{ +begin:"\\."+c},{begin:"\\$"+c}],relevance:0},{className:"class", +beginKeywords:"class",end:/[{;=]/,excludeEnd:!0,illegal:/[:"[\]]/,contains:[{ +beginKeywords:"extends"},t.UNDERSCORE_TITLE_MODE]},{begin:/\b(?=constructor)/, +end:/[{;]/,excludeEnd:!0,contains:[t.inherit(t.TITLE_MODE,{begin:c}),"self",p] +},{begin:"(get|set)\\s+(?="+c+"\\()",end:/\{/,keywords:"get set", +contains:[t.inherit(t.TITLE_MODE,{begin:c}),{begin:/\(\)/},p]},{begin:/\$[(.]/}] +}}})());hljs.registerLanguage("java",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{ +var n="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",s={ +className:"meta",begin:"@[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*", +contains:[{begin:/\(/,end:/\)/,contains:["self"]}]};const r=a;return{ +name:"Java",aliases:["jsp"],keywords:n,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +className:"class",beginKeywords:"class interface enum",end:/[{;=]/, +excludeEnd:!0,keywords:"class interface enum",illegal:/[:"\[\]]/,contains:[{ +beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{className:"class", +begin:"record\\s+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,excludeEnd:!0, +end:/[{;=]/,keywords:n,contains:[{beginKeywords:"record"},{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/, +keywords:n,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"function", +begin:"([\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*(<[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*(\\s*,\\s*[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*)*>)?\\s+)+"+e.UNDERSCORE_IDENT_RE+"\\s*\\(", +returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:n,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"params",begin:/\(/,end:/\)/, +keywords:n,relevance:0, +contains:[s,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,r,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},r,s]}}})());hljs.registerLanguage("kotlin",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},i={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},t={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},r={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[t,s]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,t,s]}]};s.contains.push(r);const l={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(r,{className:"meta-string"})]}] +},o=a,b=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),E={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},d=E;return d.variants[1].contains=[E],E.variants[1].contains=[d], +{name:"Kotlin",aliases:["kt"],keywords:n,contains:[e.COMMENT("/\\*\\*","\\*/",{ +relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}] +}),e.C_LINE_COMMENT_MODE,b,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},i,l,c,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[E,e.C_LINE_COMMENT_MODE,b],relevance:0 +},e.C_LINE_COMMENT_MODE,b,l,c,r,e.C_NUMBER_MODE]},b]},{className:"class", +beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/, +excludeBegin:!0,returnEnd:!0},l,c]},r,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},o]}}})()); \ No newline at end of file diff --git a/doc/api/static-assets/play_button.svg b/doc/api/static-assets/play_button.svg new file mode 100644 index 0000000..c39a2f4 --- /dev/null +++ b/doc/api/static-assets/play_button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/doc/api/static-assets/readme.md b/doc/api/static-assets/readme.md new file mode 100644 index 0000000..4475c1b --- /dev/null +++ b/doc/api/static-assets/readme.md @@ -0,0 +1,19 @@ +# highlight.js + +Generated from https://highlightjs.org/download/ on 2020-12-30 + +Included languages: + +* bash +* css +* dart +* html, xml +* java +* javascript +* json +* kotlin +* markdown +* objective-c +* shell +* swift +* yaml diff --git a/doc/api/static-assets/script.js b/doc/api/static-assets/script.js new file mode 100644 index 0000000..40a2014 --- /dev/null +++ b/doc/api/static-assets/script.js @@ -0,0 +1,272 @@ + +function initSideNav() { + var leftNavToggle = document.getElementById('sidenav-left-toggle'); + var leftDrawer = document.querySelector('.sidebar-offcanvas-left'); + var overlay = document.getElementById('overlay-under-drawer'); + + function toggleBoth() { + if (leftDrawer) { + leftDrawer.classList.toggle('active'); + } + + if (overlay) { + overlay.classList.toggle('active'); + } + } + + if (overlay) { + overlay.addEventListener('click', function(e) { + toggleBoth(); + }); + } + + if (leftNavToggle) { + leftNavToggle.addEventListener('click', function(e) { + toggleBoth(); + }); + } +} + +function saveLeftScroll() { + var leftSidebar = document.getElementById('dartdoc-sidebar-left'); + sessionStorage.setItem('dartdoc-sidebar-left-scrollt' + window.location.pathname, leftSidebar.scrollTop); + sessionStorage.setItem('dartdoc-sidebar-left-scrolll' + window.location.pathname, leftSidebar.scrollLeft); +} + +function saveMainContentScroll() { + var mainContent = document.getElementById('dartdoc-main-content'); + sessionStorage.setItem('dartdoc-main-content-scrollt' + window.location.pathname, mainContent.scrollTop); + sessionStorage.setItem('dartdoc-main-content-scrolll' + window.location.pathname, mainContent.scrollLeft); +} + +function saveRightScroll() { + var rightSidebar = document.getElementById('dartdoc-sidebar-right'); + sessionStorage.setItem('dartdoc-sidebar-right-scrollt' + window.location.pathname, rightSidebar.scrollTop); + sessionStorage.setItem('dartdoc-sidebar-right-scrolll' + window.location.pathname, rightSidebar.scrollLeft); +} + +function restoreScrolls() { + var leftSidebar = document.getElementById('dartdoc-sidebar-left'); + var mainContent = document.getElementById('dartdoc-main-content'); + var rightSidebar = document.getElementById('dartdoc-sidebar-right'); + + try { + var leftSidebarX = sessionStorage.getItem('dartdoc-sidebar-left-scrolll' + window.location.pathname); + var leftSidebarY = sessionStorage.getItem('dartdoc-sidebar-left-scrollt' + window.location.pathname); + + var mainContentX = sessionStorage.getItem('dartdoc-main-content-scrolll' + window.location.pathname); + var mainContentY = sessionStorage.getItem('dartdoc-main-content-scrollt' + window.location.pathname); + + var rightSidebarX = sessionStorage.getItem('dartdoc-sidebar-right-scrolll' + window.location.pathname); + var rightSidebarY = sessionStorage.getItem('dartdoc-sidebar-right-scrollt' + window.location.pathname); + + leftSidebar.scrollTo(leftSidebarX, leftSidebarY); + mainContent.scrollTo(mainContentX, mainContentY); + rightSidebar.scrollTo(rightSidebarX, rightSidebarY); + } finally { + // Set visibility to visible after scroll to prevent the brief appearance of the + // panel in the wrong position. + leftSidebar.style.visibility = 'visible'; + mainContent.style.visibility = 'visible'; + rightSidebar.style.visibility = 'visible'; + } +} + +function initScrollSave() { + var leftSidebar = document.getElementById('dartdoc-sidebar-left'); + var mainContent = document.getElementById('dartdoc-main-content'); + var rightSidebar = document.getElementById('dartdoc-sidebar-right'); + + // For portability, use two different ways of attaching saveLeftScroll to events. + leftSidebar.onscroll = saveLeftScroll; + leftSidebar.addEventListener("scroll", saveLeftScroll, true); + mainContent.onscroll = saveMainContentScroll; + mainContent.addEventListener("scroll", saveMainContentScroll, true); + rightSidebar.onscroll = saveRightScroll; + rightSidebar.addEventListener("scroll", saveRightScroll, true); +} + +function initSearch(name) { + var searchIndex; // the JSON data + + var weights = { + 'library' : 2, + 'class' : 2, + 'typedef' : 3, + 'method' : 4, + 'accessor' : 4, + 'operator' : 4, + 'property' : 4, + 'constructor' : 4 + }; + + var baseHref = ''; + if (!$('body').data('using-base-href')) { + // If dartdoc did not add a base-href tag, we will need to add the relative + // path ourselves. + baseHref = $('body').data('base-href'); + } + + function findMatches(q) { + var allMatches = []; // list of matches + + function score(element, num) { + num -= element.overriddenDepth * 10; + var weightFactor = weights[element.type] || 4; + return {e: element, score: (num / weightFactor) >> 0}; + } + + $.each(searchIndex, function(i, element) { + // TODO: prefer matches in the current library + // TODO: help prefer a named constructor + + var lowerName = element.name.toLowerCase(); + var lowerQualifiedName = element.qualifiedName.toLowerCase(); + var lowerQ = q.toLowerCase(); + var previousMatchCount = allMatches.length; + + if (element.name === q || element.qualifiedName === q) { + // exact match, maximum score + allMatches.push(score(element, 2000)); + } else if (element.name === 'dart:'+q) { + // exact match for a dart: library + allMatches.push(score(element, 2000)); + } else if (lowerName === 'dart:'+lowerQ) { + // case-insensitive match for a dart: library + allMatches.push(score(element, 1800)); + } else if (lowerName === lowerQ || lowerQualifiedName === lowerQ) { + // case-insensitive exact match + allMatches.push(score(element, 1700)); + } + + // only care about exact matches if length is 2 or less + // and only continue if we didn't find a match above + if (q.length <= 2 || previousMatchCount < allMatches.length) return; + + if (element.name.indexOf(q) === 0 || element.qualifiedName.indexOf(q) === 0) { + // starts with + allMatches.push(score(element, 750)); + } else if (lowerName.indexOf(lowerQ) === 0 || lowerQualifiedName.indexOf(lowerQ) === 0) { + // case-insensitive starts with + allMatches.push(score(element, 650)); + } else if (element.name.indexOf(q) >= 0 || element.qualifiedName.indexOf(q) >= 0) { + // contains + allMatches.push(score(element, 500)); + } else if (lowerName.indexOf(lowerQ) >= 0 || lowerQualifiedName.indexOf(lowerQ) >= 0) { + // case insensitive contains + allMatches.push(score(element, 400)); + } + }); + + allMatches.sort(function(a, b) { + var x = b.score - a.score; + if (x === 0) { + // tie-breaker: shorter name wins + return a.e.name.length - b.e.name.length; + } else { + return x; + } + }); + + var sortedMatches = []; + for (var i = 0; i < allMatches.length; i++) { + sortedMatches.push(allMatches[i].e); + } + + return sortedMatches; + }; + + function initTypeahead() { + if ('URLSearchParams' in window) { + var search = new URLSearchParams(window.location.search).get('search'); + if (search) { + var matches = findMatches(search); + if (matches.length !== 0) { + window.location = baseHref + matches[0].href; + return; + } + } + } + + $('#' + name).prop('disabled', false); + $('#' + name).prop('placeholder', 'Search API Docs'); + $(document).keypress(function(event) { + if (event.which == 47 /* / */) { + event.preventDefault(); + $('#' + name).focus(); + } + }); + + $('#' + name + '.typeahead').typeahead({ + hint: true, + highlight: true, + minLength: 1 + }, + { + name: 'elements', + limit: 10, + source: function(q, cb) { cb(findMatches(q)); }, + display: function(element) { return element.name; }, + templates: { + suggestion: function(match) { + return [ + '
', + match.name, + ' ', + match.type.toLowerCase(), + (match.enclosedBy ? [ + '
from ', + match.enclosedBy.name, + '
'].join('') : ''), + '
' + ].join(''); + } + } + }); + + var typeaheadElement = $('#' + name + '.typeahead'); + var typeaheadElementParent = typeaheadElement.parent(); + var selectedSuggestion; + + typeaheadElement.on("keydown", function (e) { + if (e.keyCode === 13) { // Enter + if (selectedSuggestion == null) { + var suggestion = typeaheadElementParent.find(".tt-suggestion.tt-selectable:eq(0)"); + if (suggestion.length > 0) { + var href = suggestion.data("href"); + if (href != null) { + window.location = baseHref + href; + } + } + } + } + }); + + typeaheadElement.bind('typeahead:select', function(ev, suggestion) { + selectedSuggestion = suggestion; + window.location = baseHref + suggestion.href; + }); + } + + var jsonReq = new XMLHttpRequest(); + jsonReq.open('GET', baseHref + 'index.json', true); + jsonReq.addEventListener('load', function() { + searchIndex = JSON.parse(jsonReq.responseText); + initTypeahead(); + }); + jsonReq.addEventListener('error', function() { + $('#' + name).prop('placeholder', 'Error loading search index'); + }); + jsonReq.send(); +} + +document.addEventListener("DOMContentLoaded", function() { + // Place this first so that unexpected exceptions in other JavaScript do not block page visibility. + restoreScrolls(); + hljs.initHighlightingOnLoad(); + initSideNav(); + initScrollSave(); + initSearch("search-box"); + initSearch("search-body"); + initSearch("search-sidebar"); +}); diff --git a/doc/api/static-assets/styles.css b/doc/api/static-assets/styles.css new file mode 100644 index 0000000..6e0dd6c --- /dev/null +++ b/doc/api/static-assets/styles.css @@ -0,0 +1,996 @@ + +/* Palette generated by Material Palette - materialpalette.com/blue/cyan */ + +.dark-primary-color { background: #1976D2; } +.default-primary-color { background: #2196F3; } +.light-primary-color { background: #BBDEFB; } +.text-primary-color { color: #FFFFFF; } +.accent-color { background: #00BCD4; } +.primary-text-color { color: #212121; } +.secondary-text-color { color: #727272; } +.divider-color { border-color: #B6B6B6; } + +/* for layout */ +html, +body { + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow: hidden; + box-sizing: border-box; +} + +*, *:before, *:after { + box-sizing: inherit; +} + +body { + display: flex; + flex-direction: column; + -webkit-overflow-scrolling: touch; +} + +header { + flex: 0 0 50px; + display: flex; + flex-direction: row; + align-items: center; + padding-left: 30px; +} + +header ol { + list-style: none; + margin: 0; + padding: 0; +} + +header ol li { + display: inline; +} + +header form { + display: flex; + flex: 1; + justify-content: flex-end; + padding-right: 30px; +} + +header#header-search-sidebar { + height: 50px; + margin-bottom: 25px; +} + +footer { + flex: 0 0 16px; + text-align: center; + padding: 16px 20px; +} + +main { + flex: 1; + display: flex; + flex-direction: row; + padding: 20px; + min-height: 0; +} + +.sidebar-offcanvas-left { + flex: 0 1 230px; + overflow-y: scroll; + padding: 20px 0 15px 30px; + margin: 5px 20px 0 0; + visibility: hidden; /* shown by Javascript after scroll position restore */ +} + +::-webkit-scrollbar-button{ display: none; height: 13px; border-radius: 0px; background-color: #AAA; } +::-webkit-scrollbar-button:hover{ background-color: #AAA; } +::-webkit-scrollbar-thumb{ background-color: #CCC; } +::-webkit-scrollbar-thumb:hover{ background-color: #CCC; } +::-webkit-scrollbar{ width: 4px; } + +.main-content::-webkit-scrollbar{ width: 8px; } + +.main-content { + flex: 1; + overflow-y: scroll; + padding: 10px 20px 0 20px; + visibility: hidden; /* shown by Javascript after scroll position restore */ +} + +.sidebar-offcanvas-right { + flex: 0 1 12em; + overflow-y: scroll; + padding: 20px 15px 15px 15px; + margin-top: 5px; + margin-right: 20px; + visibility: hidden; /* shown by Javascript after scroll position restore */ +} +/* end for layout */ + +body { + -webkit-text-size-adjust: 100%; + overflow-x: hidden; + font-family: Roboto, sans-serif; + font-size: 16px; + line-height: 1.42857143; + color: #111111; + background-color: #fff; +} + +/* some of this is to reset bootstrap */ +nav.navbar { + background-color: inherit; + min-height: 50px; + border: 0; +} + +@media (max-width: 768px) { + .hidden-xs { + display: none !important; + } +} + +@media (min-width: 769px) { + .hidden-l { + display: none !important; + } +} + +nav.navbar .row { + padding-top: 8px; +} + +nav .container { + white-space: nowrap; +} + +header { + background-color: #eeeeee; + box-shadow: 0 3px 5px rgba(0,0,0,0.1); +} + +header.header-fixed nav.navbar-fixed-top { + box-shadow: 0 3px 5px rgba(0,0,0,0.1); +} + +header.container-fluid { + padding: 0; +} + +header .masthead { + padding-top: 64px; +} + +header .contents { + padding: 0; +} + +@media screen and (max-width:768px) { + header .contents { + padding-left: 15px; + padding-right: 15px; + } +} + +a { + text-decoration: none; +} + +.body { + margin-top: 90px; +} + +section { + margin-bottom: 36px; +} + +dl { + margin: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: Roboto, sans-serif; + font-weight: 400; + margin-top: 1.5em; + color: #111111; +} + +h1.title { + overflow: hidden; + text-overflow: ellipsis; +} + +h1 { + font-size: 37px; + margin-top: 0; + margin-bottom: 0.67em; +} + +h2 { + font-size: 28px; +} + +h5 { + font-size: 16px; +} + +.subtitle { + font-size: 17px; + min-height: 1.4em; +} + +.title-description .subtitle { + white-space: nowrap; + overflow-x: hidden; + text-overflow: ellipsis; +} + +p { + margin-bottom: 1em; + margin-top: 0; +} + +a { + color: #0175C2; +} + +a:hover { + color: #13B9FD; +} + +pre.prettyprint { + font-family: 'Roboto Mono', Menlo, monospace; + color: black; + border-radius: 0; + font-size: 15px; + word-wrap: normal; + line-height: 1.4; + border: 0; + margin: 16px 0 16px 0; + padding: 8px; +} + +pre code { + white-space: pre; + word-wrap: initial; + font-size: 100% +} + +.fixed { + white-space: pre; +} + +pre { + border: 1px solid #ddd; + background-color: #eee; + font-size: 14px; +} + +code { + font-family: 'Roboto Mono', Menlo, monospace; + /* overriding bootstrap */ + color: inherit; + padding: 0.2em 0.4em; + font-size: 85%; + background-color: rgba(27,31,35,0.05); + border-radius: 3px; +} + +@media(max-width: 768px) { + nav .container { + width: 100% + } + + h1 { + font-size: 24px; + } + + pre { + margin: 16px 0; + } +} + +@media (min-width: 768px) { + ul.subnav li { + font-size: 17px; + } +} + +header h1 { + font-weight: 400; + margin-bottom: 16px; +} + +header a, +header p, +header li { + color: #111111; +} + +header a:hover { + color: #0175C2; +} + +header h1 .kind { + color: #555; +} + +dt { + font-weight: normal; +} + +dd { + color: #212121; + margin-bottom: 1em; + margin-left: 0; +} + +dd.callable, dd.constant, dd.property { + margin-bottom: 24px; +} + +dd p { + overflow-x: hidden; + text-overflow: ellipsis; + margin-bottom: 0; +} + +/* Enum values do not have their own pages; their full docs are presented on the + * enum class's page. */ +dt.constant + dd p { + margin-bottom: 1em; +} + +/* indents wrapped lines */ +section.summary dt { + margin-left: 24px; + text-indent: -24px; +} + +.dl-horizontal dd { + margin-left: initial; +} + +dl.dl-horizontal dt { + font-style: normal; + text-align: left; + color: #727272; + margin-right: 20px; + width: initial; +} + +dt .name { + font-weight: 500; +} + +dl dt.callable .name { + float: none; + width: auto; +} + +.parameter { + white-space: nowrap; +} + +.type-parameter { + white-space: nowrap; +} + +.multi-line-signature .type-parameter .parameter { + margin-left: 0px; + display: unset; +} + +.parameter-list { + display: table-cell; + margin-left: 10px; + list-style-type: none; +} + +.signature { + color: #727272; +} + +.signature a { + /* 50% mix of default-primary-color and primary-text-color. */ + color: #4674a2; +} + +.optional { + font-style: italic; +} + +.undocumented { + font-style: italic; +} + +.is-const { + font-style: italic; +} + +.deprecated { + text-decoration: line-through; +} + +.category.linked { + font-weight: bold; + opacity: 1; +} + +/* Colors for category based on categoryOrder in dartdoc_options.config. */ +.category.cp-0 { + background-color: #54b7c4 +} + +.category.cp-1 { + background-color: #54c47f +} + +.category.cp-2 { + background-color: #c4c254 +} + +.category.cp-3 { + background-color: #c49f54 +} + +.category.cp-4 { + background-color: #c45465 +} + +.category.cp-5 { + background-color: #c454c4 +} + +.category a { + color: white; +} + +.category { + padding: 2px 4px; + font-size: 12px; + border-radius: 4px; + background-color: #999; + text-transform: uppercase; + color: white; + opacity: .5; +} + +h1 .category { + vertical-align: middle; +} + +.feature { + display: inline-block; + background: white; + border: 1px solid #0175c2; + border-radius: 20px; + color: #0175c2; + + font-size: 12px; + padding: 1px 6px; + margin: 0 8px 0 0; +} + +a.feature:hover { + border-color: #13B9FD; +} + +h1 .feature { + vertical-align: middle; +} + +.source-link { + padding: 18px 4px; + vertical-align: middle; +} + +.source-link .material-icons { + font-size: 18px; +} + +@media (max-width: 768px) { + .source-link { + padding: 7px 2px; + font-size: 10px; + } +} + +#external-links { + float: right; +} + +.btn-group { + position: relative; + display: inline-flex; + vertical-align: middle; +} + +p.firstline { + font-weight: bold; +} + +footer { + color: #fff; + background-color: #111111; + width: 100%; +} + +footer p { + margin: 0; +} + +footer .no-break { + white-space: nowrap; +} + +footer .container, +footer .container-fluid { + padding-left: 0; + padding-right: 0; +} + +footer a, footer a:hover { + color: #fff; +} + +.markdown.desc { + max-width: 700px; +} + +.markdown h1 { + font-size: 24px; + margin-bottom: 8px; +} + +.markdown h2 { + font-size: 20px; + margin-top: 24px; + margin-bottom: 8px; +} + +.markdown h3 { + font-size: 18px; + margin-bottom: 8px; +} + +.markdown h4 { + font-size: 16px; + margin-bottom: 0; +} + +.markdown li p { + margin: 0; +} + +.gt-separated { + list-style: none; + padding: 0; + margin: 0; +} + +.gt-separated li { + display: inline-block; +} + +.gt-separated li:before { + background-image: url("data:image/svg+xml;utf8,"); + background-position: center; + content: "\00a0"; + margin: 0 6px 0 4px; + padding: 0 3px 0 0; +} + +.gt-separated.dark li:before { + background-image: url("data:image/svg+xml;utf8,"); +} + +.gt-separated li:first-child:before { + background-image: none; + content: ""; + margin: 0; + padding: 0; +} + +/* The slug line under a declaration for things like "const", "read-only", etc. */ +.features { + font-style: italic; + color: #727272; +} + +.multi-line-signature { + font-size: 17px; + color: #727272; +} + +.multi-line-signature .parameter { + margin-left: 24px; + display: block; +} + +.breadcrumbs { + padding: 0; + margin: 8px 0 8px 0; + white-space: nowrap; + line-height: 1; +} + +@media screen and (min-width: 768px) { + nav ol.breadcrumbs { + float: left; + } +} + +@media screen and (max-width: 768px) { + .breadcrumbs { + margin: 0 0 24px 0; + overflow-x: hidden; + } +} + +.self-crumb { + color: #555; +} + +.self-name { + color: #555; + display: none; +} + +.annotation-list { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated li { + display: inline; +} + +.comma-separated li:after { + content: ", "; +} + +.comma-separated li:last-child:after { + content: ""; +} + +.end-with-period li:last-child:after { + content: "."; +} + +.container > section:first-child { + border: 0; +} + +.constructor-modifier { + font-style: italic; +} + +section.multi-line-signature div.parameters { + margin-left: 24px; +} + +/* subnav styles */ + +ul.subnav { + overflow: auto; + white-space: nowrap; + padding-left: 0; + min-height: 25px; +} + +ul.subnav::-webkit-scrollbar { + display: none; +} + +ul.subnav li { + display: inline-block; + text-transform: uppercase; +} + +ul.subnav li a { + color: #111; +} + +ul.subnav li { + margin-right: 24px; +} + +ul.subnav li:last-of-type { + margin-right: 0; +} + +@media(max-width: 768px) { + ul.subnav li { + margin-right: 16px; + } +} + +/* sidebar styles */ + +.sidebar ol { + list-style: none; + line-height: 22px; + margin-top: 0; + margin-bottom: 0; + padding: 0 0 15px 0; +} + +.sidebar h5 a, +.sidebar h5 a:hover { + color: #727272; +} + +.sidebar h5, +.sidebar ol li { + text-overflow: ellipsis; + overflow: hidden; + padding: 3px 0 3px 3px; +} + +.sidebar h5 { + color: #727272; + font-size: 18px; + margin: 0 0 22px 0; + padding-top: 0; +} + +.sidebar ol li.section-title { + font-size: 18px; + font-weight: normal; + text-transform: uppercase; + padding-top: 25px; +} + +.sidebar ol li.section-subtitle a { + color: inherit; +} + +.sidebar ol li.section-subtitle { + font-weight: 400; + text-transform: uppercase; +} + +.sidebar ol li.section-subitem { + margin-left: 12px; +} + +.sidebar ol li:first-child { + padding-top: 3px; + margin-top: 0; +} + +button { + padding: 0; +} + +#sidenav-left-toggle { + display: none; + vertical-align: text-bottom; + padding: 0; +} + +/* left-nav disappears, and can transition in from the left */ +@media screen and (max-width:768px) { + #sidenav-left-toggle { + display: inline; + background: no-repeat url("data:image/svg+xml;utf8,"); + background-position: center; + width: 24px; + height: 24px; + border: none; + margin-right: 24px; + } + + #overlay-under-drawer.active { + opacity: 0.4; + height: 100%; + z-index: 1999; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: black; + display: block; + } + + .sidebar-offcanvas-left { + left: -100%; + position: fixed; + -webkit-transition:all .25s ease-out; + -o-transition:all .25s ease-out; + transition:all .25s ease-out; + z-index: 2000; + top: 0; + width: 280px; /* works all the way down to an iphone 4 */ + height: 90%; + background-color: white; + overflow-y: scroll; /* TODO: how to hide scroll bars? */ + padding: 10px; + margin: 10px 10px; + box-shadow: 5px 5px 5px 5px #444444; + visibility: hidden; /* shown by Javascript after scroll position restore */ + } + + ol#sidebar-nav { + font-size: 18px; + white-space: pre-line; + } + + .sidebar-offcanvas-left.active { + left: 0; /* this animates our drawer into the page */ + } + + .self-name { + display: inline-block; + } +} + +.sidebar-offcanvas-left h5 { + margin-bottom: 10px; +} + +.sidebar-offcanvas-left h5:last-of-type { + border: 0; + margin-bottom: 25px; +} + +/* the right nav disappears out of view when the window shrinks */ +@media screen and (max-width: 992px) { + .sidebar-offcanvas-right { + display: none; + } +} + +#overlay-under-drawer { + display: none; +} + +/* find-as-you-type search box */ + +/* override bootstrap defaults */ +.form-control { + border-radius: 0; + border: 0; +} + +@media screen and (max-width: 768px) { + form.search { + display: none; + } +} + +.typeahead, +.tt-query, +.tt-hint { + width: 200px; + height: 20px; + padding: 2px 7px 1px 7px; + line-height: 20px; + outline: none; +} + +.typeahead { + background-color: #fff; + border-radius: 2px; +} + +.tt-query { + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.tt-hint { + color: #999 +} + +.navbar-right .tt-menu { + right:0; + left: inherit !important; + width: 422px; + max-height: 250px; + overflow-y: scroll; +} + +.tt-menu { + font-size: 14px; + margin: 0; + padding: 8px 0; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2); + -moz-box-shadow: 0 5px 10px rgba(0,0,0,.2); + box-shadow: 0 5px 10px rgba(0,0,0,.2); +} + +.tt-suggestion { + padding: 3px 20px; + color: #212121; +} + +.tt-suggestion:hover { + cursor: pointer; + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion:hover .search-from-lib { + color: #ddd; +} + +.tt-suggestion.tt-cursor { + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion.tt-cursor .search-from-lib { + color: #ddd; +} + +.tt-suggestion p { + margin: 0; +} + +.search-from-lib { + font-style: italic; + color: gray; +} + +#search-box { + background-color: #ffffff; +} + +.search-body { + border: 1px solid #7f7f7f; + max-width: 400px; + box-shadow: 3px 3px 5px rgba(0,0,0,0.1); +} + +section#setter { + border-top: 1px solid #ddd; + padding-top: 36px; +} + +li.inherited a { + opacity: 0.65; + font-style: italic; +} + +#instance-methods dt.inherited .name, +#instance-properties dt.inherited .name, +#operators dt.inherited .name { + font-weight: 300; + font-style: italic; +} + +#instance-methods dt.inherited .signature, +#instance-properties dt.inherited .signature, +#operators dt.inherited .signature { + font-weight: 300; +} + +@media print { + .subnav, .sidebar { + display:none; + } + + a[href]:after { + content:"" !important; + } +} diff --git a/doc/api/static-assets/typeahead.bundle.min.js b/doc/api/static-assets/typeahead.bundle.min.js new file mode 100644 index 0000000..d107d06 --- /dev/null +++ b/doc/api/static-assets/typeahead.bundle.min.js @@ -0,0 +1,8 @@ +/*! + * typeahead.js 1.1.1 + * https://github.com/twitter/typeahead.js + * Copyright 2013-2017 Twitter, Inc. and other contributors; Licensed MIT + */ + +!function(a,b){"function"==typeof define&&define.amd?define(["jquery"],function(c){return a.Bloodhound=b(c)}):"object"==typeof exports?module.exports=b(require("jquery")):a.Bloodhound=b(a.jQuery)}(this,function(a){var b=function(){"use strict";return{isMsie:function(){return!!/(msie|trident)/i.test(navigator.userAgent)&&navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2]},isBlankString:function(a){return!a||/^\s*$/.test(a)},escapeRegExChars:function(a){return a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isString:function(a){return"string"==typeof a},isNumber:function(a){return"number"==typeof a},isArray:a.isArray,isFunction:a.isFunction,isObject:a.isPlainObject,isUndefined:function(a){return"undefined"==typeof a},isElement:function(a){return!(!a||1!==a.nodeType)},isJQuery:function(b){return b instanceof a},toStr:function(a){return b.isUndefined(a)||null===a?"":a+""},bind:a.proxy,each:function(b,c){function d(a,b){return c(b,a)}a.each(b,d)},map:a.map,filter:a.grep,every:function(b,c){var d=!0;return b?(a.each(b,function(a,e){if(!(d=c.call(null,e,a,b)))return!1}),!!d):d},some:function(b,c){var d=!1;return b?(a.each(b,function(a,e){if(d=c.call(null,e,a,b))return!1}),!!d):d},mixin:a.extend,identity:function(a){return a},clone:function(b){return a.extend(!0,{},b)},getIdGenerator:function(){var a=0;return function(){return a++}},templatify:function(b){function c(){return String(b)}return a.isFunction(b)?b:c},defer:function(a){setTimeout(a,0)},debounce:function(a,b,c){var d,e;return function(){var f,g,h=this,i=arguments;return f=function(){d=null,c||(e=a.apply(h,i))},g=c&&!d,clearTimeout(d),d=setTimeout(f,b),g&&(e=a.apply(h,i)),e}},throttle:function(a,b){var c,d,e,f,g,h;return g=0,h=function(){g=new Date,e=null,f=a.apply(c,d)},function(){var i=new Date,j=b-(i-g);return c=this,d=arguments,j<=0?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},stringify:function(a){return b.isString(a)?a:JSON.stringify(a)},guid:function(){function a(a){var b=(Math.random().toString(16)+"000000000").substr(2,8);return a?"-"+b.substr(0,4)+"-"+b.substr(4,4):b}return"tt-"+a()+a(!0)+a(!0)+a()},noop:function(){}}}(),c="1.1.1",d=function(){"use strict";function a(a){return a=b.toStr(a),a?a.split(/\s+/):[]}function c(a){return a=b.toStr(a),a?a.split(/\W+/):[]}function d(a){a=b.toStr(a);var c=[],d="";return b.each(a.split(""),function(a){a.match(/\s+/)?d="":(c.push(d+a),d+=a)}),c}function e(a){return function(c){return c=b.isArray(c)?c:[].slice.call(arguments,0),function(d){var e=[];return b.each(c,function(c){e=e.concat(a(b.toStr(d[c])))}),e}}}return{nonword:c,whitespace:a,ngram:d,obj:{nonword:e(c),whitespace:e(a),ngram:e(d)}}}(),e=function(){"use strict";function c(c){this.maxSize=b.isNumber(c)?c:100,this.reset(),this.maxSize<=0&&(this.set=this.get=a.noop)}function d(){this.head=this.tail=null}function e(a,b){this.key=a,this.val=b,this.prev=this.next=null}return b.mixin(c.prototype,{set:function(a,b){var c,d=this.list.tail;this.size>=this.maxSize&&(this.list.remove(d),delete this.hash[d.key],this.size--),(c=this.hash[a])?(c.val=b,this.list.moveToFront(c)):(c=new e(a,b),this.list.add(c),this.hash[a]=c,this.size++)},get:function(a){var b=this.hash[a];if(b)return this.list.moveToFront(b),b.val},reset:function(){this.size=0,this.hash={},this.list=new d}}),b.mixin(d.prototype,{add:function(a){this.head&&(a.next=this.head,this.head.prev=a),this.head=a,this.tail=this.tail||a},remove:function(a){a.prev?a.prev.next=a.next:this.head=a.next,a.next?a.next.prev=a.prev:this.tail=a.prev},moveToFront:function(a){this.remove(a),this.add(a)}}),c}(),f=function(){"use strict";function c(a,c){this.prefix=["__",a,"__"].join(""),this.ttlKey="__ttl__",this.keyMatcher=new RegExp("^"+b.escapeRegExChars(this.prefix)),this.ls=c||h,!this.ls&&this._noop()}function d(){return(new Date).getTime()}function e(a){return JSON.stringify(b.isUndefined(a)?null:a)}function f(b){return a.parseJSON(b)}function g(a){var b,c,d=[],e=h.length;for(b=0;bc)}}),c}(),g=function(){"use strict";function c(a){a=a||{},this.maxPendingRequests=a.maxPendingRequests||6,this.cancelled=!1,this.lastReq=null,this._send=a.transport,this._get=a.limiter?a.limiter(this._get):this._get,this._cache=a.cache===!1?new e(0):g}var d=0,f={},g=new e(10);return c.setMaxPendingRequests=function(a){this.maxPendingRequests=a},c.resetCache=function(){g.reset()},b.mixin(c.prototype,{_fingerprint:function(b){return b=b||{},b.url+b.type+a.param(b.data||{})},_get:function(a,b){function c(a){b(null,a),j._cache.set(h,a)}function e(){b(!0)}function g(){d--,delete f[h],j.onDeckRequestArgs&&(j._get.apply(j,j.onDeckRequestArgs),j.onDeckRequestArgs=null)}var h,i,j=this;h=this._fingerprint(a),this.cancelled||h!==this.lastReq||((i=f[h])?i.done(c).fail(e):db[d]?d++:(e.push(a[c]),c++,d++);return e}var h="c",i="i";return b.mixin(c.prototype,{bootstrap:function(a){this.datums=a.datums,this.trie=a.trie},add:function(a){var c=this;a=b.isArray(a)?a:[a],b.each(a,function(a){var f,g;c.datums[f=c.identify(a)]=a,g=d(c.datumTokenizer(a)),b.each(g,function(a){var b,d,g;for(b=c.trie,d=a.split("");g=d.shift();)b=b[h][g]||(b[h][g]=e()),b[i].push(f)})})},get:function(a){var c=this;return b.map(a,function(a){return c.datums[a]})},search:function(a){var c,e,j=this;return c=d(this.queryTokenizer(a)),b.each(c,function(a){var b,c,d,f;if(e&&0===e.length&&!j.matchAnyQueryToken)return!1;for(b=j.trie,c=a.split("");b&&(d=c.shift());)b=b[h][d];if(b&&0===c.length)f=b[i].slice(0),e=e?g(e,f):f;else if(!j.matchAnyQueryToken)return e=[],!1}),e?b.map(f(e),function(a){return j.datums[a]}):[]},all:function(){var a=[];for(var b in this.datums)a.push(this.datums[b]);return a},reset:function(){this.datums={},this.trie=e()},serialize:function(){return{datums:this.datums,trie:this.trie}}}),c}(),i=function(){"use strict";function a(a){this.url=a.url,this.ttl=a.ttl,this.cache=a.cache,this.prepare=a.prepare,this.transform=a.transform,this.transport=a.transport,this.thumbprint=a.thumbprint,this.storage=new f(a.cacheKey)}var c;return c={data:"data",protocol:"protocol",thumbprint:"thumbprint"},b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},store:function(a){this.cache&&(this.storage.set(c.data,a,this.ttl),this.storage.set(c.protocol,location.protocol,this.ttl),this.storage.set(c.thumbprint,this.thumbprint,this.ttl))},fromCache:function(){var a,b={};return this.cache?(b.data=this.storage.get(c.data),b.protocol=this.storage.get(c.protocol),b.thumbprint=this.storage.get(c.thumbprint),a=b.thumbprint!==this.thumbprint||b.protocol!==location.protocol,b.data&&!a?b.data:null):null},fromNetwork:function(a){function b(){a(!0)}function c(b){a(null,e.transform(b))}var d,e=this;a&&(d=this.prepare(this._settings()),this.transport(d).fail(b).done(c))},clear:function(){return this.storage.clear(),this}}),a}(),j=function(){"use strict";function a(a){this.url=a.url,this.prepare=a.prepare,this.transform=a.transform,this.indexResponse=a.indexResponse,this.transport=new g({cache:a.cache,limiter:a.limiter,transport:a.transport,maxPendingRequests:a.maxPendingRequests})}return b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},get:function(a,b){function c(a,c){b(a?[]:e.transform(c))}var d,e=this;if(b)return a=a||"",d=this.prepare(a,this._settings()),this.transport.get(d,c)},cancelLastRequest:function(){this.transport.cancel()}}),a}(),k=function(){"use strict";function d(d){var e;return d?(e={url:null,ttl:864e5,cache:!0,cacheKey:null,thumbprint:"",prepare:b.identity,transform:b.identity,transport:null},d=b.isString(d)?{url:d}:d,d=b.mixin(e,d),!d.url&&a.error("prefetch requires url to be set"),d.transform=d.filter||d.transform,d.cacheKey=d.cacheKey||d.url,d.thumbprint=c+d.thumbprint,d.transport=d.transport?h(d.transport):a.ajax,d):null}function e(c){var d;if(c)return d={url:null,cache:!0,prepare:null,replace:null,wildcard:null,limiter:null,rateLimitBy:"debounce",rateLimitWait:300,transform:b.identity,transport:null},c=b.isString(c)?{url:c}:c,c=b.mixin(d,c),!c.url&&a.error("remote requires url to be set"),c.transform=c.filter||c.transform,c.prepare=f(c),c.limiter=g(c),c.transport=c.transport?h(c.transport):a.ajax,delete c.replace,delete c.wildcard,delete c.rateLimitBy,delete c.rateLimitWait,c}function f(a){function b(a,b){return b.url=f(b.url,a),b}function c(a,b){return b.url=b.url.replace(g,encodeURIComponent(a)),b}function d(a,b){return b}var e,f,g;return e=a.prepare,f=a.replace,g=a.wildcard,e?e:e=f?b:a.wildcard?c:d}function g(a){function c(a){return function(c){return b.debounce(c,a)}}function d(a){return function(c){return b.throttle(c,a)}}var e,f,g;return e=a.limiter,f=a.rateLimitBy,g=a.rateLimitWait,e||(e=/^throttle$/i.test(f)?d(g):c(g)),e}function h(c){return function(d){function e(a){b.defer(function(){g.resolve(a)})}function f(a){b.defer(function(){g.reject(a)})}var g=a.Deferred();return c(d,e,f),g}}return function(c){var f,g;return f={initialize:!0,identify:b.stringify,datumTokenizer:null,queryTokenizer:null,matchAnyQueryToken:!1,sufficient:5,indexRemote:!1,sorter:null,local:[],prefetch:null,remote:null},c=b.mixin(f,c||{}),!c.datumTokenizer&&a.error("datumTokenizer is required"),!c.queryTokenizer&&a.error("queryTokenizer is required"),g=c.sorter,c.sorter=g?function(a){return a.sort(g)}:b.identity,c.local=b.isFunction(c.local)?c.local():c.local,c.prefetch=d(c.prefetch),c.remote=e(c.remote),c}}(),l=function(){"use strict";function c(a){a=k(a),this.sorter=a.sorter,this.identify=a.identify,this.sufficient=a.sufficient,this.indexRemote=a.indexRemote,this.local=a.local,this.remote=a.remote?new j(a.remote):null,this.prefetch=a.prefetch?new i(a.prefetch):null,this.index=new h({identify:this.identify,datumTokenizer:a.datumTokenizer,queryTokenizer:a.queryTokenizer}),a.initialize!==!1&&this.initialize()}var e;return e=window&&window.Bloodhound,c.noConflict=function(){return window&&(window.Bloodhound=e),c},c.tokenizers=d,b.mixin(c.prototype,{__ttAdapter:function(){function a(a,b,d){return c.search(a,b,d)}function b(a,b){return c.search(a,b)}var c=this;return this.remote?a:b},_loadPrefetch:function(){function b(a,b){return a?c.reject():(e.add(b),e.prefetch.store(e.index.serialize()),void c.resolve())}var c,d,e=this;return c=a.Deferred(),this.prefetch?(d=this.prefetch.fromCache())?(this.index.bootstrap(d),c.resolve()):this.prefetch.fromNetwork(b):c.resolve(),c.promise()},_initialize:function(){function a(){b.add(b.local)}var b=this;return this.clear(),(this.initPromise=this._loadPrefetch()).done(a),this.initPromise},initialize:function(a){return!this.initPromise||a?this._initialize():this.initPromise},add:function(a){return this.index.add(a),this},get:function(a){return a=b.isArray(a)?a:[].slice.call(arguments),this.index.get(a)},search:function(a,c,d){function e(a){var c=[];b.each(a,function(a){!b.some(f,function(b){return g.identify(a)===g.identify(b)})&&c.push(a)}),g.indexRemote&&g.add(c),d(c)}var f,g=this;return c=c||b.noop,d=d||b.noop,f=this.sorter(this.index.search(a)),c(this.remote?f.slice():f),this.remote&&f.length
',menu:'
'}}function d(a){var c={};return b.each(a,function(a,b){c[b]="."+a}),c}function e(){var a={wrapper:{position:"relative",display:"inline-block"},hint:{position:"absolute",top:"0",left:"0",borderColor:"transparent",boxShadow:"none",opacity:"1"},input:{position:"relative",verticalAlign:"top",backgroundColor:"transparent"},inputWithNoHint:{position:"relative",verticalAlign:"top"},menu:{position:"absolute",top:"100%",left:"0",zIndex:"100",display:"none"},ltr:{left:"0",right:"auto"},rtl:{left:"auto",right:" 0"}};return b.isMsie()&&b.mixin(a.input,{backgroundImage:"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)"}),a}var f={wrapper:"twitter-typeahead",input:"tt-input",hint:"tt-hint",menu:"tt-menu",dataset:"tt-dataset",suggestion:"tt-suggestion",selectable:"tt-selectable",empty:"tt-empty",open:"tt-open",cursor:"tt-cursor",highlight:"tt-highlight"};return a}(),d=function(){"use strict";function c(b){b&&b.el||a.error("EventBus initialized without el"),this.$el=a(b.el)}var d,e;return d="typeahead:",e={render:"rendered",cursorchange:"cursorchanged",select:"selected",autocomplete:"autocompleted"},b.mixin(c.prototype,{_trigger:function(b,c){var e=a.Event(d+b);return this.$el.trigger.call(this.$el,e,c||[]),e},before:function(a){var b,c;return b=[].slice.call(arguments,1),c=this._trigger("before"+a,b),c.isDefaultPrevented()},trigger:function(a){var b;this._trigger(a,[].slice.call(arguments,1)),(b=e[a])&&this._trigger(b,[].slice.call(arguments,1))}}),c}(),e=function(){"use strict";function a(a,b,c,d){var e;if(!c)return this;for(b=b.split(i),c=d?h(c,d):c,this._callbacks=this._callbacks||{};e=b.shift();)this._callbacks[e]=this._callbacks[e]||{sync:[],async:[]},this._callbacks[e][a].push(c);return this}function b(b,c,d){return a.call(this,"async",b,c,d)}function c(b,c,d){return a.call(this,"sync",b,c,d)}function d(a){var b;if(!this._callbacks)return this;for(a=a.split(i);b=a.shift();)delete this._callbacks[b];return this}function e(a){var b,c,d,e,g;if(!this._callbacks)return this;for(a=a.split(i),d=[].slice.call(arguments,1);(b=a.shift())&&(c=this._callbacks[b]);)e=f(c.sync,this,[b].concat(d)),g=f(c.async,this,[b].concat(d)),e()&&j(g);return this}function f(a,b,c){function d(){for(var d,e=0,f=a.length;!d&&e