diff --git a/docs/all.css b/docs/all.css
index 2fc4f4700906c..0264b8348e12e 100644
--- a/docs/all.css
+++ b/docs/all.css
@@ -1,3 +1,3 @@
/* THIS FILE IS GENERATED BY build.js */
-:root{--sidebar-width: 240px;--page-width: 1280px;--header-height: 41px;--monospace: Consolas, Menlo, monospace;--non-monospace: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--text-color: #24292e;--background-color: #fff;--link-color: #0366d6;--border-color: #eaecef;--sidebar-color: #616161;--search-highlight-color: #ff0;--selection-color: #FFFDE7}*{box-sizing:border-box}body{padding:0;margin:0;width:100%;background-color:#fff;font-family:var(--non-monospace);line-height:1.5;color:var(--text-color)}.container{max-width:var(--page-width);margin:0 auto}.hbox{flex:auto;display:flex}.vbox{flex:auto;display:flex;flex-direction:column}.content{display:flex}.view{max-width:100%}a{color:var(--link-color);text-decoration:none}external-link-icon{width:13px;height:13px;display:inline-block;background-position:center right;background-repeat:no-repeat;background-image:linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22%3E %3Cpath fill=%22%23fff%22 stroke=%22%2336c%22 d=%22M1.5 4.518h5.982V10.5H1.5z%22/%3E %3Cpath fill=%22%2336c%22 d=%22M5.765 1H11v5.39L9.427 7.937l-1.31-1.31L5.393 9.35l-2.69-2.688 2.81-2.808L4.2 2.544z%22/%3E %3Cpath fill=%22%23fff%22 d=%22M9.995 2.004l.022 4.885L8.2 5.07 5.32 7.95 4.09 6.723l2.882-2.88-1.85-1.852z%22/%3E %3C/svg%3E")}.sidebar{flex:none;flex-basis:var(--sidebar-width);color:var(--sidebar-color);font-size:15px;contain:size}.sidebar a{color:var(--sidebar-color);text-decoration:none;font-size:14px}.sidebar-header,.view-header{flex:none;flex-basis:var(--header-height);display:flex;align-items:center;background-color:#fff;position:sticky;top:0;padding:8px 0}.sidebar-header .home-navigation{flex:auto;padding-left:12px;font-size:16px}.version-selector{flex:none;background-color:transparent;border:0;margin:0 10px;font-size:15px;color:var(--sidebar-color)}.sidebar-body{position:fixed;top:45px;bottom:0;width:var(--sidebar-width);overflow:auto;padding-top:20px;padding-left:10px}.view-body{display:block;padding-top:20px;padding-bottom:15px;flex:auto;max-width:calc(var(--page-width) - 2*var(--sidebar-width))}.view-body-toc{width:var(--sidebar-width)}.view-body-toc ul{position:fixed;list-style:none;padding-left:20px;margin-top:40px;border-left:1px solid var(--border-color)}.view-body-toc ul a{color:var(--sidebar-color);font-size:13px}.view-body-toc ul a:hover{color:var(--link-color)}.sidebar-body>a{line-height:25px;flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-body>a:hover{color:var(--link-color)}.sidebar-body>.header{color:#000;font-size:18px;margin:15px 0 5px 0;padding-left:10px}.sidebar-body>a:not(.header){padding-left:20px}.view:focus{outline:0}markdown-content{display:block;padding:0 32px;word-break:break-word}search-view{flex:auto;display:inline-flex;align-items:center;margin:0 10px}search-view input{-webkit-appearance:none;border:0;font-size:15px;text-overflow:ellipsis;min-width:270px;max-width:770px;border-radius:20px;background-color:#e9e9e9;padding:7px 12px 7px 36px;background-image:url('data:image/svg+xml;utf8, ');background-repeat:no-repeat;background-position:8px 6px}search-view input:focus{outline:0}search-suggestions{position:fixed;--icon-width: 80px;--top: var(--header-height);top:var(--top);left:var(--search-input-x);right:calc(var(--sidebar-width)/2);max-width:900px;max-height:min(700px,calc(100% - var(--top)));display:flex;flex-direction:column;background-color:var(--background-color);overflow-x:hidden;overflow-y:auto;z-index:600;font-size:14px}search-suggestions .search-item{display:flex;flex-direction:row;align-items:center;min-height:50px;padding:0;color:var(--text-color);border-bottom:1px solid rgba(51,51,51,.12)}search-suggestions .search-item.selected,search-suggestions .search-item:hover{background-color:var(--selection-color)}search-suggestions .search-item.text-only{display:flex;align-items:center;justify-content:center}search-suggestions item-icon-container{width:var(--icon-width);flex:none;display:flex;align-items:center;justify-content:center}search-suggestions item-icon{font-size:75%;width:60px;display:flex;align-items:center;justify-content:center;font-family:var(--monospace);padding:1px 4px;border-radius:4px}search-suggestions item-icon.other{background-color:#e1f5fe}search-suggestions item-icon.method{background-color:#fce4ec}search-suggestions item-icon.class{background-color:#d1c4e9}search-suggestions item-icon.event{background-color:#c8e6c9}search-suggestions item-icon.namespace{background-color:#e0e0e0}search-suggestions item-icon.option{background-color:#fff59d}search-suggestions item-icon.value{background-color:#d7ccc8}search-suggestions item-name-container{overflow:hidden;display:block}search-suggestions item-name-container.name-only{display:flex;justify-content:center}search-suggestions item-name{display:block;color:#757575;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--monospace)}search-suggestions item-name mark{background-color:var(--search-highlight-color);color:inherit}search-suggestions item-name strong{color:var(--text-color);font-weight:400}search-suggestions item-description{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}glass-pane{position:fixed;left:0;right:0;top:var(--header-height);bottom:0;display:none;background-color:rgba(0,0,0,.5);z-index:500}body.has-search-suggestions glass-pane{display:block}my-button{background-color:var(--sidebar-color);margin:12px;width:22px;height:24px;display:flex;justify-content:center;align-items:center}#menu-button,#back-button,#clear-button{display:none}.menu-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.back-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.clear-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.footer-container{width:100%;background-color:#434449;font-size:14px;position:relative;display:none}.footer{margin:50px auto 0;padding:30px 30px;max-width:var(--content-width);display:flex;justify-content:space-between;align-items:center}.footer ul{list-style:none;padding:0;display:inline-block}.footer ul li{display:inline-block;margin-right:15px}.footer ul li a{color:#d1d1d1}.footer ul li a:hover{text-decoration:underline}@media only screen and (max-width:800px){:root{--header-height: 60px}body{width:inherit;height:inherit;overflow:inherit}.sidebar-header,.view-header{position:fixed;width:100%;height:var(--header-height);background-color:#fff;z-index:1}.sidebar-body{position:relative;top:0}.sidebar-body,.view-body{margin-top:var(--header-height);max-width:100%}.view-header search-view{background-color:#fff;margin:0 10px 0 0;padding-right:4px}.view-body-toc{display:none}.sidebar-body,.view-body{overflow:inherit}.sidebar{display:none}.sidebar-body>a,.version-selector,.home-navigation,search-view input{font-size:17px}.sidebar-body>a{line-height:30px}body.show-mobile-sidebar .sidebar{display:flex;flex:auto;contain:inherit}body.show-mobile-sidebar .view{display:none}search-suggestions{left:0;right:0}#menu-button,#back-button,#clear-button{display:flex}markdown-content{display:block;padding:0 16px}markdown-content ul{padding-left:20px}}markdown-content h1,markdown-content h2,markdown-content h3,markdown-content h4,markdown-content h5,markdown-content h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25;flex:auto}markdown-content h1{font-size:2em}markdown-content h1,markdown-content h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}markdown-content h2{font-size:1.5em}markdown-content h3{font-size:1.25em}markdown-content h4{font-size:1em}markdown-content h5{font-size:.875em}markdown-content h6{font-size:.85em}markdown-content code{font-family:var(--monospace);padding:.2em .4em;background-color:rgba(27,31,35,.05);border-radius:3px;font-size:85%}markdown-content pre{font-family:var(--monospace);padding:16px;overflow:auto;line-height:1.45;background-color:#f6f8fa;border-radius:3px;font-size:85%}markdown-content pre>code{display:block;font-size:100%;padding:0;background-color:#f6f8fa;border-radius:3px}markdown-content table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse}markdown-content table th{font-weight:600}markdown-content table td,markdown-content table th{padding:6px 13px;border:1px solid #dfe2e5}markdown-content table tr{background-color:#fff;border-top:1px solid #c6cbd1}markdown-content table tr:nth-child(2n){background-color:#f6f8fa}markdown-content table img{background-color:initial}markdown-content tt{padding:.2em .4em;font-family:var(--monospace);margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}markdown-content blockquote{background:#fffde7;padding:1px 1em 1px 2em;margin:2em 0;border-left:.25em solid #ffeb3b}markdown-content .cm-def{color:#005cc5}markdown-content .cm-operator{color:#d73a49}markdown-content .cm-property{color:#6f42c1}markdown-content .cm-variable{color:#005cc5}markdown-content .cm-variable-2{color:#24292e}markdown-content .cm-comment{color:#6a737d}markdown-content .cm-keyword{color:#d73a49}markdown-content .cm-string{color:#032f62}markdown-content .cm-string-2{color:#032f62}markdown-content .cm-number{color:#005cc5}markdown-content header-with-link{display:flex;align-items:baseline;margin-left:-20px}markdown-content li-with-link{margin-left:-40px}markdown-content header-with-link>:not(a:first-child),markdown-content li-with-link>:not(a:first-child){flex:1}markdown-content header-with-link>a:first-child,markdown-content li-with-link>a:first-child{visibility:hidden}markdown-content header-with-link>a:first-child{margin-right:4px}markdown-content li-with-link>a:first-child{margin-right:24px}markdown-content header-with-link:hover>a:first-child,markdown-content li-with-link:hover>a:first-child{visibility:visible}
\ No newline at end of file
+:root{--sidebar-width: 240px;--page-width: 1280px;--header-height: 41px;--monospace: Consolas, Menlo, monospace;--non-monospace: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--text-color: #24292e;--background-color: #fff;--link-color: #0366d6;--border-color: #eaecef;--sidebar-color: #616161;--search-highlight-color: #ff0;--selection-color: #FFFDE7}*{box-sizing:border-box}body{padding:0;margin:0;width:100%;background-color:#fff;font-family:var(--non-monospace);line-height:1.5;color:var(--text-color)}.container{max-width:var(--page-width);margin:0 auto}.hbox{flex:auto;display:flex}.vbox{flex:auto;display:flex;flex-direction:column}.content{display:flex}.view{max-width:100%}a{color:var(--link-color);text-decoration:none}external-link-icon{width:13px;height:13px;display:inline-block;background-position:center right;background-repeat:no-repeat;background-image:linear-gradient(transparent,transparent),url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 width=%2212%22 height=%2212%22%3E %3Cpath fill=%22%23fff%22 stroke=%22%2336c%22 d=%22M1.5 4.518h5.982V10.5H1.5z%22/%3E %3Cpath fill=%22%2336c%22 d=%22M5.765 1H11v5.39L9.427 7.937l-1.31-1.31L5.393 9.35l-2.69-2.688 2.81-2.808L4.2 2.544z%22/%3E %3Cpath fill=%22%23fff%22 d=%22M9.995 2.004l.022 4.885L8.2 5.07 5.32 7.95 4.09 6.723l2.882-2.88-1.85-1.852z%22/%3E %3C/svg%3E")}.sidebar{flex:none;flex-basis:var(--sidebar-width);color:var(--sidebar-color);font-size:15px;contain:size}.sidebar a{color:var(--sidebar-color);text-decoration:none;font-size:14px}.sidebar-header,.view-header{flex:none;flex-basis:var(--header-height);display:flex;align-items:center;background-color:#fff;position:sticky;top:0;padding:8px 0}.sidebar-header .home-navigation{flex:auto;padding-left:12px;font-size:16px}.version-selector{flex:none;background-color:transparent;border:0;margin:0 10px;font-size:15px;color:var(--sidebar-color)}.sidebar-body{position:fixed;top:45px;bottom:0;width:var(--sidebar-width);overflow:auto;padding-top:20px;padding-left:10px}.view-body{display:block;padding-top:20px;padding-bottom:15px;flex:auto;max-width:calc(var(--page-width) - 2*var(--sidebar-width))}.view-body-toc{width:var(--sidebar-width)}.view-body-toc ul{position:fixed;list-style:none;padding-left:20px;margin-top:40px;border-left:1px solid var(--border-color);overflow:auto;height:calc(100vh - 40px)}.view-body-toc ul a{color:var(--sidebar-color);font-size:13px}.view-body-toc ul a:hover{color:var(--link-color)}.sidebar-body>a{line-height:25px;flex:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-body>a:hover{color:var(--link-color)}.sidebar-body>.header{color:#000;font-size:18px;margin:15px 0 5px 0;padding-left:10px}.sidebar-body>a:not(.header){padding-left:20px}.view:focus{outline:0}markdown-content{display:block;padding:0 32px;word-break:break-word}search-view{flex:auto;display:inline-flex;align-items:center;margin:0 10px}search-view input{-webkit-appearance:none;border:0;font-size:15px;text-overflow:ellipsis;min-width:270px;max-width:770px;border-radius:20px;background-color:#e9e9e9;padding:7px 12px 7px 36px;background-image:url('data:image/svg+xml;utf8, ');background-repeat:no-repeat;background-position:8px 6px}search-view input:focus{outline:0}search-suggestions{position:fixed;--icon-width: 80px;--top: var(--header-height);top:var(--top);left:var(--search-input-x);right:calc(var(--sidebar-width)/2);max-width:900px;max-height:min(700px,calc(100% - var(--top)));display:flex;flex-direction:column;background-color:var(--background-color);overflow-x:hidden;overflow-y:auto;z-index:600;font-size:14px}search-suggestions .search-item{display:flex;flex-direction:row;align-items:center;min-height:50px;padding:0;color:var(--text-color);border-bottom:1px solid rgba(51,51,51,.12)}search-suggestions .search-item.selected,search-suggestions .search-item:hover{background-color:var(--selection-color)}search-suggestions .search-item.text-only{display:flex;align-items:center;justify-content:center}search-suggestions item-icon-container{width:var(--icon-width);flex:none;display:flex;align-items:center;justify-content:center}search-suggestions item-icon{font-size:75%;width:60px;display:flex;align-items:center;justify-content:center;font-family:var(--monospace);padding:1px 4px;border-radius:4px}search-suggestions item-icon.other{background-color:#e1f5fe}search-suggestions item-icon.method{background-color:#fce4ec}search-suggestions item-icon.class{background-color:#d1c4e9}search-suggestions item-icon.event{background-color:#c8e6c9}search-suggestions item-icon.namespace{background-color:#e0e0e0}search-suggestions item-icon.option{background-color:#fff59d}search-suggestions item-icon.value{background-color:#d7ccc8}search-suggestions item-name-container{overflow:hidden;display:block}search-suggestions item-name-container.name-only{display:flex;justify-content:center}search-suggestions item-name{display:block;color:#757575;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-family:var(--monospace)}search-suggestions item-name mark{background-color:var(--search-highlight-color);color:inherit}search-suggestions item-name strong{color:var(--text-color);font-weight:400}search-suggestions item-description{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}glass-pane{position:fixed;left:0;right:0;top:var(--header-height);bottom:0;display:none;background-color:rgba(0,0,0,.5);z-index:500}body.has-search-suggestions glass-pane{display:block}my-button{background-color:var(--sidebar-color);margin:12px;width:22px;height:24px;display:flex;justify-content:center;align-items:center}#menu-button,#back-button,#clear-button{display:none}.menu-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.back-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.clear-button-image{mask-image:url('data:image/svg+xml;utf8, ');-webkit-mask-image:url('data:image/svg+xml;utf8, ')}.footer-container{width:100%;background-color:#434449;font-size:14px;position:relative;display:none}.footer{margin:50px auto 0;padding:30px 30px;max-width:var(--content-width);display:flex;justify-content:space-between;align-items:center}.footer ul{list-style:none;padding:0;display:inline-block}.footer ul li{display:inline-block;margin-right:15px}.footer ul li a{color:#d1d1d1}.footer ul li a:hover{text-decoration:underline}@media only screen and (max-width:800px){:root{--header-height: 60px}body{width:inherit;height:inherit;overflow:inherit}.sidebar-header,.view-header{position:fixed;width:100%;height:var(--header-height);background-color:#fff;z-index:1}.sidebar-body{position:relative;top:0}.sidebar-body,.view-body{margin-top:var(--header-height);max-width:100%}.view-header search-view{background-color:#fff;margin:0 10px 0 0;padding-right:4px}.view-body-toc{display:none}.sidebar-body,.view-body{overflow:inherit}.sidebar{display:none}.sidebar-body>a,.version-selector,.home-navigation,search-view input{font-size:17px}.sidebar-body>a{line-height:30px}body.show-mobile-sidebar .sidebar{display:flex;flex:auto;contain:inherit}body.show-mobile-sidebar .view{display:none}search-suggestions{left:0;right:0}#menu-button,#back-button,#clear-button{display:flex}markdown-content{display:block;padding:0 16px}markdown-content ul{padding-left:20px}}markdown-content h1,markdown-content h2,markdown-content h3,markdown-content h4,markdown-content h5,markdown-content h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25;flex:auto}markdown-content h1{font-size:2em}markdown-content h1,markdown-content h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}markdown-content h2{font-size:1.5em}markdown-content h3{font-size:1.25em}markdown-content h4{font-size:1em}markdown-content h5{font-size:.875em}markdown-content h6{font-size:.85em}markdown-content code{font-family:var(--monospace);padding:.2em .4em;background-color:rgba(27,31,35,.05);border-radius:3px;font-size:85%}markdown-content pre{font-family:var(--monospace);padding:16px;overflow:auto;line-height:1.45;background-color:#f6f8fa;border-radius:3px;font-size:85%}markdown-content pre>code{display:block;font-size:100%;padding:0;background-color:#f6f8fa;border-radius:3px}markdown-content table{display:block;width:100%;overflow:auto;border-spacing:0;border-collapse:collapse}markdown-content table th{font-weight:600}markdown-content table td,markdown-content table th{padding:6px 13px;border:1px solid #dfe2e5}markdown-content table tr{background-color:#fff;border-top:1px solid #c6cbd1}markdown-content table tr:nth-child(2n){background-color:#f6f8fa}markdown-content table img{background-color:initial}markdown-content tt{padding:.2em .4em;font-family:var(--monospace);margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:3px}markdown-content blockquote{background:#fffde7;padding:1px 1em 1px 2em;margin:2em 0;border-left:.25em solid #ffeb3b}markdown-content .cm-def{color:#005cc5}markdown-content .cm-operator{color:#d73a49}markdown-content .cm-property{color:#6f42c1}markdown-content .cm-variable{color:#005cc5}markdown-content .cm-variable-2{color:#24292e}markdown-content .cm-comment{color:#6a737d}markdown-content .cm-keyword{color:#d73a49}markdown-content .cm-string{color:#032f62}markdown-content .cm-string-2{color:#032f62}markdown-content .cm-number{color:#005cc5}markdown-content header-with-link{display:flex;align-items:baseline;margin-left:-20px}markdown-content li-with-link{margin-left:-40px}markdown-content header-with-link>:not(a:first-child),markdown-content li-with-link>:not(a:first-child){flex:1}markdown-content header-with-link>a:first-child,markdown-content li-with-link>a:first-child{visibility:hidden}markdown-content header-with-link>a:first-child{margin-right:4px}markdown-content li-with-link>a:first-child{margin-right:24px}markdown-content header-with-link:hover>a:first-child,markdown-content li-with-link:hover>a:first-child{visibility:visible}
\ No newline at end of file
diff --git a/docs/main.js b/docs/main.js
index 03e5b561b74a9..c6361d332b069 100644
--- a/docs/main.js
+++ b/docs/main.js
@@ -1,6 +1,6 @@
/* THIS FILE IS GENERATED BY build.js */
-window.__WEBSITE_VERSION__ = "0.10.15+94fa6fc";
+window.__WEBSITE_VERSION__ = "0.10.17+e7c80dc";
!function(){"use strict";const e=new Map,t=new Set(["async","autofocus","autoplay","checked","contenteditable","controls","default","defer","disabled","formNoValidate","frameborder","hidden","ismap","itemscope","loop","multiple","muted","nomodule","novalidate","open","readonly","required","reversed","scoped","selected","typemustmatch"]);function r(r,...n){let s=e.get(r);s||(s=function(e){const t=document.createElement("template");let r="";for(let t=0;t1||i.length>1)&&a.push({node:e,nameParts:n,valueParts:i,attr:r})}else if(e.nodeType===Node.TEXT_NODE&&o.test(e.data)){const t=e.data.split(o);e.data=t[0];const r=e.nextSibling;for(let n=1;n{if(2===e.length&&""===e[0]&&""===e[1])return n[s++];let t=e[0];for(let r=1;re.removeEventListener(t,r,n)}function a(e){for(const t of e)t.call(null);e.splice(0)}function l(e){e.stopPropagation(),e.preventDefault()}class c{constructor(){this._rollingPromises=new Map}async run(e,t){const r=(this._rollingPromises.get(e)||Promise.resolve()).then(()=>t()),n=r.finally(()=>{this._rollingPromises.get(e)===n&&this._rollingPromises.delete(e)}).catch(e=>{});return this._rollingPromises.set(e,n),r}}class u{constructor(e=0){this._pendingOperation=null,this._runningOperation=null,this._abortController=null,this._timeout=e}schedule(e){this._pendingOperation=e,this._maybeRun()}reset(){this.schedule(null)}_maybeRun(){if(this._runningOperation||!this._pendingOperation)return this._abortController&&this._abortController.abort(),void(this._abortController=null);const e=this._pendingOperation;this._pendingOperation=null,this._abortController=new AbortController,this._runningOperation=Promise.resolve().then(()=>e.call(null,{signal:this._abortController.signal})).catch(e=>console.error(e)).then(()=>this._timeout?new Promise(e=>setTimeout(e,this._timeout)):void 0).then(()=>{this._runningOperation=null,this._abortController=null,this._maybeRun()})}}function h(e){return"#"+new URLSearchParams(Object.entries(e)).toString()}class p{static parseSimpleMarkdown({version:e,path:t,doc:n}){const o=new _,i=r`
`,s=[],a=k(n,"h1,h2,h3,h4,h5,h6",(n,a)=>{const l=n.tagName;for(;s.length&&-1!==s[s.length-1].tagName.localeCompare(l);)s.pop();const c=o.assignLink(n.textContent),u=h({version:e,path:t,q:c}),p=s.length?s[s.length-1].item:null;let m="";m=p?p.description()+" > "+n.textContent:n.textContent;const f=r`${n.textContent} `,_=g(n,u),b=new d({parentItem:p,highlightable:!0,articleElement:i,element:r`${_}${a} `,githubLink:c,scrollAnchor:_,url:u,name:n.textContent,nameElement:f,needleIndexes:y(f),description:m,title:n.textContent,type:d.Type.Other});return s.push({tagName:l,item:b}),b});return i.append(...a.map(e=>e.element())),a.length&&(a[0]._highlightable=!1,a[0]._scrollAnchor=null),new p(e,t,p.Type.SIMPLE_MARKDOWN,a)}static parseDocumentationList({version:e,path:t,doc:n}){const o=[],i=r`${n} `;return function e(t,n){const s=t.querySelectorAll(":scope > ol, :scope > ul");for(const t of s)for(const s of t.querySelectorAll(":scope > li")){let t=s.querySelector(":scope > a")?s.querySelector(":scope > a"):s;const a=n?n.name()+" > ":"",l=t.childNodes[0].textContent.trim(),c=r`${a}${l} `,u=new d({githubLink:t.href,parentItem:n,highlightable:!1,articleElement:i,element:null,scrollAnchor:null,url:t.hash,name:c.textContent,needleIndexes:y(c),nameElement:c,description:null,title:l,type:d.Type.Other});o.push(u),e(s,u)}}(r`${n.querySelector(":scope > ol")} `,null),new p(e,t,p.Type.DOCUMENTATION_LIST,o)}static parsePlaywrightAPI({version:e,path:t,doc:n}){const o=`Parsing Playwright API ${e}`;console.time(o);const i=new _,s=(e,t)=>e===d.Type.Class?t.substring("class: ".length):e===d.Type.Method?t.split("(")[0]:t,a=k(n,"h3",(n,o)=>{const a=r`
`,l=function(n,o,a){const l=i.assignLink(o.textContent),c=h({version:e,path:t,q:l}),u=r`${g(o,c)}${a} `,p=o.textContent.startsWith("class: ")?d.Type.Class:d.Type.Other,m=u.querySelector("p"),f=m&&m.textContent?m.textContent:name+" > "+o.textContent;return new d({parentItem:null,highlightable:!1,articleElement:n,element:u,githubLink:l,scrollAnchor:null,url:c,name:o.textContent,nameElement:r`${o.textContent} `,description:f,title:s(p,o.textContent),type:p})}(a,n,o),c=k(l.element(),"h4",(n,o)=>(function(n,o,a){const l=i.assignLink(o.textContent);let c=o.textContent;const u=a.querySelector("p")?a.querySelector("p").textContent:"";let p=d.Type.Other,m=null;c.startsWith("event: ")?p=d.Type.Event:c.includes(".")&&(p=c.includes("(")?d.Type.Method:d.Type.Namespace);if(p===d.Type.Method){const[e,t]=c.split("."),[n,o]=t.split("(");m=r`${e}.${n} (${o}`}else if(p===d.Type.Namespace){const[e,t]=c.split(".");m=r`${e}.${t} `}else p===d.Type.Event&&(m=r`event: ${c.substring("event: ".length)} `);const f=h({version:e,path:t,q:l}),_=g(o,f);return new d({parentItem:n,highlightable:!0,articleElement:n.articleElement(),element:r`${_}${a} `,githubLink:l,scrollAnchor:_,url:f,name:c,nameElement:m,needleIndexes:y(m),description:u,title:s(p,c),type:p})})(l,n,o));a.append(l.element(),...c.map(e=>e.element()));const u=c.map(n=>{if(n.type()!==d.Type.Method)return n;const o=n.element().querySelector("ul");return o?[n,...function n(o,i,s,a="",l=""){const c=s.querySelectorAll(":scope > li > code:first-child");if(!c.length)return[];return Array.from(c).map(s=>{const c=s.textContent.trim(),u=i._githubLink+(i.type()===d.Type.Method?"--":"-")+f(c.toLowerCase()),p=h({version:e,path:t,q:u}),m=s.parentElement,_=m.querySelector("a"),g=m.querySelector("a + a"),k=_&&"Array"===_.textContent,w=_&&"Object"===_.textContent||g&&"Object"===g.textContent,v=r`
${b()}
@@ -104,4 +104,4 @@ window.__WEBSITE_VERSION__ = "0.10.15+94fa6fc";
`})}
- `}(f)),e.scrollTop=0,void _.focus()}const w=p.glossaryItem(l);if(w.markdownFile()===f||g&&g.glossaryItems().some(e=>e.url()===w.url())){const e=w.title(),t=o.inputElement();t.focus(),t.value=e,t.selectionStart=e.length,t.selectionEnd=e.length}else o.inputElement().value="";if(p.glossaryItems()&&p.glossaryItems().length){const e=r`${p.glossaryItems()[0].childItems().map(e=>r`${e.name()} `)} `;_.$(".view-body-toc").textContent="",_.$(".view-body-toc").append(e)}document.title=w.title().replace(/[\u{1f300}-\u{1f5ff}\u{1f900}-\u{1f9ff}\u{1f600}-\u{1f64f}\u{1f680}-\u{1f6ff}\u{2600}-\u{26ff}\u{2700}-\u{27bf}\u{1f1e6}-\u{1f1ff}\u{1f191}-\u{1f251}\u{1f004}\u{1f0cf}\u{1f170}-\u{1f171}\u{1f17e}-\u{1f17f}\u{1f18e}\u{3030}\u{2b50}\u{2b55}\u{2934}-\u{2935}\u{2b05}-\u{2b07}\u{2b1b}-\u{2b1c}\u{3297}\u{3299}\u{303d}\u{00a9}\u{00ae}\u{2122}\u{23f3}\u{24c2}\u{23e9}-\u{23ef}\u{25b6}\u{23f8}-\u{23fa}]/gu,"");const v=w.articleElement();if(!v.isConnected){const e=_.$(".view-body");e.textContent="",e.append(v)}w.scrollAnchor()?(U(w.scrollAnchor(),{block:"start",behavior:"instant"}),window.scrollBy(0,-60)):window.scrollTo({top:0}),_.focus(),await w.highlight(),G.style.display="block"})},!1),window.__WEBSITE_VERSION__&&window.addEventListener("load",()=>{"serviceWorker"in navigator&&navigator.serviceWorker.register("./sw.js")})}();
\ No newline at end of file
+ `}(f)),e.scrollTop=0,_.focus(),void(_.$(".view-body-toc").textContent="")}const w=p.glossaryItem(l);if(w.markdownFile()===f||g&&g.glossaryItems().some(e=>e.url()===w.url())){const e=w.title(),t=o.inputElement();t.focus(),t.value=e,t.selectionStart=e.length,t.selectionEnd=e.length}else o.inputElement().value="";if(w){const e=r`${(w.parentItem()||w).childItems().map(e=>r`${e.name()} `)} `;_.$(".view-body-toc").textContent="",_.$(".view-body-toc").append(e)}document.title=w.title().replace(/[\u{1f300}-\u{1f5ff}\u{1f900}-\u{1f9ff}\u{1f600}-\u{1f64f}\u{1f680}-\u{1f6ff}\u{2600}-\u{26ff}\u{2700}-\u{27bf}\u{1f1e6}-\u{1f1ff}\u{1f191}-\u{1f251}\u{1f004}\u{1f0cf}\u{1f170}-\u{1f171}\u{1f17e}-\u{1f17f}\u{1f18e}\u{3030}\u{2b50}\u{2b55}\u{2934}-\u{2935}\u{2b05}-\u{2b07}\u{2b1b}-\u{2b1c}\u{3297}\u{3299}\u{303d}\u{00a9}\u{00ae}\u{2122}\u{23f3}\u{24c2}\u{23e9}-\u{23ef}\u{25b6}\u{23f8}-\u{23fa}]/gu,"");const v=w.articleElement();if(!v.isConnected){const e=_.$(".view-body");e.textContent="",e.append(v)}w.scrollAnchor()?(U(w.scrollAnchor(),{block:"start",behavior:"instant"}),window.scrollBy(0,-60)):window.scrollTo({top:0}),_.focus(),await w.highlight(),G.style.display="block"})},!1),window.__WEBSITE_VERSION__&&window.addEventListener("load",()=>{"serviceWorker"in navigator&&navigator.serviceWorker.register("./sw.js")})}();
\ No newline at end of file
diff --git a/docs/sw.js b/docs/sw.js
index 73234bff20fb0..4af1294514a17 100644
--- a/docs/sw.js
+++ b/docs/sw.js
@@ -20,7 +20,7 @@ importScripts('https://storage.googleapis.com/workbox-cdn/releases/5.1.2/workbox
workbox.core.skipWaiting();
workbox.core.clientsClaim();
-workbox.precaching.precacheAndRoute([{"revision":"505104787679d9247f059f4182117a19","url":"all.css"},{"revision":"f873bd68ae59a1421d0d96750fa6a86f","url":"index.html"},{"revision":"c6e03ee5b6b3284b27c5f1cbb8c265df","url":"main.js"}]);
+workbox.precaching.precacheAndRoute([{"revision":"6f3fb3d6051438def777d670a0acbd88","url":"all.css"},{"revision":"f873bd68ae59a1421d0d96750fa6a86f","url":"index.html"},{"revision":"f5b4f477778bf4b9b2bda114dd2e02f7","url":"main.js"}]);
// This is needed to make SPA to work offline.
// workbox.routing.registerNavigationRoute("index.html");
diff --git a/package.json b/package.json
index 6c0f3e2879a5d..7cb7dc77fc013 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "pw.dev",
- "version": "0.10.16",
+ "version": "0.10.17",
"engines": {
"node": ">=12.10.0"
},