diff --git a/API_CHANGELOG.md b/API_CHANGELOG.md index 44faeb7602..171111842d 100644 --- a/API_CHANGELOG.md +++ b/API_CHANGELOG.md @@ -2,7 +2,7 @@ This changelog notes changes to API endpoints that are documented and listed through Swagger. Changes to undocumented, internal CATMAID APIs are not included in this changelog. -## Under development +## 2021.12.21 ### Additions diff --git a/CHANGELOG.md b/CHANGELOG.md index c5dcbd960b..0989692414 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,6 @@ -## Under development +## 2021.12.21 +Contributors: Chris Barnes, Albert Cardona, Andrew Champion, Stephan Gerhard, Sanja Jasek, Tom Kazimiers ### Notes diff --git a/django/projects/mysite/utils.py b/django/projects/mysite/utils.py index 3fcb4de4e8..e47c9de597 100644 --- a/django/projects/mysite/utils.py +++ b/django/projects/mysite/utils.py @@ -9,11 +9,11 @@ # This variable contains a reference version of the current code-base. It is # updated by release and dev-cycle scripts. -BASE_VERSION = '2020.02.15-dev' +BASE_VERSION = '2021.12.21' # This commit is the reference commit of the BASE_VERSION above. Technically, it # is the commit right before the BASE_VERSION, because the release script will # change these fields and onlt create the actual release commit after the changes. -BASE_COMMIT = 'e8e89cdc441ae20e0f7217578ca98d03074b6b8e' +BASE_COMMIT = '5e2c7a82890fe274291b231e5ae0ea3491d7d8c1' # These file is created as part of our Docker build and is looked at as # fall-back, should no git environment be available. The VERSION_INFO_PATH file # contains the "git describe" output of the build environment. diff --git a/sphinx-doc/source/_static/api/index.html b/sphinx-doc/source/_static/api/index.html index c7bd26ccec..795d22c1e9 100644 --- a/sphinx-doc/source/_static/api/index.html +++ b/sphinx-doc/source/_static/api/index.html @@ -3,7 +3,7 @@ - ReDoc documentation + CATMAID API "},this.getStyleTags=function(){return e.sealed?S(2):e._emitSheetCSS()},this.getStyleElement=function(){var t;if(e.sealed)return S(2);var n=((t={})[w]="",t["data-styled-version"]="5.1.1",t.dangerouslySetInnerHTML={__html:e.instance.toString()},t),r=_();return r&&(n.nonce=r),[i.a.createElement("style",d({},n,{key:"sc-0-0"}))]},this.seal=function(){e.sealed=!0},this.instance=new q({isServer:!0}),this.sealed=!1}var t=e.prototype;return t.collectStyles=function(e){return this.sealed?S(2):i.a.createElement(ne,{sheet:this.instance},e)},t.interleaveWithNodeStream=function(e){return S(3)},e}(),De=function(e){var t=i.a.forwardRef((function(t,n){var r=Object(o.useContext)(Se),a=e.defaultProps,s=xe(t,r,a);return i.a.createElement(e,d({},t,{theme:s,ref:n}))}));return f()(t,e),t.displayName="WithTheme("+b(e)+")",t},Fe=function(){return Object(o.useContext)(Se)},ze={StyleSheet:q,masterSheet:J},Ue="5.1.1";t.default=Pe}.call(this,n(14))},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var l,c=[],u=!1,p=-1;function f(){u&&l&&(u=!1,l.length?c=l.concat(c):p=-1,c.length&&d())}function d(){if(!u){var e=s(f);u=!0;for(var t=c.length;t;){for(l=c,c=[];++p1)for(var n=1;n + * @author Feross Aboukhadijeh * @license MIT */ -var r=n(228),o=n(229),i=n(122);function a(){return l.TYPED_ARRAY_SUPPORT?2147483647:1073741823}function s(e,t){if(a()=a())throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+a().toString(16)+" bytes");return 0|e}function h(e,t){if(l.isBuffer(e))return e.length;if("undefined"!=typeof ArrayBuffer&&"function"==typeof ArrayBuffer.isView&&(ArrayBuffer.isView(e)||e instanceof ArrayBuffer))return e.byteLength;"string"!=typeof e&&(e=""+e);var n=e.length;if(0===n)return 0;for(var r=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":case void 0:return B(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return $(e).length;default:if(r)return B(e).length;t=(""+t).toLowerCase(),r=!0}}function m(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return A(this,t,n);case"utf8":case"utf-8":return O(this,t,n);case"ascii":return C(this,t,n);case"latin1":case"binary":return I(this,t,n);case"base64":return S(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return j(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function g(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function y(e,t,n,r,o){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),n=+n,isNaN(n)&&(n=o?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(o)return-1;n=e.length-1}else if(n<0){if(!o)return-1;n=0}if("string"==typeof t&&(t=l.from(t,r)),l.isBuffer(t))return 0===t.length?-1:v(e,t,n,r,o);if("number"==typeof t)return t&=255,l.TYPED_ARRAY_SUPPORT&&"function"==typeof Uint8Array.prototype.indexOf?o?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):v(e,[t],n,r,o);throw new TypeError("val must be string, number or Buffer")}function v(e,t,n,r,o){var i,a=1,s=e.length,l=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,l/=2,n/=2}function c(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(o){var u=-1;for(i=n;is&&(n=s-l),i=n;i>=0;i--){for(var p=!0,f=0;fo&&(r=o):r=o;var i=t.length;if(i%2!=0)throw new TypeError("Invalid hex string");r>i/2&&(r=i/2);for(var a=0;a>8,o=n%256,i.push(o),i.push(r);return i}(t,e.length-n),e,n,r)}function S(e,t,n){return 0===t&&n===e.length?r.fromByteArray(e):r.fromByteArray(e.slice(t,n))}function O(e,t,n){n=Math.min(e.length,n);for(var r=[],o=t;o239?4:c>223?3:c>191?2:1;if(o+p<=n)switch(p){case 1:c<128&&(u=c);break;case 2:128==(192&(i=e[o+1]))&&(l=(31&c)<<6|63&i)>127&&(u=l);break;case 3:i=e[o+1],a=e[o+2],128==(192&i)&&128==(192&a)&&(l=(15&c)<<12|(63&i)<<6|63&a)>2047&&(l<55296||l>57343)&&(u=l);break;case 4:i=e[o+1],a=e[o+2],s=e[o+3],128==(192&i)&&128==(192&a)&&128==(192&s)&&(l=(15&c)<<18|(63&i)<<12|(63&a)<<6|63&s)>65535&&l<1114112&&(u=l)}null===u?(u=65533,p=1):u>65535&&(u-=65536,r.push(u>>>10&1023|55296),u=56320|1023&u),r.push(u),o+=p}return function(e){var t=e.length;if(t<=T)return String.fromCharCode.apply(String,e);var n="",r=0;for(;r0&&(e=this.toString("hex",0,n).match(/.{2}/g).join(" "),this.length>n&&(e+=" ... ")),""},l.prototype.compare=function(e,t,n,r,o){if(!l.isBuffer(e))throw new TypeError("Argument must be a Buffer");if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===o&&(o=this.length),t<0||n>e.length||r<0||o>this.length)throw new RangeError("out of range index");if(r>=o&&t>=n)return 0;if(r>=o)return-1;if(t>=n)return 1;if(this===e)return 0;for(var i=(o>>>=0)-(r>>>=0),a=(n>>>=0)-(t>>>=0),s=Math.min(i,a),c=this.slice(r,o),u=e.slice(t,n),p=0;po)&&(n=o),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var i=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return x(this,e,t,n);case"ascii":return w(this,e,t,n);case"latin1":case"binary":return k(this,e,t,n);case"base64":return _(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return E(this,e,t,n);default:if(i)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),i=!0}},l.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var T=4096;function C(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;or)&&(n=r);for(var o="",i=t;in)throw new RangeError("Trying to access beyond buffer length")}function R(e,t,n,r,o,i){if(!l.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>o||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r){t<0&&(t=65535+t+1);for(var o=0,i=Math.min(e.length-n,2);o>>8*(r?o:1-o)}function L(e,t,n,r){t<0&&(t=4294967295+t+1);for(var o=0,i=Math.min(e.length-n,4);o>>8*(r?o:3-o)&255}function M(e,t,n,r,o,i){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function D(e,t,n,r,i){return i||M(e,0,n,4),o.write(e,t,n,r,23,4),n+4}function F(e,t,n,r,i){return i||M(e,0,n,8),o.write(e,t,n,r,52,8),n+8}l.prototype.slice=function(e,t){var n,r=this.length;if((e=~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),(t=void 0===t?r:~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),t0&&(o*=256);)r+=this[e+--t]*o;return r},l.prototype.readUInt8=function(e,t){return t||P(e,1,this.length),this[e]},l.prototype.readUInt16LE=function(e,t){return t||P(e,2,this.length),this[e]|this[e+1]<<8},l.prototype.readUInt16BE=function(e,t){return t||P(e,2,this.length),this[e]<<8|this[e+1]},l.prototype.readUInt32LE=function(e,t){return t||P(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},l.prototype.readUInt32BE=function(e,t){return t||P(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},l.prototype.readIntLE=function(e,t,n){e|=0,t|=0,n||P(e,t,this.length);for(var r=this[e],o=1,i=0;++i=(o*=128)&&(r-=Math.pow(2,8*t)),r},l.prototype.readIntBE=function(e,t,n){e|=0,t|=0,n||P(e,t,this.length);for(var r=t,o=1,i=this[e+--r];r>0&&(o*=256);)i+=this[e+--r]*o;return i>=(o*=128)&&(i-=Math.pow(2,8*t)),i},l.prototype.readInt8=function(e,t){return t||P(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},l.prototype.readInt16LE=function(e,t){t||P(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt16BE=function(e,t){t||P(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},l.prototype.readInt32LE=function(e,t){return t||P(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},l.prototype.readInt32BE=function(e,t){return t||P(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},l.prototype.readFloatLE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!0,23,4)},l.prototype.readFloatBE=function(e,t){return t||P(e,4,this.length),o.read(this,e,!1,23,4)},l.prototype.readDoubleLE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!0,52,8)},l.prototype.readDoubleBE=function(e,t){return t||P(e,8,this.length),o.read(this,e,!1,52,8)},l.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t|=0,n|=0,r)||R(this,e,t,n,Math.pow(2,8*n)-1,0);var o=1,i=0;for(this[t]=255&e;++i=0&&(i*=256);)this[t+o]=e/i&255;return t+n},l.prototype.writeUInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,255,0),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),this[t]=255&e,t+1},l.prototype.writeUInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},l.prototype.writeUInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,65535,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},l.prototype.writeUInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e):L(this,e,t,!0),t+4},l.prototype.writeUInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,4294967295,0),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):L(this,e,t,!1),t+4},l.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=0,a=1,s=0;for(this[t]=255&e;++i>0)-s&255;return t+n},l.prototype.writeIntBE=function(e,t,n,r){if(e=+e,t|=0,!r){var o=Math.pow(2,8*n-1);R(this,e,t,n,o-1,-o)}var i=n-1,a=1,s=0;for(this[t+i]=255&e;--i>=0&&(a*=256);)e<0&&0===s&&0!==this[t+i+1]&&(s=1),this[t+i]=(e/a>>0)-s&255;return t+n},l.prototype.writeInt8=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,1,127,-128),l.TYPED_ARRAY_SUPPORT||(e=Math.floor(e)),e<0&&(e=255+e+1),this[t]=255&e,t+1},l.prototype.writeInt16LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8):N(this,e,t,!0),t+2},l.prototype.writeInt16BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,2,32767,-32768),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>8,this[t+1]=255&e):N(this,e,t,!1),t+2},l.prototype.writeInt32LE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),l.TYPED_ARRAY_SUPPORT?(this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24):L(this,e,t,!0),t+4},l.prototype.writeInt32BE=function(e,t,n){return e=+e,t|=0,n||R(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),l.TYPED_ARRAY_SUPPORT?(this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e):L(this,e,t,!1),t+4},l.prototype.writeFloatLE=function(e,t,n){return D(this,e,t,!0,n)},l.prototype.writeFloatBE=function(e,t,n){return D(this,e,t,!1,n)},l.prototype.writeDoubleLE=function(e,t,n){return F(this,e,t,!0,n)},l.prototype.writeDoubleBE=function(e,t,n){return F(this,e,t,!1,n)},l.prototype.copy=function(e,t,n,r){if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("sourceStart out of bounds");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else if(i<1e3||!l.TYPED_ARRAY_SUPPORT)for(o=0;o>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(i=t;i55295&&n<57344){if(!o){if(n>56319){(t-=3)>-1&&i.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&i.push(239,191,189);continue}o=n;continue}if(n<56320){(t-=3)>-1&&i.push(239,191,189),o=n;continue}n=65536+(o-55296<<10|n-56320)}else o&&(t-=3)>-1&&i.push(239,191,189);if(o=null,n<128){if((t-=1)<0)break;i.push(n)}else if(n<2048){if((t-=2)<0)break;i.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;i.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;i.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return i}function $(e){return r.toByteArray(function(e){if((e=function(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}(e).replace(U,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function q(e,t,n,r){for(var o=0;o=t.length||o>=e.length);++o)t[o+n]=e[o];return o}}).call(this,n(5))},function(e,t){e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){var n,r,o=e.exports={};function i(){throw new Error("setTimeout has not been defined")}function a(){throw new Error("clearTimeout has not been defined")}function s(e){if(n===setTimeout)return setTimeout(e,0);if((n===i||!n)&&setTimeout)return n=setTimeout,setTimeout(e,0);try{return n(e,0)}catch(t){try{return n.call(null,e,0)}catch(t){return n.call(this,e,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:i}catch(e){n=i}try{r="function"==typeof clearTimeout?clearTimeout:a}catch(e){r=a}}();var l,c=[],u=!1,p=-1;function f(){u&&l&&(u=!1,l.length?c=l.concat(c):p=-1,c.length&&d())}function d(){if(!u){var e=s(f);u=!0;for(var t=c.length;t;){for(l=c,c=[];++p1)for(var n=1;n=0?e.substr(t).toLowerCase():""},t.getHash=function(e){var t=e.indexOf("#");return t>=0?e.substr(t):"#"},t.stripHash=function(e){var t=e.indexOf("#");return t>=0&&(e=e.substr(0,t)),e},t.isHttp=function(e){var t=s.getProtocol(e);return"http"===t||"https"===t||void 0===t&&r.browser},t.isFileSystemPath=function(e){if(r.browser)return!1;var t=s.getProtocol(e);return void 0===t||"file"===t},t.fromFileSystemPath=function(e){o&&(e=e.replace(/\\/g,"/")),e=encodeURI(e);for(var t=0;t0&&(p=e.exports.formatter.apply(null,s)),n&&n.message&&(p+=(p?" \n":"")+n.message);var f=new t(p);return l(f,n),c(f),u(f,r),f}}function l(e,t){!function(e,t){!function(e){if(!m)return!1;var t=Object.getOwnPropertyDescriptor(e,"stack");if(!t)return!1;return"function"==typeof t.get}(e)?e.stack=t?d(e.stack,t.stack):h(e.stack):t?function(e,t){var n=Object.getOwnPropertyDescriptor(e,"stack");Object.defineProperty(e,"stack",{get:function(){return d(n.get.apply(e),t.stack)},enumerable:!1,configurable:!0})}(e,t):(n=e,r=Object.getOwnPropertyDescriptor(n,"stack"),Object.defineProperty(n,"stack",{get:function(){return h(r.get.apply(n))},enumerable:!1,configurable:!0}));var n,r}(e,t),u(e,t)}function c(e){e.toJSON=p,e.inspect=f}function u(e,t){if(t&&"object"==typeof t)for(var n=Object.keys(t),r=0;r=0))try{e[o]=t[o]}catch(e){}}}function p(){var e={},t=Object.keys(this);t=t.concat(a);for(var n=0;n=0)return t.splice(n,1),t.join("\n")}return e}}e.exports=s(Error),e.exports.error=s(Error),e.exports.eval=s(EvalError),e.exports.range=s(RangeError),e.exports.reference=s(ReferenceError),e.exports.syntax=s(SyntaxError),e.exports.type=s(TypeError),e.exports.uri=s(URIError),e.exports.formatter=r;var m=!(!Object.getOwnPropertyDescriptor||!Object.defineProperty||"undefined"!=typeof navigator&&/Android/.test(navigator.userAgent))},function(e,t){"function"==typeof Object.create?e.exports=function(e,t){t&&(e.super_=t,e.prototype=Object.create(t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}))}:e.exports=function(e,t){if(t){e.super_=t;var n=function(){};n.prototype=t.prototype,e.prototype=new n,e.prototype.constructor=e}}},function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE)try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(e){console.error(e)}}(),e.exports=n(216)},function(e,t,n){var r=n(3),o=n(36),i=n(20),a=n(13),s=n(67),l=n(95),c=n(30),u=c.get,p=c.enforce,f=String(l).split("toString");o("inspectSource",function(e){return l.call(e)}),(e.exports=function(e,t,n,o){var l=!!o&&!!o.unsafe,c=!!o&&!!o.enumerable,u=!!o&&!!o.noTargetGet;"function"==typeof n&&("string"!=typeof t||a(n,"name")||i(n,"name",t),p(n).source=f.join("string"==typeof t?t:"")),e!==r?(l?!u&&e[t]&&(c=!0):delete e[t],c?e[t]=n:i(e,t,n)):c?e[t]=n:s(t,n)})(Function.prototype,"toString",function(){return"function"==typeof this&&u(this).source||l.call(this)})},function(e,t,n){var r,o,i,a=n(155),s=n(3),l=n(7),c=n(20),u=n(13),p=n(53),f=n(39),d=s.WeakMap;if(a){var h=new d,m=h.get,g=h.has,y=h.set;r=function(e,t){return y.call(h,e,t),t},o=function(e){return m.call(h,e)||{}},i=function(e){return g.call(h,e)}}else{var v=p("state");f[v]=!0,r=function(e,t){return c(e,v,t),t},o=function(e){return u(e,v)?e[v]:{}},i=function(e){return u(e,v)}}e.exports={set:r,get:o,has:i,enforce:function(e){return i(e)?o(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!l(t)||(n=o(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},function(e,t,n){var r=n(72),o=n(40);e.exports=function(e){return r(o(e))}},function(e,t,n){var r=n(69),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},function(e,t,n){"use strict";var r=n(45),o=n(58),i=n(6);function a(e,t,n){var r=[];return e.include.forEach(function(e){n=a(e,t,n)}),e[t].forEach(function(e){n.forEach(function(t,n){t.tag===e.tag&&t.kind===e.kind&&r.push(n)}),n.push(e)}),n.filter(function(e,t){return-1===r.indexOf(t)})}function s(e){this.include=e.include||[],this.implicit=e.implicit||[],this.explicit=e.explicit||[],this.implicit.forEach(function(e){if(e.loadKind&&"scalar"!==e.loadKind)throw new o("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.")}),this.compiledImplicit=a(this,"implicit",[]),this.compiledExplicit=a(this,"explicit",[]),this.compiledTypeMap=function(){var e,t,n={scalar:{},sequence:{},mapping:{},fallback:{}};function r(e){n[e.kind][e.tag]=n.fallback[e.tag]=e}for(e=0,t=arguments.length;ee.length)return;if(!(w instanceof o)){if(m&&b!=t.length-1){if(f.lastIndex=x,!(T=f.exec(e)))break;for(var k=T.index+(h?T[1].length:0),_=T.index+T[0].length,E=b,S=x,O=t.length;E=(S+=t[E].length)&&(++b,x=S);if(t[b]instanceof o)continue;C=E-b,w=e.slice(x,S),T.index-=x}else{f.lastIndex=0;var T=f.exec(w),C=1}if(T){h&&(g=T[1]?T[1].length:0);_=(k=T.index+g)+(T=T[0].slice(g)).length;var I=w.slice(0,k),A=w.slice(_),j=[b,C];I&&(++b,x+=I.length,j.push(I));var P=new o(c,d?r.tokenize(T,d):T,y,T,m);if(j.push(P),A&&j.push(A),Array.prototype.splice.apply(t,j),1!=C&&r.matchGrammar(e,t,n,b,x,!0,c),s)break}else if(s)break}}}}},tokenize:function(e,t){var n=[e],o=t.rest;if(o){for(var i in o)t[i]=o[i];delete t.rest}return r.matchGrammar(e,n,t,0,0,!1),n},hooks:{all:{},add:function(e,t){var n=r.hooks.all;n[e]=n[e]||[],n[e].push(t)},run:function(e,t){var n=r.hooks.all[e];if(n&&n.length)for(var o,i=0;o=n[i++];)o(t)}},Token:o};function o(e,t,n,r,o){this.type=e,this.content=t,this.alias=n,this.length=0|(r||"").length,this.greedy=!!o}if(e.Prism=r,o.stringify=function(e,t){if("string"==typeof e)return e;if(Array.isArray(e))return e.map(function(e){return o.stringify(e,t)}).join("");var n={type:e.type,content:o.stringify(e.content,t),tag:"span",classes:["token",e.type],attributes:{},language:t};if(e.alias){var i=Array.isArray(e.alias)?e.alias:[e.alias];Array.prototype.push.apply(n.classes,i)}r.hooks.run("wrap",n);var a=Object.keys(n.attributes).map(function(e){return e+'="'+(n.attributes[e]||"").replace(/"/g,""")+'"'}).join(" ");return"<"+n.tag+' class="'+n.classes.join(" ")+'"'+(a?" "+a:"")+">"+n.content+""},!e.document)return e.addEventListener?(r.disableWorkerMessageHandler||e.addEventListener("message",function(t){var n=JSON.parse(t.data),o=n.language,i=n.code,a=n.immediateClose;e.postMessage(r.highlight(i,r.languages[o],o)),a&&e.close()},!1),r):r;var i=document.currentScript||[].slice.call(document.getElementsByTagName("script")).pop();return i&&(r.filename=i.src,r.manual||i.hasAttribute("data-manual")||("loading"!==document.readyState?window.requestAnimationFrame?window.requestAnimationFrame(r.highlightAll):window.setTimeout(r.highlightAll,16):document.addEventListener("DOMContentLoaded",r.highlightAll))),r}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{});e.exports&&(e.exports=n),void 0!==t&&(t.Prism=n),n.languages.markup={comment://,prolog:/<\?[\s\S]+?\?>/,doctype://i,cdata://i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s\/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},n.languages.markup.tag.inside["attr-value"].inside.entity=n.languages.markup.entity,n.hooks.add("wrap",function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))}),Object.defineProperty(n.languages.markup.tag,"addInlined",{value:function(e,t){var r={};r["language-"+t]={pattern:/(^$)/i,lookbehind:!0,inside:n.languages[t]},r.cdata=/^$/i;var o={"included-cdata":{pattern://i,inside:r}};o["language-"+t]={pattern:/[\s\S]+/,inside:n.languages[t]};var i={};i[e]={pattern:RegExp(/(<__[\s\S]*?>)(?:\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,e),"i"),lookbehind:!0,greedy:!0,inside:o},n.languages.insertBefore("markup","cdata",i)}}),n.languages.xml=n.languages.extend("markup",{}),n.languages.html=n.languages.markup,n.languages.mathml=n.languages.markup,n.languages.svg=n.languages.markup,function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/@[\w-]+/}},url:{pattern:RegExp("url\\((?:"+t.source+"|[^\n\r()]*)\\)","i"),inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+t.source+")*?(?=\\s*\\{)"),string:{pattern:t,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var n=e.languages.markup;n&&(n.tag.addInlined("style","css"),e.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:n.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:e.languages.css}},alias:"language-css"}},n.tag))}(n),n.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/((?:\b(?:class|interface|extends|implements|trait|instanceof|new)\s+)|(?:catch\s+\())[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&?|\|\|?|\?|\*|\/|~|\^|%/,punctuation:/[{}[\];(),.:]/},n.languages.javascript=n.languages.extend("clike",{"class-name":[n.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.])\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/-[-=]?|\+[+=]?|!=?=?|<>?>?=?|=(?:==?|>)?|&[&=]?|\|[|=]?|\*\*?=?|\/=?|~|\^=?|%=?|\?|\.{3}/}),n.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,n.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^\/\\\[\r\n])+\/[gimyus]{0,6}(?=\s*($|[\r\n,.;})\]]))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:n.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:n.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:n.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:n.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),n.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:n.languages.javascript}},string:/[\s\S]+/}}}),n.languages.markup&&n.languages.markup.tag.addInlined("script","javascript"),n.languages.js=n.languages.javascript,"undefined"!=typeof self&&self.Prism&&self.document&&document.querySelector&&(self.Prism.fileHighlight=function(e){e=e||document;var t={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"};Array.prototype.slice.call(e.querySelectorAll("pre[data-src]")).forEach(function(e){if(!e.hasAttribute("data-src-loaded")){for(var r,o=e.getAttribute("data-src"),i=e,a=/\blang(?:uage)?-([\w-]+)\b/i;i&&!a.test(i.className);)i=i.parentNode;if(i&&(r=(e.className.match(a)||[,""])[1]),!r){var s=(o.match(/\.(\w+)$/)||[,""])[1];r=t[s]||s}var l=document.createElement("code");l.className="language-"+r,e.textContent="",l.textContent="Loading…",e.appendChild(l);var c=new XMLHttpRequest;c.open("GET",o,!0),c.onreadystatechange=function(){4==c.readyState&&(c.status<400&&c.responseText?(l.textContent=c.responseText,n.highlightElement(l),e.setAttribute("data-src-loaded","")):c.status>=400?l.textContent="✖ Error "+c.status+" while fetching file: "+c.statusText:l.textContent="✖ Error: File does not exist or is empty")},c.send(null)}}),n.plugins.toolbar&&n.plugins.toolbar.registerButton("download-file",function(e){var t=e.element.parentNode;if(t&&/pre/i.test(t.nodeName)&&t.hasAttribute("data-src")&&t.hasAttribute("data-download-link")){var n=t.getAttribute("data-src"),r=document.createElement("a");return r.textContent=t.getAttribute("data-download-link-label")||"Download",r.setAttribute("download",""),r.href=n,r}})},document.addEventListener("DOMContentLoaded",function(){self.Prism.fileHighlight()}))}).call(this,n(5))},function(e,t,n){var r=n(3),o=n(67),i=n(38),a=r["__core-js_shared__"]||o("__core-js_shared__",{});(e.exports=function(e,t){return a[e]||(a[e]=void 0!==t?t:{})})("versions",[]).push({version:"3.1.3",mode:i?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})},function(e,t){e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},function(e,t){e.exports=!1},function(e,t){e.exports={}},function(e,t){e.exports=function(e){if(null==e)throw TypeError("Can't call method on "+e);return e}},function(e,t,n){var r=n(24),o=n(3),i=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?i(r[e])||i(o[e]):r[e]&&r[e][t]||o[e]&&o[e][t]}},function(e,t,n){var r=n(40);e.exports=function(e){return Object(r(e))}},function(e,t){e.exports={}},function(e,t,n){var r=n(57);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,o){return e.call(t,n,r,o)}}return function(){return e.apply(t,arguments)}}},function(e,t,n){"use strict";function r(e){return null==e}e.exports.isNothing=r,e.exports.isObject=function(e){return"object"==typeof e&&null!==e},e.exports.toArray=function(e){return Array.isArray(e)?e:r(e)?[]:[e]},e.exports.repeat=function(e,t){var n,r="";for(n=0;n=0;r--){var o=e[r];"."===o?e.splice(r,1):".."===o?(e.splice(r,1),n++):n&&(e.splice(r,1),n--)}if(t)for(;n--;n)e.unshift("..");return e}function r(e,t){if(e.filter)return e.filter(t);for(var n=[],r=0;r=-1&&!o;i--){var a=i>=0?arguments[i]:e.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,o="/"===a.charAt(0))}return(o?"/":"")+(t=n(r(t.split("/"),function(e){return!!e}),!o).join("/"))||"."},t.normalize=function(e){var i=t.isAbsolute(e),a="/"===o(e,-1);return(e=n(r(e.split("/"),function(e){return!!e}),!i).join("/"))||i||(e="."),e&&a&&(e+="/"),(i?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(r(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},t.relative=function(e,n){function r(e){for(var t=0;t=0&&""===e[n];n--);return t>n?[]:e.slice(t,n-t+1)}e=t.resolve(e).substr(1),n=t.resolve(n).substr(1);for(var o=r(e.split("/")),i=r(n.split("/")),a=Math.min(o.length,i.length),s=a,l=0;l=1;--i)if(47===(t=e.charCodeAt(i))){if(!o){r=i;break}}else o=!1;return-1===r?n?"/":".":n&&1===r?"/":e.slice(0,r)},t.basename=function(e,t){var n=function(e){"string"!=typeof e&&(e+="");var t,n=0,r=-1,o=!0;for(t=e.length-1;t>=0;--t)if(47===e.charCodeAt(t)){if(!o){n=t+1;break}}else-1===r&&(o=!1,r=t+1);return-1===r?"":e.slice(n,r)}(e);return t&&n.substr(-1*t.length)===t&&(n=n.substr(0,n.length-t.length)),n},t.extname=function(e){"string"!=typeof e&&(e+="");for(var t=-1,n=0,r=-1,o=!0,i=0,a=e.length-1;a>=0;--a){var s=e.charCodeAt(a);if(47!==s)-1===r&&(o=!1,r=a+1),46===s?-1===t?t=a:1!==i&&(i=1):-1!==t&&(i=-1);else if(!o){n=a+1;break}}return-1===t||-1===r||0===i||1===i&&t===r-1&&t===n+1?"":e.slice(t,r)};var o="b"==="ab".substr(-1)?function(e,t,n){return e.substr(t,n)}:function(e,t,n){return t<0&&(t=e.length+t),e.substr(t,n)}}).call(this,n(12))},function(e,t,n){"use strict";function r(e,t){if(e.length!==t.length)return!1;for(var n=0;n2?n:e).apply(void 0,o)}}e.memoize=o,e.debounce=i,e.bind=a,e.default={memoize:o,debounce:i,bind:a}})?r.apply(t,o):r)||(e.exports=i)},function(e,t,n){(function(t){!function(t){"use strict";var n={newline:/^\n+/,code:/^( {4}[^\n]+\n*)+/,fences:/^ {0,3}(`{3,}|~{3,})([^`~\n]*)\n(?:|([\s\S]*?)\n)(?: {0,3}\1[~`]* *(?:\n+|$)|$)/,hr:/^ {0,3}((?:- *){3,}|(?:_ *){3,}|(?:\* *){3,})(?:\n+|$)/,heading:/^ {0,3}(#{1,6}) +([^\n]*?)(?: +#+)? *(?:\n+|$)/,blockquote:/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/,list:/^( {0,3})(bull) [\s\S]+?(?:hr|def|\n{2,}(?! )(?!\1bull )\n*|\s*$)/,html:"^ {0,3}(?:<(script|pre|style)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?\\?>\\n*|\\n*|\\n*|)[\\s\\S]*?(?:\\n{2,}|$)|<(?!script|pre|style)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:\\n{2,}|$))",def:/^ {0,3}\[(label)\]: *\n? *]+)>?(?:(?: +\n? *| *\n *)(title))? *(?:\n+|$)/,nptable:g,table:g,lheading:/^([^\n]+)\n {0,3}(=+|-+) *(?:\n+|$)/,_paragraph:/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html)[^\n]+)*)/,text:/^[^\n]+/};function r(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||k.defaults,this.rules=n.normal,this.options.pedantic?this.rules=n.pedantic:this.options.gfm&&(this.rules=n.gfm)}n._label=/(?!\s*\])(?:\\[\[\]]|[^\[\]])+/,n._title=/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/,n.def=f(n.def).replace("label",n._label).replace("title",n._title).getRegex(),n.bullet=/(?:[*+-]|\d{1,9}\.)/,n.item=/^( *)(bull) ?[^\n]*(?:\n(?!\1bull ?)[^\n]*)*/,n.item=f(n.item,"gm").replace(/bull/g,n.bullet).getRegex(),n.list=f(n.list).replace(/bull/g,n.bullet).replace("hr","\\n+(?=\\1?(?:(?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$))").replace("def","\\n+(?="+n.def.source+")").getRegex(),n._tag="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|section|source|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",n._comment=//,n.html=f(n.html,"i").replace("comment",n._comment).replace("tag",n._tag).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),n.paragraph=f(n._paragraph).replace("hr",n.hr).replace("heading"," {0,3}#{1,6} +").replace("|lheading","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}|~{3,})[^`\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)]) ").replace("html",")|<(?:script|pre|style|!--)").replace("tag",n._tag).getRegex(),n.blockquote=f(n.blockquote).replace("paragraph",n.paragraph).getRegex(),n.normal=y({},n),n.gfm=y({},n.normal,{nptable:/^ *([^|\n ].*\|.*)\n *([-:]+ *\|[-| :]*)(?:\n((?:.*[^>\n ].*(?:\n|$))*)\n*|$)/,table:/^ *\|(.+)\n *\|?( *[-:]+[-| :]*)(?:\n((?: *[^>\n ].*(?:\n|$))*)\n*|$)/}),n.pedantic=y({},n.normal,{html:f("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment",n._comment).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/,fences:g,paragraph:f(n.normal._paragraph).replace("hr",n.hr).replace("heading"," *#{1,6} *[^\n]").replace("lheading",n.lheading).replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").getRegex()}),r.rules=n,r.lex=function(e,t){return new r(t).lex(e)},r.prototype.lex=function(e){return e=e.replace(/\r\n|\r/g,"\n").replace(/\t/g," ").replace(/\u00a0/g," ").replace(/\u2424/g,"\n"),this.token(e,!0)},r.prototype.token=function(e,t){var r,o,i,a,s,l,c,p,f,d,h,m,g,y,x,w;for(e=e.replace(/^ +$/gm,"");e;)if((i=this.rules.newline.exec(e))&&(e=e.substring(i[0].length),i[0].length>1&&this.tokens.push({type:"space"})),i=this.rules.code.exec(e)){var k=this.tokens[this.tokens.length-1];e=e.substring(i[0].length),k&&"paragraph"===k.type?k.text+="\n"+i[0].trimRight():(i=i[0].replace(/^ {4}/gm,""),this.tokens.push({type:"code",codeBlockStyle:"indented",text:this.options.pedantic?i:b(i,"\n")}))}else if(i=this.rules.fences.exec(e))e=e.substring(i[0].length),this.tokens.push({type:"code",lang:i[2]?i[2].trim():i[2],text:i[3]||""});else if(i=this.rules.heading.exec(e))e=e.substring(i[0].length),this.tokens.push({type:"heading",depth:i[1].length,text:i[2]});else if((i=this.rules.nptable.exec(e))&&(l={type:"table",header:v(i[1].replace(/^ *| *\| *$/g,"")),align:i[2].replace(/^ *|\| *$/g,"").split(/ *\| */),cells:i[3]?i[3].replace(/\n$/,"").split("\n"):[]}).header.length===l.align.length){for(e=e.substring(i[0].length),h=0;h ?/gm,""),this.token(i,t),this.tokens.push({type:"blockquote_end"});else if(i=this.rules.list.exec(e)){for(e=e.substring(i[0].length),c={type:"list_start",ordered:y=(a=i[2]).length>1,start:y?+a:"",loose:!1},this.tokens.push(c),p=[],r=!1,g=(i=i[0].match(this.rules.item)).length,h=0;h1?1===s.length:s.length>1||this.options.smartLists&&s!==a)&&(e=i.slice(h+1).join("\n")+e,h=g-1)),o=r||/\n\n(?!\s*$)/.test(l),h!==g-1&&(r="\n"===l.charAt(l.length-1),o||(o=r)),o&&(c.loose=!0),w=void 0,(x=/^\[[ xX]\] /.test(l))&&(w=" "!==l[1],l=l.replace(/^\[[ xX]\] +/,"")),f={type:"list_item_start",task:x,checked:w,loose:o},p.push(f),this.tokens.push(f),this.token(l,!1),this.tokens.push({type:"list_item_end"});if(c.loose)for(g=p.length,h=0;h?@\[\]\\^_`{|}~])/,autolink:/^<(scheme:[^\s\x00-\x1f<>]*|email)>/,url:g,tag:"^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^",link:/^!?\[(label)\]\(\s*(href)(?:\s+(title))?\s*\)/,reflink:/^!?\[(label)\]\[(?!\s*\])((?:\\[\[\]]?|[^\[\]\\])+)\]/,nolink:/^!?\[(?!\s*\])((?:\[[^\[\]]*\]|\\[\[\]]|[^\[\]])*)\](?:\[\])?/,strong:/^__([^\s_])__(?!_)|^\*\*([^\s*])\*\*(?!\*)|^__([^\s][\s\S]*?[^\s])__(?!_)|^\*\*([^\s][\s\S]*?[^\s])\*\*(?!\*)/,em:/^_([^\s_])_(?!_)|^\*([^\s*<\[])\*(?!\*)|^_([^\s<][\s\S]*?[^\s_])_(?!_|[^\spunctuation])|^_([^\s_<][\s\S]*?[^\s])_(?!_|[^\spunctuation])|^\*([^\s<"][\s\S]*?[^\s\*])\*(?!\*|[^\spunctuation])|^\*([^\s*"<\[][\s\S]*?[^\s])\*(?!\*)/,code:/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,br:/^( {2,}|\\)\n(?!\s*$)/,del:g,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\?@\\[^_{|}~",o.em=f(o.em).replace(/punctuation/g,o._punctuation).getRegex(),o._escapes=/\\([!"#$%&'()*+,\-.\/:;<=>?@\[\]\\^_`{|}~])/g,o._scheme=/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/,o._email=/[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/,o.autolink=f(o.autolink).replace("scheme",o._scheme).replace("email",o._email).getRegex(),o._attribute=/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/,o.tag=f(o.tag).replace("comment",n._comment).replace("attribute",o._attribute).getRegex(),o._label=/(?:\[[^\[\]]*\]|\\.|`[^`]*`|[^\[\]\\`])*?/,o._href=/<(?:\\[<>]?|[^\s<>\\])*>|[^\s\x00-\x1f]*/,o._title=/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/,o.link=f(o.link).replace("label",o._label).replace("href",o._href).replace("title",o._title).getRegex(),o.reflink=f(o.reflink).replace("label",o._label).getRegex(),o.normal=y({},o),o.pedantic=y({},o.normal,{strong:/^__(?=\S)([\s\S]*?\S)__(?!_)|^\*\*(?=\S)([\s\S]*?\S)\*\*(?!\*)/,em:/^_(?=\S)([\s\S]*?\S)_(?!_)|^\*(?=\S)([\s\S]*?\S)\*(?!\*)/,link:f(/^!?\[(label)\]\((.*?)\)/).replace("label",o._label).getRegex(),reflink:f(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",o._label).getRegex()}),o.gfm=y({},o.normal,{escape:f(o.escape).replace("])","~|])").getRegex(),_extended_email:/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/,url:/^((?:ftp|https?):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/,_backpedal:/(?:[^?!.,:;*_~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_~)]+(?!$))+/,del:/^~+(?=\S)([\s\S]*?\S)~+/,text:/^(`+|[^`])(?:[\s\S]*?(?:(?=[\\/i.test(a[0])&&(this.inLink=!1),!this.inRawBlock&&/^<(pre|code|kbd|script)(\s|>)/i.test(a[0])?this.inRawBlock=!0:this.inRawBlock&&/^<\/(pre|code|kbd|script)(\s|>)/i.test(a[0])&&(this.inRawBlock=!1),e=e.substring(a[0].length),l+=this.options.sanitize?this.options.sanitizer?this.options.sanitizer(a[0]):u(a[0]):a[0];else if(a=this.rules.link.exec(e)){var c=x(a[2],"()");if(c>-1){var p=4+a[1].length+c;a[2]=a[2].substring(0,c),a[0]=a[0].substring(0,p).trim(),a[3]=""}e=e.substring(a[0].length),this.inLink=!0,r=a[2],this.options.pedantic?(t=/^([^'"]*[^\s])\s+(['"])(.*)\2/.exec(r))?(r=t[1],o=t[3]):o="":o=a[3]?a[3].slice(1,-1):"",r=r.trim().replace(/^<([\s\S]*)>$/,"$1"),l+=this.outputLink(a,{href:i.escapes(r),title:i.escapes(o)}),this.inLink=!1}else if((a=this.rules.reflink.exec(e))||(a=this.rules.nolink.exec(e))){if(e=e.substring(a[0].length),t=(a[2]||a[1]).replace(/\s+/g," "),!(t=this.links[t.toLowerCase()])||!t.href){l+=a[0].charAt(0),e=a[0].substring(1)+e;continue}this.inLink=!0,l+=this.outputLink(a,t),this.inLink=!1}else if(a=this.rules.strong.exec(e))e=e.substring(a[0].length),l+=this.renderer.strong(this.output(a[4]||a[3]||a[2]||a[1]));else if(a=this.rules.em.exec(e))e=e.substring(a[0].length),l+=this.renderer.em(this.output(a[6]||a[5]||a[4]||a[3]||a[2]||a[1]));else if(a=this.rules.code.exec(e))e=e.substring(a[0].length),l+=this.renderer.codespan(u(a[2].trim(),!0));else if(a=this.rules.br.exec(e))e=e.substring(a[0].length),l+=this.renderer.br();else if(a=this.rules.del.exec(e))e=e.substring(a[0].length),l+=this.renderer.del(this.output(a[1]));else if(a=this.rules.autolink.exec(e))e=e.substring(a[0].length),r="@"===a[2]?"mailto:"+(n=u(this.mangle(a[1]))):n=u(a[1]),l+=this.renderer.link(r,null,n);else if(this.inLink||!(a=this.rules.url.exec(e))){if(a=this.rules.text.exec(e))e=e.substring(a[0].length),this.inRawBlock?l+=this.renderer.text(this.options.sanitize?this.options.sanitizer?this.options.sanitizer(a[0]):u(a[0]):a[0]):l+=this.renderer.text(u(this.smartypants(a[0])));else if(e)throw new Error("Infinite loop on byte: "+e.charCodeAt(0))}else{if("@"===a[2])r="mailto:"+(n=u(a[0]));else{do{s=a[0],a[0]=this.rules._backpedal.exec(a[0])[0]}while(s!==a[0]);n=u(a[0]),r="www."===a[1]?"http://"+n:n}e=e.substring(a[0].length),l+=this.renderer.link(r,null,n)}return l},i.escapes=function(e){return e?e.replace(i.rules._escapes,"$1"):e},i.prototype.outputLink=function(e,t){var n=t.href,r=t.title?u(t.title):null;return"!"!==e[0].charAt(0)?this.renderer.link(n,r,this.output(e[1])):this.renderer.image(n,r,u(e[1]))},i.prototype.smartypants=function(e){return this.options.smartypants?e.replace(/---/g,"—").replace(/--/g,"–").replace(/(^|[-\u2014\/(\[{"\s])'/g,"$1‘").replace(/'/g,"’").replace(/(^|[-\u2014\/(\[{\u2018\s])"/g,"$1“").replace(/"/g,"”").replace(/\.{3}/g,"…"):e},i.prototype.mangle=function(e){if(!this.options.mangle)return e;for(var t,n="",r=e.length,o=0;o.5&&(t="x"+t.toString(16)),n+="&#"+t+";";return n},a.prototype.code=function(e,t,n){var r=(t||"").match(/\S*/)[0];if(this.options.highlight){var o=this.options.highlight(e,r);null!=o&&o!==e&&(n=!0,e=o)}return r?'
'+(n?e:u(e,!0))+"
\n":"
"+(n?e:u(e,!0))+"
"},a.prototype.blockquote=function(e){return"
\n"+e+"
\n"},a.prototype.html=function(e){return e},a.prototype.heading=function(e,t,n,r){return this.options.headerIds?"'+e+"\n":""+e+"\n"},a.prototype.hr=function(){return this.options.xhtml?"
\n":"
\n"},a.prototype.list=function(e,t,n){var r=t?"ol":"ul";return"<"+r+(t&&1!==n?' start="'+n+'"':"")+">\n"+e+"\n"},a.prototype.listitem=function(e){return"
  • "+e+"
  • \n"},a.prototype.checkbox=function(e){return" "},a.prototype.paragraph=function(e){return"

    "+e+"

    \n"},a.prototype.table=function(e,t){return t&&(t=""+t+""),"\n\n"+e+"\n"+t+"
    \n"},a.prototype.tablerow=function(e){return"\n"+e+"\n"},a.prototype.tablecell=function(e,t){var n=t.header?"th":"td";return(t.align?"<"+n+' align="'+t.align+'">':"<"+n+">")+e+"\n"},a.prototype.strong=function(e){return""+e+""},a.prototype.em=function(e){return""+e+""},a.prototype.codespan=function(e){return""+e+""},a.prototype.br=function(){return this.options.xhtml?"
    ":"
    "},a.prototype.del=function(e){return""+e+""},a.prototype.link=function(e,t,n){if(null===(e=d(this.options.sanitize,this.options.baseUrl,e)))return n;var r='"},a.prototype.image=function(e,t,n){if(null===(e=d(this.options.sanitize,this.options.baseUrl,e)))return n;var r=''+n+'":">"},a.prototype.text=function(e){return e},s.prototype.strong=s.prototype.em=s.prototype.codespan=s.prototype.del=s.prototype.text=function(e){return e},s.prototype.link=s.prototype.image=function(e,t,n){return""+n},s.prototype.br=function(){return""},l.parse=function(e,t){return new l(t).parse(e)},l.prototype.parse=function(e){this.inline=new i(e.links,this.options),this.inlineText=new i(e.links,y({},this.options,{renderer:new s})),this.tokens=e.reverse();for(var t="";this.next();)t+=this.tok();return t},l.prototype.next=function(){return this.token=this.tokens.pop(),this.token},l.prototype.peek=function(){return this.tokens[this.tokens.length-1]||0},l.prototype.parseText=function(){for(var e=this.token.text;"text"===this.peek().type;)e+="\n"+this.next().text;return this.inline.output(e)},l.prototype.tok=function(){switch(this.token.type){case"space":return"";case"hr":return this.renderer.hr();case"heading":return this.renderer.heading(this.inline.output(this.token.text),this.token.depth,p(this.inlineText.output(this.token.text)),this.slugger);case"code":return this.renderer.code(this.token.text,this.token.lang,this.token.escaped);case"table":var e,t,n,r,o="",i="";for(n="",e=0;e?@[\]^`{|}~]/g,"").replace(/\s/g,"-");if(this.seen.hasOwnProperty(t)){var n=t;do{this.seen[n]++,t=n+"-"+this.seen[n]}while(this.seen.hasOwnProperty(t))}return this.seen[t]=0,t},u.escapeTest=/[&<>"']/,u.escapeReplace=/[&<>"']/g,u.replacements={"&":"&","<":"<",">":">",'"':""","'":"'"},u.escapeTestNoEncode=/[<>"']|&(?!#?\w+;)/,u.escapeReplaceNoEncode=/[<>"']|&(?!#?\w+;)/g;var h={},m=/^$|^[a-z][a-z0-9+.-]*:|^[?#]/i;function g(){}function y(e){for(var t,n,r=1;r=0&&"\\"===n[o];)r=!r;return r?"|":" |"}).split(/ \|/),r=0;if(n.length>t)n.splice(t);else for(;n.lengthAn error occurred:

    "+u(e.message+"",!0)+"
    ";throw e}}g.exec=g,k.options=k.setOptions=function(e){return y(k.defaults,e),k},k.getDefaults=function(){return{baseUrl:null,breaks:!1,gfm:!0,headerIds:!0,headerPrefix:"",highlight:null,langPrefix:"language-",mangle:!0,pedantic:!1,renderer:new a,sanitize:!1,sanitizer:null,silent:!1,smartLists:!1,smartypants:!1,xhtml:!1}},k.defaults=k.getDefaults(),k.Parser=l,k.parser=l.parse,k.Renderer=a,k.TextRenderer=s,k.Lexer=r,k.lexer=r.lex,k.InlineLexer=i,k.inlineLexer=i.output,k.Slugger=c,k.parse=k,e.exports=k}(this||"undefined"!=typeof window&&window)}).call(this,n(5))},function(e,t,n){var r=n(7);e.exports=function(e,t){if(!r(e))return e;var n,o;if(t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;if("function"==typeof(n=e.valueOf)&&!r(o=n.call(e)))return o;if(!t&&"function"==typeof(n=e.toString)&&!r(o=n.call(e)))return o;throw TypeError("Can't convert object to primitive value")}},function(e,t,n){var r=n(36),o=n(54),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},function(e,t){var n=0,r=Math.random();e.exports=function(e){return"Symbol("+String(void 0===e?"":e)+")_"+(++n+r).toString(36)}},function(e,t,n){var r=n(18),o=n(71),i=n(37),a=n(31),s=n(52),l=n(13),c=n(94),u=Object.getOwnPropertyDescriptor;t.f=r?u:function(e,t){if(e=a(e),t=s(t,!0),c)try{return u(e,t)}catch(e){}if(l(e,t))return i(!o.f.call(e,t),e[t])}},function(e,t,n){var r=n(19),o=n(163),i=n(74),a=n(39),s=n(103),l=n(68),c=n(53)("IE_PROTO"),u=function(){},p=function(){var e,t=l("iframe"),n=i.length;for(t.style.display="none",s.appendChild(t),t.src=String("javascript:"),(e=t.contentWindow.document).open(),e.write(" +function Yo(e){return getComputedStyle(e)}function Go(e,t){for(var n in t){var r=t[n];"number"==typeof r&&(r+="px"),e.style[n]=r}return e}function Qo(e){var t=document.createElement("div");return t.className=e,t}var Xo="undefined"!=typeof Element&&(Element.prototype.matches||Element.prototype.webkitMatchesSelector||Element.prototype.mozMatchesSelector||Element.prototype.msMatchesSelector);function Ko(e,t){if(!Xo)throw new Error("No element matching method supported");return Xo.call(e,t)}function Jo(e){e.remove?e.remove():e.parentNode&&e.parentNode.removeChild(e)}function Zo(e,t){return Array.prototype.filter.call(e.children,(function(e){return Ko(e,t)}))}var ei="ps",ti="ps__rtl",ni={thumb:function(e){return"ps__thumb-"+e},rail:function(e){return"ps__rail-"+e},consuming:"ps__child--consume"},ri={focus:"ps--focus",clicking:"ps--clicking",active:function(e){return"ps--active-"+e},scrolling:function(e){return"ps--scrolling-"+e}},oi={x:null,y:null};function ii(e,t){var n=e.element.classList,r=ri.scrolling(t);n.contains(r)?clearTimeout(oi[t]):n.add(r)}function ai(e,t){oi[t]=setTimeout((function(){return e.isAlive&&e.element.classList.remove(ri.scrolling(t))}),e.settings.scrollingThreshold)}var si=function(e){this.element=e,this.handlers={}},li={isEmpty:{configurable:!0}};si.prototype.bind=function(e,t){void 0===this.handlers[e]&&(this.handlers[e]=[]),this.handlers[e].push(t),this.element.addEventListener(e,t,!1)},si.prototype.unbind=function(e,t){var n=this;this.handlers[e]=this.handlers[e].filter((function(r){return!(!t||r===t)||(n.element.removeEventListener(e,r,!1),!1)}))},si.prototype.unbindAll=function(){for(var e in this.handlers)this.unbind(e)},li.isEmpty.get=function(){var e=this;return Object.keys(this.handlers).every((function(t){return 0===e.handlers[t].length}))},Object.defineProperties(si.prototype,li);var ci=function(){this.eventElements=[]};function ui(e){if("function"==typeof window.CustomEvent)return new CustomEvent(e);var t=document.createEvent("CustomEvent");return t.initCustomEvent(e,!1,!1,void 0),t}function pi(e,t,n,r,o){var i;if(void 0===r&&(r=!0),void 0===o&&(o=!1),"top"===t)i=["contentHeight","containerHeight","scrollTop","y","up","down"];else{if("left"!==t)throw new Error("A proper axis should be provided");i=["contentWidth","containerWidth","scrollLeft","x","left","right"]}!function(e,t,n,r,o){var i=n[0],a=n[1],s=n[2],l=n[3],c=n[4],u=n[5];void 0===r&&(r=!0);void 0===o&&(o=!1);var p=e.element;e.reach[l]=null,p[s]<1&&(e.reach[l]="start");p[s]>e[i]-e[a]-1&&(e.reach[l]="end");t&&(p.dispatchEvent(ui("ps-scroll-"+l)),t<0?p.dispatchEvent(ui("ps-scroll-"+c)):t>0&&p.dispatchEvent(ui("ps-scroll-"+u)),r&&function(e,t){ii(e,t),ai(e,t)}(e,l));e.reach[l]&&(t||o)&&p.dispatchEvent(ui("ps-"+l+"-reach-"+e.reach[l]))}(e,n,i,r,o)}function fi(e){return parseInt(e,10)||0}ci.prototype.eventElement=function(e){var t=this.eventElements.filter((function(t){return t.element===e}))[0];return t||(t=new si(e),this.eventElements.push(t)),t},ci.prototype.bind=function(e,t,n){this.eventElement(e).bind(t,n)},ci.prototype.unbind=function(e,t,n){var r=this.eventElement(e);r.unbind(t,n),r.isEmpty&&this.eventElements.splice(this.eventElements.indexOf(r),1)},ci.prototype.unbindAll=function(){this.eventElements.forEach((function(e){return e.unbindAll()})),this.eventElements=[]},ci.prototype.once=function(e,t,n){var r=this.eventElement(e),o=function(e){r.unbind(t,o),n(e)};r.bind(t,o)};var di={isWebKit:"undefined"!=typeof document&&"WebkitAppearance"in document.documentElement.style,supportsTouch:"undefined"!=typeof window&&("ontouchstart"in window||"maxTouchPoints"in window.navigator&&window.navigator.maxTouchPoints>0||window.DocumentTouch&&document instanceof window.DocumentTouch),supportsIePointer:"undefined"!=typeof navigator&&navigator.msMaxTouchPoints,isChrome:"undefined"!=typeof navigator&&/Chrome/i.test(navigator&&navigator.userAgent)};function hi(e){var t=e.element,n=Math.floor(t.scrollTop),r=t.getBoundingClientRect();e.containerWidth=Math.ceil(r.width),e.containerHeight=Math.ceil(r.height),e.contentWidth=t.scrollWidth,e.contentHeight=t.scrollHeight,t.contains(e.scrollbarXRail)||(Zo(t,ni.rail("x")).forEach((function(e){return Jo(e)})),t.appendChild(e.scrollbarXRail)),t.contains(e.scrollbarYRail)||(Zo(t,ni.rail("y")).forEach((function(e){return Jo(e)})),t.appendChild(e.scrollbarYRail)),!e.settings.suppressScrollX&&e.containerWidth+e.settings.scrollXMarginOffset=e.railXWidth-e.scrollbarXWidth&&(e.scrollbarXLeft=e.railXWidth-e.scrollbarXWidth),e.scrollbarYTop>=e.railYHeight-e.scrollbarYHeight&&(e.scrollbarYTop=e.railYHeight-e.scrollbarYHeight),function(e,t){var n={width:t.railXWidth},r=Math.floor(e.scrollTop);t.isRtl?n.left=t.negativeScrollAdjustment+e.scrollLeft+t.containerWidth-t.contentWidth:n.left=e.scrollLeft;t.isScrollbarXUsingBottom?n.bottom=t.scrollbarXBottom-r:n.top=t.scrollbarXTop+r;Go(t.scrollbarXRail,n);var o={top:r,height:t.railYHeight};t.isScrollbarYUsingRight?t.isRtl?o.right=t.contentWidth-(t.negativeScrollAdjustment+e.scrollLeft)-t.scrollbarYRight-t.scrollbarYOuterWidth-9:o.right=t.scrollbarYRight-e.scrollLeft:t.isRtl?o.left=t.negativeScrollAdjustment+e.scrollLeft+2*t.containerWidth-t.contentWidth-t.scrollbarYLeft-t.scrollbarYOuterWidth:o.left=t.scrollbarYLeft+e.scrollLeft;Go(t.scrollbarYRail,o),Go(t.scrollbarX,{left:t.scrollbarXLeft,width:t.scrollbarXWidth-t.railBorderXWidth}),Go(t.scrollbarY,{top:t.scrollbarYTop,height:t.scrollbarYHeight-t.railBorderYWidth})}(t,e),e.scrollbarXActive?t.classList.add(ri.active("x")):(t.classList.remove(ri.active("x")),e.scrollbarXWidth=0,e.scrollbarXLeft=0,t.scrollLeft=!0===e.isRtl?e.contentWidth:0),e.scrollbarYActive?t.classList.add(ri.active("y")):(t.classList.remove(ri.active("y")),e.scrollbarYHeight=0,e.scrollbarYTop=0,t.scrollTop=0)}function mi(e,t){return e.settings.minScrollbarLength&&(t=Math.max(t,e.settings.minScrollbarLength)),e.settings.maxScrollbarLength&&(t=Math.min(t,e.settings.maxScrollbarLength)),t}function gi(e,t){var n=t[0],r=t[1],o=t[2],i=t[3],a=t[4],s=t[5],l=t[6],c=t[7],u=t[8],p=e.element,f=null,d=null,h=null;function m(t){t.touches&&t.touches[0]&&(t[o]=t.touches[0].pageY),p[l]=f+h*(t[o]-d),ii(e,c),hi(e),t.stopPropagation(),t.preventDefault()}function g(){ai(e,c),e[u].classList.remove(ri.clicking),e.event.unbind(e.ownerDocument,"mousemove",m)}function y(t,a){f=p[l],a&&t.touches&&(t[o]=t.touches[0].pageY),d=t[o],h=(e[r]-e[n])/(e[i]-e[s]),a?e.event.bind(e.ownerDocument,"touchmove",m):(e.event.bind(e.ownerDocument,"mousemove",m),e.event.once(e.ownerDocument,"mouseup",g),t.preventDefault()),e[u].classList.add(ri.clicking),t.stopPropagation()}e.event.bind(e[a],"mousedown",(function(e){y(e)})),e.event.bind(e[a],"touchstart",(function(e){y(e,!0)}))}var yi={"click-rail":function(e){e.element,e.event.bind(e.scrollbarY,"mousedown",(function(e){return e.stopPropagation()})),e.event.bind(e.scrollbarYRail,"mousedown",(function(t){var n=t.pageY-window.pageYOffset-e.scrollbarYRail.getBoundingClientRect().top>e.scrollbarYTop?1:-1;e.element.scrollTop+=n*e.containerHeight,hi(e),t.stopPropagation()})),e.event.bind(e.scrollbarX,"mousedown",(function(e){return e.stopPropagation()})),e.event.bind(e.scrollbarXRail,"mousedown",(function(t){var n=t.pageX-window.pageXOffset-e.scrollbarXRail.getBoundingClientRect().left>e.scrollbarXLeft?1:-1;e.element.scrollLeft+=n*e.containerWidth,hi(e),t.stopPropagation()}))},"drag-thumb":function(e){gi(e,["containerWidth","contentWidth","pageX","railXWidth","scrollbarX","scrollbarXWidth","scrollLeft","x","scrollbarXRail"]),gi(e,["containerHeight","contentHeight","pageY","railYHeight","scrollbarY","scrollbarYHeight","scrollTop","y","scrollbarYRail"])},keyboard:function(e){var t=e.element;e.event.bind(e.ownerDocument,"keydown",(function(n){if(!(n.isDefaultPrevented&&n.isDefaultPrevented()||n.defaultPrevented)&&(Ko(t,":hover")||Ko(e.scrollbarX,":focus")||Ko(e.scrollbarY,":focus"))){var r,o=document.activeElement?document.activeElement:e.ownerDocument.activeElement;if(o){if("IFRAME"===o.tagName)o=o.contentDocument.activeElement;else for(;o.shadowRoot;)o=o.shadowRoot.activeElement;if(Ko(r=o,"input,[contenteditable]")||Ko(r,"select,[contenteditable]")||Ko(r,"textarea,[contenteditable]")||Ko(r,"button,[contenteditable]"))return}var i=0,a=0;switch(n.which){case 37:i=n.metaKey?-e.contentWidth:n.altKey?-e.containerWidth:-30;break;case 38:a=n.metaKey?e.contentHeight:n.altKey?e.containerHeight:30;break;case 39:i=n.metaKey?e.contentWidth:n.altKey?e.containerWidth:30;break;case 40:a=n.metaKey?-e.contentHeight:n.altKey?-e.containerHeight:-30;break;case 32:a=n.shiftKey?e.containerHeight:-e.containerHeight;break;case 33:a=e.containerHeight;break;case 34:a=-e.containerHeight;break;case 36:a=e.contentHeight;break;case 35:a=-e.contentHeight;break;default:return}e.settings.suppressScrollX&&0!==i||e.settings.suppressScrollY&&0!==a||(t.scrollTop-=a,t.scrollLeft+=i,hi(e),function(n,r){var o=Math.floor(t.scrollTop);if(0===n){if(!e.scrollbarYActive)return!1;if(0===o&&r>0||o>=e.contentHeight-e.containerHeight&&r<0)return!e.settings.wheelPropagation}var i=t.scrollLeft;if(0===r){if(!e.scrollbarXActive)return!1;if(0===i&&n<0||i>=e.contentWidth-e.containerWidth&&n>0)return!e.settings.wheelPropagation}return!0}(i,a)&&n.preventDefault())}}))},wheel:function(e){var t=e.element;function n(n){var r=function(e){var t=e.deltaX,n=-1*e.deltaY;return void 0!==t&&void 0!==n||(t=-1*e.wheelDeltaX/6,n=e.wheelDeltaY/6),e.deltaMode&&1===e.deltaMode&&(t*=10,n*=10),t!=t&&n!=n&&(t=0,n=e.wheelDelta),e.shiftKey?[-n,-t]:[t,n]}(n),o=r[0],i=r[1];if(!function(e,n,r){if(!di.isWebKit&&t.querySelector("select:focus"))return!0;if(!t.contains(e))return!1;for(var o=e;o&&o!==t;){if(o.classList.contains(ni.consuming))return!0;var i=Yo(o);if(r&&i.overflowY.match(/(scroll|auto)/)){var a=o.scrollHeight-o.clientHeight;if(a>0&&(o.scrollTop>0&&r<0||o.scrollTop0))return!0}if(n&&i.overflowX.match(/(scroll|auto)/)){var s=o.scrollWidth-o.clientWidth;if(s>0&&(o.scrollLeft>0&&n<0||o.scrollLeft0))return!0}o=o.parentNode}return!1}(n.target,o,i)){var a=!1;e.settings.useBothWheelAxes?e.scrollbarYActive&&!e.scrollbarXActive?(i?t.scrollTop-=i*e.settings.wheelSpeed:t.scrollTop+=o*e.settings.wheelSpeed,a=!0):e.scrollbarXActive&&!e.scrollbarYActive&&(o?t.scrollLeft+=o*e.settings.wheelSpeed:t.scrollLeft-=i*e.settings.wheelSpeed,a=!0):(t.scrollTop-=i*e.settings.wheelSpeed,t.scrollLeft+=o*e.settings.wheelSpeed),hi(e),(a=a||function(n,r){var o=Math.floor(t.scrollTop),i=0===t.scrollTop,a=o+t.offsetHeight===t.scrollHeight,s=0===t.scrollLeft,l=t.scrollLeft+t.offsetWidth===t.scrollWidth;return!(Math.abs(r)>Math.abs(n)?i||a:s||l)||!e.settings.wheelPropagation}(o,i))&&!n.ctrlKey&&(n.stopPropagation(),n.preventDefault())}}void 0!==window.onwheel?e.event.bind(t,"wheel",n):void 0!==window.onmousewheel&&e.event.bind(t,"mousewheel",n)},touch:function(e){if(di.supportsTouch||di.supportsIePointer){var t=e.element,n={},r=0,o={},i=null;di.supportsTouch?(e.event.bind(t,"touchstart",c),e.event.bind(t,"touchmove",u),e.event.bind(t,"touchend",p)):di.supportsIePointer&&(window.PointerEvent?(e.event.bind(t,"pointerdown",c),e.event.bind(t,"pointermove",u),e.event.bind(t,"pointerup",p)):window.MSPointerEvent&&(e.event.bind(t,"MSPointerDown",c),e.event.bind(t,"MSPointerMove",u),e.event.bind(t,"MSPointerUp",p)))}function a(n,r){t.scrollTop-=r,t.scrollLeft-=n,hi(e)}function s(e){return e.targetTouches?e.targetTouches[0]:e}function l(e){return(!e.pointerType||"pen"!==e.pointerType||0!==e.buttons)&&(!(!e.targetTouches||1!==e.targetTouches.length)||!(!e.pointerType||"mouse"===e.pointerType||e.pointerType===e.MSPOINTER_TYPE_MOUSE))}function c(e){if(l(e)){var t=s(e);n.pageX=t.pageX,n.pageY=t.pageY,r=(new Date).getTime(),null!==i&&clearInterval(i)}}function u(i){if(l(i)){var c=s(i),u={pageX:c.pageX,pageY:c.pageY},p=u.pageX-n.pageX,f=u.pageY-n.pageY;if(function(e,n,r){if(!t.contains(e))return!1;for(var o=e;o&&o!==t;){if(o.classList.contains(ni.consuming))return!0;var i=Yo(o);if(r&&i.overflowY.match(/(scroll|auto)/)){var a=o.scrollHeight-o.clientHeight;if(a>0&&(o.scrollTop>0&&r<0||o.scrollTop0))return!0}if(n&&i.overflowX.match(/(scroll|auto)/)){var s=o.scrollWidth-o.clientWidth;if(s>0&&(o.scrollLeft>0&&n<0||o.scrollLeft0))return!0}o=o.parentNode}return!1}(i.target,p,f))return;a(p,f),n=u;var d=(new Date).getTime(),h=d-r;h>0&&(o.x=p/h,o.y=f/h,r=d),function(n,r){var o=Math.floor(t.scrollTop),i=t.scrollLeft,a=Math.abs(n),s=Math.abs(r);if(s>a){if(r<0&&o===e.contentHeight-e.containerHeight||r>0&&0===o)return 0===window.scrollY&&r>0&&di.isChrome}else if(a>s&&(n<0&&i===e.contentWidth-e.containerWidth||n>0&&0===i))return!0;return!0}(p,f)&&i.preventDefault()}}function p(){e.settings.swipeEasing&&(clearInterval(i),i=setInterval((function(){e.isInitialized?clearInterval(i):o.x||o.y?Math.abs(o.x)<.01&&Math.abs(o.y)<.01?clearInterval(i):(a(30*o.x,30*o.y),o.x*=.8,o.y*=.8):clearInterval(i)}),10))}}},vi=function(e,t){var n=this;if(void 0===t&&(t={}),"string"==typeof e&&(e=document.querySelector(e)),!e||!e.nodeName)throw new Error("no element is specified to initialize PerfectScrollbar");for(var r in this.element=e,e.classList.add(ei),this.settings={handlers:["click-rail","drag-thumb","keyboard","wheel","touch"],maxScrollbarLength:null,minScrollbarLength:null,scrollingThreshold:1e3,scrollXMarginOffset:0,scrollYMarginOffset:0,suppressScrollX:!1,suppressScrollY:!1,swipeEasing:!0,useBothWheelAxes:!1,wheelPropagation:!0,wheelSpeed:1},t)this.settings[r]=t[r];this.containerWidth=null,this.containerHeight=null,this.contentWidth=null,this.contentHeight=null;var o,i,a=function(){return e.classList.add(ri.focus)},s=function(){return e.classList.remove(ri.focus)};this.isRtl="rtl"===Yo(e).direction,!0===this.isRtl&&e.classList.add(ti),this.isNegativeScroll=(i=e.scrollLeft,e.scrollLeft=-1,o=e.scrollLeft<0,e.scrollLeft=i,o),this.negativeScrollAdjustment=this.isNegativeScroll?e.scrollWidth-e.clientWidth:0,this.event=new ci,this.ownerDocument=e.ownerDocument||document,this.scrollbarXRail=Qo(ni.rail("x")),e.appendChild(this.scrollbarXRail),this.scrollbarX=Qo(ni.thumb("x")),this.scrollbarXRail.appendChild(this.scrollbarX),this.scrollbarX.setAttribute("tabindex",0),this.event.bind(this.scrollbarX,"focus",a),this.event.bind(this.scrollbarX,"blur",s),this.scrollbarXActive=null,this.scrollbarXWidth=null,this.scrollbarXLeft=null;var l=Yo(this.scrollbarXRail);this.scrollbarXBottom=parseInt(l.bottom,10),isNaN(this.scrollbarXBottom)?(this.isScrollbarXUsingBottom=!1,this.scrollbarXTop=fi(l.top)):this.isScrollbarXUsingBottom=!0,this.railBorderXWidth=fi(l.borderLeftWidth)+fi(l.borderRightWidth),Go(this.scrollbarXRail,{display:"block"}),this.railXMarginWidth=fi(l.marginLeft)+fi(l.marginRight),Go(this.scrollbarXRail,{display:""}),this.railXWidth=null,this.railXRatio=null,this.scrollbarYRail=Qo(ni.rail("y")),e.appendChild(this.scrollbarYRail),this.scrollbarY=Qo(ni.thumb("y")),this.scrollbarYRail.appendChild(this.scrollbarY),this.scrollbarY.setAttribute("tabindex",0),this.event.bind(this.scrollbarY,"focus",a),this.event.bind(this.scrollbarY,"blur",s),this.scrollbarYActive=null,this.scrollbarYHeight=null,this.scrollbarYTop=null;var c=Yo(this.scrollbarYRail);this.scrollbarYRight=parseInt(c.right,10),isNaN(this.scrollbarYRight)?(this.isScrollbarYUsingRight=!1,this.scrollbarYLeft=fi(c.left)):this.isScrollbarYUsingRight=!0,this.scrollbarYOuterWidth=this.isRtl?function(e){var t=Yo(e);return fi(t.width)+fi(t.paddingLeft)+fi(t.paddingRight)+fi(t.borderLeftWidth)+fi(t.borderRightWidth)}(this.scrollbarY):null,this.railBorderYWidth=fi(c.borderTopWidth)+fi(c.borderBottomWidth),Go(this.scrollbarYRail,{display:"block"}),this.railYMarginHeight=fi(c.marginTop)+fi(c.marginBottom),Go(this.scrollbarYRail,{display:""}),this.railYHeight=null,this.railYRatio=null,this.reach={x:e.scrollLeft<=0?"start":e.scrollLeft>=this.contentWidth-this.containerWidth?"end":null,y:e.scrollTop<=0?"start":e.scrollTop>=this.contentHeight-this.containerHeight?"end":null},this.isAlive=!0,this.settings.handlers.forEach((function(e){return yi[e](n)})),this.lastScrollTop=Math.floor(e.scrollTop),this.lastScrollLeft=e.scrollLeft,this.event.bind(this.element,"scroll",(function(e){return n.onScroll(e)})),hi(this)};vi.prototype.update=function(){this.isAlive&&(this.negativeScrollAdjustment=this.isNegativeScroll?this.element.scrollWidth-this.element.clientWidth:0,Go(this.scrollbarXRail,{display:"block"}),Go(this.scrollbarYRail,{display:"block"}),this.railXMarginWidth=fi(Yo(this.scrollbarXRail).marginLeft)+fi(Yo(this.scrollbarXRail).marginRight),this.railYMarginHeight=fi(Yo(this.scrollbarYRail).marginTop)+fi(Yo(this.scrollbarYRail).marginBottom),Go(this.scrollbarXRail,{display:"none"}),Go(this.scrollbarYRail,{display:"none"}),hi(this),pi(this,"top",0,!1,!0),pi(this,"left",0,!1,!0),Go(this.scrollbarXRail,{display:""}),Go(this.scrollbarYRail,{display:""}))},vi.prototype.onScroll=function(e){this.isAlive&&(hi(this),pi(this,"top",this.element.scrollTop-this.lastScrollTop),pi(this,"left",this.element.scrollLeft-this.lastScrollLeft),this.lastScrollTop=Math.floor(this.element.scrollTop),this.lastScrollLeft=this.element.scrollLeft)},vi.prototype.destroy=function(){this.isAlive&&(this.event.unbindAll(),Jo(this.scrollbarX),Jo(this.scrollbarY),Jo(this.scrollbarXRail),Jo(this.scrollbarYRail),this.removePsClasses(),this.element=null,this.scrollbarX=null,this.scrollbarY=null,this.scrollbarXRail=null,this.scrollbarYRail=null,this.isAlive=!1)},vi.prototype.removePsClasses=function(){this.element.className=this.element.className.split(" ").filter((function(e){return!e.match(/^ps([-_].+|)$/)})).join(" ")};var bi,xi,wi=vi,ki=n(98),Oi=n.n(ki),Ei=wi||r,_i=ke(bi||(bi=Object(o.__makeTemplateObject)(["",""],["",""])),Oi.a&&Oi.a.toString()),Si=Se.div(xi||(xi=Object(o.__makeTemplateObject)(["\n position: relative;\n"],["\n position: relative;\n"]))),Ti=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.handleRef=function(e){t._container=e},t}return Object(o.__extends)(t,e),t.prototype.componentDidMount=function(){var e=this._container.parentElement&&this._container.parentElement.scrollTop||0;this.inst=new Ei(this._container,this.props.options||{}),this._container.scrollTo&&this._container.scrollTo(0,e)},t.prototype.componentDidUpdate=function(){this.inst.update()},t.prototype.componentWillUnmount=function(){this.inst.destroy()},t.prototype.render=function(){var e=this.props,t=e.children,n=e.className,r=e.updateFn;return r&&r(this.componentDidUpdate.bind(this)),i.createElement(i.Fragment,null,i.createElement(_i,null),i.createElement(Si,{className:"scrollbar-container "+n,ref:this.handleRef},t))},t}(i.Component);function ji(e){return i.createElement(Fe.Consumer,null,(function(t){return t.nativeScrollbars?i.createElement("div",{style:{overflow:"auto",overscrollBehavior:"contain",msOverflowStyle:"-ms-autohiding-scrollbar"}},e.children):i.createElement(Ti,Object(o.__assign)({},e),e.children)}))}var Ai=function(e,t,n){this.operations=[];var r=e.deref(n||{});e.exitRef(n);for(var i=0,a=Object.keys(r);i --\x3e";e.info.description=function(e,t,n){var r=new RegExp("(^|\\n)#\\s?"+t+"\\s*\\n","i"),o=new RegExp("((\\n|^)#\\s*"+t+"\\s*(\\n|$)(?:.|\\n)*?)(\\n#|$)","i");if(r.test(e))return e.replace(o,"$1\n\n"+n+"\n$4");var i=""===e||e.endsWith("\n\n")?"":e.endsWith("\n")?"\n":"\n\n";return""+e+i+"# "+t+"\n\n"+n}(t,"Authentication",n)}}},e.prototype.isRef=function(e){return!!e&&(void 0!==e.$ref&&null!==e.$ref)},e.prototype.resetVisited=function(){this._refCounter=new Pi},e.prototype.exitRef=function(e){this.isRef(e)&&this._refCounter.exit(e.$ref)},e.prototype.deref=function(e,t){if(void 0===t&&(t=!1),this.isRef(e)){var n=this.byRef(e.$ref),r=this._refCounter.visited(e.$ref);if(this._refCounter.visit(e.$ref),r&&!t)return Object.assign({},n,{"x-circular-ref":!0});if(this.isRef(n)){var o=this.deref(n);return this.exitRef(n),o}return n}return e},e.prototype.shalowDeref=function(e){return this.isRef(e)?this.byRef(e.$ref):e},e.prototype.mergeAllOf=function(e,t,n,r){var i=this;if(void 0===n&&(n=!1),void 0===r&&(r=new Set),t&&r.add(t),void 0===(e=this.hoistOneOfs(e)).allOf)return e;var a=Object(o.__assign)(Object(o.__assign)({},e),{allOf:void 0,parentRefs:[],title:e.title||(ut(t)?Xe.baseName(t):void 0)});void 0!==a.properties&&"object"==typeof a.properties&&(a.properties=Object(o.__assign)({},a.properties)),void 0!==a.items&&"object"==typeof a.items&&(a.items=Object(o.__assign)({},a.items));for(var s=0,l=e.allOf.map((function(e){var t;if(!(e&&e.$ref&&r.has(e.$ref))){var o=i.deref(e,n),s=e.$ref||void 0,l=i.mergeAllOf(o,s,n,r);return(t=a.parentRefs).push.apply(t,l.parentRefs||[]),{$ref:s,schema:l}}})).filter((function(e){return void 0!==e}));s-1}))&&(t["#/components/schemas/"+r]=[o["x-discriminator-value"]||r])}return t},e.prototype.exitParents=function(e){for(var t=0,n=e.parentRefs||[];t0?o.push.apply(o,e.getTagGroupsItems(t,void 0,r["x-tagGroups"],i,n)):o.push.apply(o,e.getTagsItems(t,i,void 0,void 0,n)),o},e.addMarkdownItems=function(e,t,n,r){var o=new Rt(r).extractHeadings(e||"");o.length&&t&&t.description&&(t.description=Rt.getTextBeforeHading(t.description,o[0].name));var i=function(e,t,n){return void 0===n&&(n=1),t.map((function(t){var r,o=new Li("section",t,e);return o.depth=n,t.items&&(o.items=i(o,t.items,n+1)),Rt.containsComponent(o.description||"","security-definitions")&&(r=o.id+"/",gt=r),o}))};return i(t,o,n)},e.getTagGroupsItems=function(t,n,r,o,i){for(var a=[],s=0,l=r;s=s.flatItems.length-1&&e);){if(e){var r=s.getElementAtOrFirstChild(n+1);if(s.scroll.isElementBellow(r))break}else{r=s.getElementAt(n);if(s.scroll.isElementAbove(r))break}n+=t}s.activate(s.flatItems[n],!0,!0)},this.updateOnHistory=function(e){var t;(void 0===e&&(e=s.history.currentId),e)&&((t=s.flatItems.find((function(t){return t.id===e})))?s.activateAndScroll(t,!1):(e.startsWith(gt)&&(t=s.flatItems.find((function(e){return gt.startsWith(e.id)})),s.activate(t)),s.scroll.scrollIntoViewBySelector("["+Di+'="'+e+'"]')))},this.getItemById=function(e){return s.flatItems.find((function(t){return t.id===e}))},this.items=e.contentItems,this.flatItems=(r=this.items||[],o="items",i=[],(a=function(e){for(var t=0,n=e;tthis.options.scrollYOffset()},e.prototype.isElementAbove=function(e){if(null!==e){var t=e.getBoundingClientRect().top;return(t>0?Math.floor(t):Math.ceil(t))<=this.options.scrollYOffset()}},e.prototype.subscribe=function(e){var t=this._emiter.addListener("scroll",e);return function(){return t.removeListener("scroll",e)}},e.prototype.scrollIntoView=function(e){null!==e&&(e.scrollIntoView(),this._scrollParent&&this._scrollParent.scrollBy&&this._scrollParent.scrollBy(0,1-this.options.scrollYOffset()))},e.prototype.scrollIntoViewBySelector=function(e){var t=ne(e);this.scrollIntoView(t)},e.prototype.handleScroll=function(){var e=this.scrollY()-this._prevOffsetY>0;this._prevOffsetY=this.scrollY(),this._emiter.emit("scroll",e)},Object(o.__decorate)([Ve.bind,wt(100)],e.prototype,"handleScroll",null),e}();var Ui=function(){function e(){this.searchWorker=function(){var e;if(te)try{e=n(314)}catch(t){e=n(149).default}else e=n(149).default;return new e}()}return e.prototype.indexItems=function(e){var t=this,n=function(e){e.forEach((function(e){"group"!==e.type&&t.add(e.name,e.description||"",e.id),n(e.items)}))};n(e),this.searchWorker.done()},e.prototype.add=function(e,t,n){this.searchWorker.add(e,t,n)},e.prototype.dispose=function(){this.searchWorker.terminate(),this.searchWorker.dispose()},e.prototype.search=function(e){return this.searchWorker.search(e)},e.prototype.toJS=function(){return Object(o.__awaiter)(this,void 0,void 0,(function(){return Object(o.__generator)(this,(function(e){return[2,this.searchWorker.toJS()]}))}))},e.prototype.load=function(e){this.searchWorker.load(e)},e}();function Bi(e){var t=e.Label,n=void 0===t?so:t,r=e.Dropdown,a=void 0===r?ao:r;return 1===e.options.length?i.createElement(n,null,e.options[0].value):i.createElement(a,Object(o.__assign)({},e,{searchable:!1}))}var $i,Wi,qi=n(157),Hi=we($i||($i=Object(o.__makeTemplateObject)(["\n a {\n text-decoration: none;\n color: ",";\n\n &:visited {\n color: ",";\n }\n\n &:hover {\n color: ",";\n }\n }\n"],["\n a {\n text-decoration: none;\n color: ",";\n\n &:visited {\n color: ",";\n }\n\n &:hover {\n color: ",";\n }\n }\n"])),(function(e){return e.theme.typography.links.color}),(function(e){return e.theme.typography.links.visited}),(function(e){return e.theme.typography.links.hover})),Vi=Se(Wo)(Wi||(Wi=Object(o.__makeTemplateObject)(["\n\n font-family: ",";\n font-weight: ",";\n line-height: ",";\n\n p {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n ","\n\n ","\n\n h1 {\n ",";\n color: ",";\n margin-top: 0;\n }\n\n h2 {\n ",";\n color: ",";\n }\n\n code {\n color: ",";\n background-color: ",";\n\n font-family: ",";\n border-radius: 2px;\n border: 1px solid rgba(38, 50, 56, 0.1);\n padding: 0 ","px;\n font-size: ",";\n font-weight: ",";\n\n word-break: break-word;\n }\n\n pre {\n font-family: ",";\n white-space:",";\n background-color: ",";\n color: white;\n padding: ","px;\n overflow-x: auto;\n line-height: normal;\n border-radius: 0px\n border: 1px solid rgba(38, 50, 56, 0.1);\n\n code {\n background-color: transparent;\n color: white;\n padding: 0;\n\n &:before,\n &:after {\n content: none;\n }\n }\n }\n\n blockquote {\n margin: 0;\n margin-bottom: 1em;\n padding: 0 15px;\n color: #777;\n border-left: 4px solid #ddd;\n }\n\n img {\n max-width: 100%;\n box-sizing: content-box;\n }\n\n ul,\n ol {\n padding-left: 2em;\n margin: 0;\n margin-bottom: 1em;\n\n ul, ol {\n margin-bottom: 0;\n margin-top: 0;\n }\n }\n\n table {\n display: block;\n width: 100%;\n overflow: auto;\n word-break: normal;\n word-break: keep-all;\n border-collapse: collapse;\n border-spacing: 0;\n margin-top: 1.5em;\n margin-bottom: 1.5em;\n }\n\n table tr {\n background-color: #fff;\n border-top: 1px solid #ccc;\n\n &:nth-child(2n) {\n background-color: ",";\n }\n }\n\n table th,\n table td {\n padding: 6px 13px;\n border: 1px solid #ddd;\n }\n\n table th {\n text-align: left;\n font-weight: bold;\n }\n\n ",";\n\n ","\n\n ",";\n"],["\n\n font-family: ",";\n font-weight: ",";\n line-height: ",";\n\n p {\n &:last-child {\n margin-bottom: 0;\n }\n }\n\n ","\n\n ","\n\n h1 {\n ",";\n color: ",";\n margin-top: 0;\n }\n\n h2 {\n ",";\n color: ",";\n }\n\n code {\n color: ",";\n background-color: ",";\n\n font-family: ",";\n border-radius: 2px;\n border: 1px solid rgba(38, 50, 56, 0.1);\n padding: 0 ","px;\n font-size: ",";\n font-weight: ",";\n\n word-break: break-word;\n }\n\n pre {\n font-family: ",";\n white-space:",";\n background-color: ",";\n color: white;\n padding: ","px;\n overflow-x: auto;\n line-height: normal;\n border-radius: 0px\n border: 1px solid rgba(38, 50, 56, 0.1);\n\n code {\n background-color: transparent;\n color: white;\n padding: 0;\n\n &:before,\n &:after {\n content: none;\n }\n }\n }\n\n blockquote {\n margin: 0;\n margin-bottom: 1em;\n padding: 0 15px;\n color: #777;\n border-left: 4px solid #ddd;\n }\n\n img {\n max-width: 100%;\n box-sizing: content-box;\n }\n\n ul,\n ol {\n padding-left: 2em;\n margin: 0;\n margin-bottom: 1em;\n\n ul, ol {\n margin-bottom: 0;\n margin-top: 0;\n }\n }\n\n table {\n display: block;\n width: 100%;\n overflow: auto;\n word-break: normal;\n word-break: keep-all;\n border-collapse: collapse;\n border-spacing: 0;\n margin-top: 1.5em;\n margin-bottom: 1.5em;\n }\n\n table tr {\n background-color: #fff;\n border-top: 1px solid #ccc;\n\n &:nth-child(2n) {\n background-color: ",";\n }\n }\n\n table th,\n table td {\n padding: 6px 13px;\n border: 1px solid #ddd;\n }\n\n table th {\n text-align: left;\n font-weight: bold;\n }\n\n ",";\n\n ","\n\n ",";\n"])),(function(e){return e.theme.typography.fontFamily}),(function(e){return e.theme.typography.fontWeightRegular}),(function(e){return e.theme.typography.lineHeight}),(function(e){return e.compact&&"\n p:first-child {\n margin-top: 0;\n }\n p:last-child {\n margin-bottom: 0;\n }\n "}),(function(e){return e.inline&&" p {\n display: inline-block;\n }"}),kn(1),(function(e){return e.theme.colors.primary.main}),kn(2),(function(e){return e.theme.colors.text.primary}),(function(e){return e.theme.typography.code.color}),(function(e){return e.theme.typography.code.backgroundColor}),(function(e){return e.theme.typography.code.fontFamily}),(function(e){return e.theme.spacing.unit}),(function(e){return e.theme.typography.code.fontSize}),(function(e){return e.theme.typography.code.fontWeight}),(function(e){return e.theme.typography.code.fontFamily}),(function(e){return e.theme.typography.code.wrap?"pre-wrap":"pre"}),(function(e){return e.theme.codeBlock.backgroundColor}),(function(e){return 4*e.theme.spacing.unit}),(function(e){return e.theme.schema.nestedBackground}),Pn(".share-link"),Hi,Te("Markdown")),Yi=Vi.withComponent("span");function Gi(e){var t=e.inline?Yi:Vi;return i.createElement(Ue,null,(function(n){return i.createElement(t,Object(o.__assign)({className:"redoc-markdown "+(e.className||""),dangerouslySetInnerHTML:{__html:(r=n.untrustedSpec,a=e.html,r?qi.sanitize(a):a)},"data-role":e["data-role"]},e));var r,a}))}var Qi,Xi,Ki,Ji,Zi,ea=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.source,n=e.inline,r=e.compact,o=e.className,a=e["data-role"],s=new Rt;return i.createElement(Gi,{html:s.renderMd(t),inline:n,compact:r,className:o,"data-role":a})},t}(i.Component),ta=Se.div(Qi||(Qi=Object(o.__makeTemplateObject)(["\n position: relative;\n"],["\n position: relative;\n"]))),na=Se.div(Xi||(Xi=Object(o.__makeTemplateObject)(["\n position: absolute;\n min-width: 80px;\n max-width: 500px;\n background: #fff;\n bottom: 100%;\n left: 50%;\n margin-bottom: 10px;\n transform: translateX(-50%);\n\n border-radius: 4px;\n padding: 0.3em 0.6em;\n text-align: center;\n box-shadow: 0px 0px 5px 0px rgba(204, 204, 204, 1);\n"],["\n position: absolute;\n min-width: 80px;\n max-width: 500px;\n background: #fff;\n bottom: 100%;\n left: 50%;\n margin-bottom: 10px;\n transform: translateX(-50%);\n\n border-radius: 4px;\n padding: 0.3em 0.6em;\n text-align: center;\n box-shadow: 0px 0px 5px 0px rgba(204, 204, 204, 1);\n"]))),ra=Se.div(Ki||(Ki=Object(o.__makeTemplateObject)(["\n background: #fff;\n color: #000;\n display: inline;\n font-size: 0.85em;\n white-space: nowrap;\n"],["\n background: #fff;\n color: #000;\n display: inline;\n font-size: 0.85em;\n white-space: nowrap;\n"]))),oa=Se.div(Ji||(Ji=Object(o.__makeTemplateObject)(["\n position: absolute;\n width: 0;\n height: 0;\n bottom: -5px;\n left: 50%;\n margin-left: -5px;\n border-left: solid transparent 5px;\n border-right: solid transparent 5px;\n border-top: solid #fff 5px;\n"],["\n position: absolute;\n width: 0;\n height: 0;\n bottom: -5px;\n left: 50%;\n margin-left: -5px;\n border-left: solid transparent 5px;\n border-right: solid transparent 5px;\n border-top: solid #fff 5px;\n"]))),ia=Se.div(Zi||(Zi=Object(o.__makeTemplateObject)(["\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -20px;\n"],["\n position: absolute;\n width: 100%;\n height: 20px;\n bottom: -20px;\n"]))),aa=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.open,n=e.title,r=e.children;return i.createElement(ta,null,r,t&&i.createElement(na,null,i.createElement(ra,null,n),i.createElement(oa,null),i.createElement(ia,null)))},t}(i.Component),sa="undefined"!=typeof document&&document.queryCommandSupported&&document.queryCommandSupported("copy"),la=function(){function e(){}return e.isSupported=function(){return sa},e.selectElement=function(e){var t,n;document.body.createTextRange?((t=document.body.createTextRange()).moveToElementText(e),t.select()):document.createRange&&window.getSelection&&(n=window.getSelection(),(t=document.createRange()).selectNodeContents(e),n.removeAllRanges(),n.addRange(t))},e.deselect=function(){if(document.selection)document.selection.empty();else if(window.getSelection){var e=window.getSelection();e&&e.removeAllRanges()}},e.copySelected=function(){var e;try{e=document.execCommand("copy")}catch(t){e=!1}return e},e.copyElement=function(t){e.selectElement(t);var n=e.copySelected();return n&&e.deselect(),n},e.copyCustom=function(t){var n=document.createElement("textarea");n.style.position="fixed",n.style.top="0",n.style.left="0",n.style.width="2em",n.style.height="2em",n.style.padding="0",n.style.border="none",n.style.outline="none",n.style.boxShadow="none",n.style.background="transparent",n.value=t,document.body.appendChild(n),n.select();var r=e.copySelected();return document.body.removeChild(n),r},e}(),ca=function(e){function t(t){var n=e.call(this,t)||this;return n.copy=function(){var e="string"==typeof n.props.data?n.props.data:JSON.stringify(n.props.data,null,2);la.copyCustom(e),n.showTooltip()},n.renderCopyButton=function(){return i.createElement("button",{onClick:n.copy},i.createElement(aa,{title:la.isSupported()?"Copied":"Not supported in your browser",open:n.state.tooltipShown},"Copy"))},n.state={tooltipShown:!1},n}return Object(o.__extends)(t,e),t.prototype.render=function(){return this.props.children({renderCopyButton:this.renderCopyButton})},t.prototype.showTooltip=function(){var e=this;this.setState({tooltipShown:!0}),setTimeout((function(){e.setState({tooltipShown:!1})}),1500)},t}(i.PureComponent),ua=1;function pa(e,t){ua=1;var n="";return n+='
    ',n+="",n+=ga(e,t),n+="",n+="
    "}function fa(e){return void 0!==e?e.toString().replace(/&/g,"&").replace(/"/g,""").replace(//g,">"):""}function da(e){return JSON.stringify(e).slice(1,-1)}function ha(e,t){return''+fa(e)+""}function ma(e){return''+e+""}function ga(e,t){var n=typeof e,r="";return null==e?r+=ha("null","token keyword"):e&&e.constructor===Array?(ua++,r+=function(e,t){for(var n=ua>t?"collapsed":"",r='
    '+ma("[")+'
      ',o=!1,i=e.length,a=0;a
      ',r+=ga(e[a],t),a";r+="
    "+ma("]"),o||(r=ma("[ ]"));return r}(e,t),ua--):e&&e.constructor===Date?r+=ha('"'+e.toISOString()+'"',"token string"):"object"===n?(ua++,r+=function(e,t){for(var n=ua>t?"collapsed":"",r=Object.keys(e),o=r.length,i='
    '+ma("{")+'
      ',a=!1,s=0;s
      ',i+='"'+fa(l)+'": ',i+=ga(e[l],t),s"}i+="
    "+ma("}"),a||(i=ma("{ }"));return i}(e,t),ua--):"number"===n?r+=ha(e,"token number"):"string"===n?/^(http|https):\/\/[^\s]+$/.test(e)?r+=ha('"',"token string")+'
    '+fa(da(e))+""+ha('"',"token string"):r+=ha('"'+da(e)+'"',"token string"):"boolean"===n&&(r+=ha(e,"token boolean")),r}var ya,va,ba,xa=we(ya||(ya=Object(o.__makeTemplateObject)(["\n .redoc-json > .collapser {\n display: none;\n }\n\n font-family: ",";\n font-size: ",";\n\n white-space: ",";\n contain: content;\n overflow-x: auto;\n\n .callback-function {\n color: gray;\n }\n\n .collapser:after {\n content: '-';\n cursor: pointer;\n }\n\n .collapsed > .collapser:after {\n content: '+';\n cursor: pointer;\n }\n\n .ellipsis:after {\n content: ' … ';\n }\n\n .collapsible {\n margin-left: 2em;\n }\n\n .hoverable {\n padding-top: 1px;\n padding-bottom: 1px;\n padding-left: 2px;\n padding-right: 2px;\n border-radius: 2px;\n }\n\n .hovered {\n background-color: rgba(235, 238, 249, 1);\n }\n\n .collapser {\n padding-right: 6px;\n padding-left: 6px;\n }\n\n ul {\n list-style-type: none;\n padding: 0px;\n margin: 0px 0px 0px 26px;\n }\n\n li {\n position: relative;\n display: block;\n }\n\n .hoverable {\n display: inline-block;\n }\n\n .selected {\n outline-style: solid;\n outline-width: 1px;\n outline-style: dotted;\n }\n\n .collapsed > .collapsible {\n display: none;\n }\n\n .ellipsis {\n display: none;\n }\n\n .collapsed > .ellipsis {\n display: inherit;\n }\n\n .collapser {\n position: absolute;\n top: 1px;\n left: -1.5em;\n cursor: default;\n user-select: none;\n -webkit-user-select: none;\n }\n"],["\n .redoc-json > .collapser {\n display: none;\n }\n\n font-family: ",";\n font-size: ",";\n\n white-space: ",";\n contain: content;\n overflow-x: auto;\n\n .callback-function {\n color: gray;\n }\n\n .collapser:after {\n content: '-';\n cursor: pointer;\n }\n\n .collapsed > .collapser:after {\n content: '+';\n cursor: pointer;\n }\n\n .ellipsis:after {\n content: ' … ';\n }\n\n .collapsible {\n margin-left: 2em;\n }\n\n .hoverable {\n padding-top: 1px;\n padding-bottom: 1px;\n padding-left: 2px;\n padding-right: 2px;\n border-radius: 2px;\n }\n\n .hovered {\n background-color: rgba(235, 238, 249, 1);\n }\n\n .collapser {\n padding-right: 6px;\n padding-left: 6px;\n }\n\n ul {\n list-style-type: none;\n padding: 0px;\n margin: 0px 0px 0px 26px;\n }\n\n li {\n position: relative;\n display: block;\n }\n\n .hoverable {\n display: inline-block;\n }\n\n .selected {\n outline-style: solid;\n outline-width: 1px;\n outline-style: dotted;\n }\n\n .collapsed > .collapsible {\n display: none;\n }\n\n .ellipsis {\n display: none;\n }\n\n .collapsed > .ellipsis {\n display: inherit;\n }\n\n .collapser {\n position: absolute;\n top: 1px;\n left: -1.5em;\n cursor: default;\n user-select: none;\n -webkit-user-select: none;\n }\n"])),(function(e){return e.theme.typography.code.fontFamily}),(function(e){return e.theme.typography.code.fontSize}),(function(e){return e.theme.typography.code.wrap?"pre-wrap":"pre"})),wa=Se.div(va||(va=Object(o.__makeTemplateObject)(["\n &:hover > "," {\n opacity: 1;\n }\n"],["\n &:hover > "," {\n opacity: 1;\n }\n"])),qo),ka=Se(function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderInner=function(e){var n=e.renderCopyButton;return i.createElement(wa,null,i.createElement(qo,null,n(),i.createElement("button",{onClick:t.expandAll}," Expand all "),i.createElement("button",{onClick:t.collapseAll}," Collapse all ")),i.createElement(Fe.Consumer,null,(function(e){return i.createElement(Wo,{className:t.props.className,ref:function(e){return t.node=e},dangerouslySetInnerHTML:{__html:pa(t.props.data,e.jsonSampleExpandLevel)}})})))},t.expandAll=function(){for(var e=t.node.getElementsByClassName("collapsible"),n=0,r=Array.prototype.slice.call(e);n1){var a=o.map((function(e,n){return{value:t[e].summary||e,idx:n}})),s=(l=t[o[e]]).description;return i.createElement(Ua,null,i.createElement(Ma,null,i.createElement(La,null,"Example"),this.props.renderDropdown({value:a[e].value,options:a,onChange:this.switchMedia,ariaLabel:"Example"})),i.createElement("div",null,s&&i.createElement(ea,{source:s}),i.createElement(Sa,{example:l,mimeType:n})))}var l=t[o[0]];return i.createElement(Ua,null,l.description&&i.createElement(ea,{source:l.description}),i.createElement(Sa,{example:l,mimeType:n}))},t}(i.Component),Ua=Se.div(Ra||(Ra=Object(o.__makeTemplateObject)(["\n margin-top: 15px;\n"],["\n margin-top: 15px;\n"]))),Ba=n(7),$a=0;var Wa={};function qa(e){return Wa[e]||(Wa[e]=function(e){if("function"==typeof Symbol)return Symbol(e);var t="__$mobx-react "+e+" ("+$a+")";return $a++,t}(e)),Wa[e]}function Ha(e,t){if(Va(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(var o=0;o2?r-2:0),i=2;i",o=e.bind(this),a=!1,s=new Be.b(r+".render()",(function(){if(!a&&(a=!0,!0!==t[es])){var e=!0;try{Ya(t,ns,!0),t[ts]||i.Component.prototype.forceUpdate.call(t),e=!1}finally{Ya(t,ns,!1),e&&s.dispose()}}}));function l(){a=!1;var e=void 0,t=void 0;if(s.track((function(){try{t=Object(Be.c)(!1,o)}catch(t){e=t}})),e)throw e;return t}return s.reactComponent=this,l[Za]=s,this.render=l,l.call(this)}function is(e,t){return Object(Ba.b)()&&console.warn("[mobx-react] It seems that a re-rendering of a React component is triggered while in static (server-side) mode. Please make sure components are rendered only once server-side."),this.state!==t||!Ha(this.props,e)}function as(e,t){var n=qa("reactProp_"+t+"_valueHolder"),r=qa("reactProp_"+t+"_atomHolder");function o(){return this[r]||Ya(this,r,Object(Be.i)("reactive "+t)),this[r]}Object.defineProperty(e,t,{configurable:!0,enumerable:!0,get:function(){var e=!1;return Be.e&&Be.d&&(e=Object(Be.e)(!0)),o.call(this).reportObserved(),Be.e&&Be.d&&Object(Be.d)(e),this[n]},set:function(e){this[ns]||Ha(this[n],e)?Ya(this,n,e):(Ya(this,n,e),Ya(this,ts,!0),o.call(this).reportChanged(),Ya(this,ts,!1))}})}var ss="function"==typeof Symbol&&Symbol.for,ls=ss?Symbol.for("react.forward_ref"):"function"==typeof i.forwardRef&&Object(i.forwardRef)((function(e){return null})).$$typeof,cs=ss?Symbol.for("react.memo"):"function"==typeof i.memo&&Object(i.memo)((function(e){return null})).$$typeof;function us(e){if(!0===e.isMobxInjector&&console.warn("Mobx observer: You are trying to use 'observer' on a component that already has 'inject'. Please apply 'observer' before applying 'inject'"),cs&&e.$$typeof===cs)throw new Error("Mobx observer: You are trying to use 'observer' on a function component wrapped in either another observer or 'React.memo'. The observer already applies 'React.memo' for you.");if(ls&&e.$$typeof===ls){var t=e.render;if("function"!=typeof t)throw new Error("render property of ForwardRef was not a function");return Object(i.forwardRef)((function(){var e=arguments;return Object(i.createElement)(Ba.a,null,(function(){return t.apply(void 0,e)}))}))}return"function"!=typeof e||e.prototype&&e.prototype.render||e.isReactClass||Object.prototype.isPrototypeOf.call(i.Component,e)?rs(e):Object(Ba.c)(e)}if(!i.Component)throw new Error("mobx-react requires React to be available");if(!Be.n)throw new Error("mobx-react requires mobx to be available");var ps,fs,ds,hs,ms,gs,ys,vs,bs,xs,ws,ks,Os,Es,_s,Ss,Ts,js,As=Se(cr)(ps||(ps=Object(o.__makeTemplateObject)(["\n button {\n background-color: transparent;\n border: 0;\n outline: 0;\n font-size: 13px;\n font-family: ",";\n cursor: pointer;\n padding: 0;\n color: ",";\n &:focus {\n font-weight: ",";\n }\n }\n "," {\n height: ",";\n width: ",";\n polygon {\n fill: ",";\n }\n }\n"],["\n button {\n background-color: transparent;\n border: 0;\n outline: 0;\n font-size: 13px;\n font-family: ",";\n cursor: pointer;\n padding: 0;\n color: ",";\n &:focus {\n font-weight: ",";\n }\n }\n "," {\n height: ",";\n width: ",";\n polygon {\n fill: ",";\n }\n }\n"])),(function(e){return e.theme.typography.code.fontFamily}),(function(e){return e.theme.colors.text.primary}),(function(e){return e.theme.typography.fontWeightBold}),rr,(function(e){return e.theme.schema.arrow.size}),(function(e){return e.theme.schema.arrow.size}),(function(e){return e.theme.schema.arrow.color})),Cs=Se.span(fs||(fs=Object(o.__makeTemplateObject)(["\n vertical-align: middle;\n font-size: ",";\n line-height: 20px;\n"],["\n vertical-align: middle;\n font-size: ",";\n line-height: 20px;\n"])),(function(e){return e.theme.typography.code.fontSize})),Is=Se(Cs)(ds||(ds=Object(o.__makeTemplateObject)(["\n color: ",";\n"],["\n color: ",";\n"])),(function(e){return J(.2,e.theme.schema.typeNameColor)})),Ps=Se(Cs)(hs||(hs=Object(o.__makeTemplateObject)(["\n color: ",";\n"],["\n color: ",";\n"])),(function(e){return e.theme.schema.typeNameColor})),Rs=Se(Cs)(ms||(ms=Object(o.__makeTemplateObject)(["\n color: ",";\n word-break: break-word;\n"],["\n color: ",";\n word-break: break-word;\n"])),(function(e){return e.theme.schema.typeTitleColor})),Ns=Ps,Ls=Se(Cs.withComponent("div"))(gs||(gs=Object(o.__makeTemplateObject)(["\n color: ",";\n font-size: ",";\n font-weight: normal;\n margin-left: 20px;\n line-height: 1;\n"],["\n color: ",";\n font-size: ",";\n font-weight: normal;\n margin-left: 20px;\n line-height: 1;\n"])),(function(e){return e.theme.schema.requireLabelColor}),(function(e){return e.theme.schema.labelsTextSize})),Ms=Se(Cs)(ys||(ys=Object(o.__makeTemplateObject)(["\n color: ",";\n font-size: 13px;\n"],["\n color: ",";\n font-size: 13px;\n"])),(function(e){return e.theme.colors.warning.main})),Ds=Se(Cs)(vs||(vs=Object(o.__makeTemplateObject)(["\n color: #3195a6;\n font-size: 13px;\n"],["\n color: #3195a6;\n font-size: 13px;\n"]))),Fs=Se(Cs)(bs||(bs=Object(o.__makeTemplateObject)(["\n color: #3195a6;\n &::before,\n &::after {\n font-weight: bold;\n }\n"],["\n color: #3195a6;\n &::before,\n &::after {\n font-weight: bold;\n }\n"]))),zs=Se(Cs)(xs||(xs=Object(o.__makeTemplateObject)(["\n border-radius: 2px;\n ",";\n & + & {\n margin-left: 0;\n }\n ",";\n"],["\n border-radius: 2px;\n ",";\n & + & {\n margin-left: 0;\n }\n ",";\n"])),(function(e){var t=e.theme;return"\n background-color: "+J(.95,t.colors.text.primary)+";\n color: "+J(.1,t.colors.text.primary)+";\n\n padding: 0 "+t.spacing.unit+"px;\n border: 1px solid "+J(.9,t.colors.text.primary)+";\n font-family: "+t.typography.code.fontFamily+";\n}"}),Te("ExampleValue")),Us=Se(zs)(ws||(ws=Object(o.__makeTemplateObject)([""],[""]))),Bs=Se(Cs)(ks||(ks=Object(o.__makeTemplateObject)(["\n border-radius: 2px;\n ",";\n & + & {\n margin-left: 0;\n }\n ",";\n"],["\n border-radius: 2px;\n ",";\n & + & {\n margin-left: 0;\n }\n ",";\n"])),(function(e){var t=e.theme;return"\n background-color: "+J(.95,t.colors.primary.light)+";\n color: "+J(.1,t.colors.primary.main)+";\n\n margin: 0 "+t.spacing.unit+"px;\n padding: 0 "+t.spacing.unit+"px;\n border: 1px solid "+J(.9,t.colors.primary.main)+";\n font-family: "+t.typography.code.fontFamily+";\n}"}),Te("ConstraintItem")),$s=Se.div(Os||(Os=Object(o.__makeTemplateObject)(["\n ",";\n ","\n"],["\n ",";\n ","\n"])),Hi,(function(e){return e.compact?"":"margin: 1em 0"})),Ws=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.externalDocs;return e&&e.url?i.createElement($s,{compact:this.props.compact},i.createElement("a",{href:e.url},e.description||e.url)):null},t=Object(o.__decorate)([us],t)}(i.Component),qs=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.state={collapsed:!0},t}return Object(o.__extends)(t,e),t.prototype.toggle=function(){this.setState({collapsed:!this.state.collapsed})},t.prototype.render=function(){var e=this,t=this.props,n=t.values,r=t.type,o=this.state.collapsed,a=this.context,s=a.enumSkipQuotes,l=a.maxDisplayedEnumValues;if(!n.length)return null;var c=this.state.collapsed&&l?n.slice(0,l):n,u=!!l&&n.length>l,p=l?o?"… "+(n.length-l)+" more":"Hide":"";return i.createElement("div",null,i.createElement(Cs,null,"array"===r?he("enumArray"):""," ",1===n.length?he("enumSingleValue"):he("enum"),":")," ",c.map((function(e,t){var n=s?e:JSON.stringify(e);return i.createElement(i.Fragment,{key:t},i.createElement(zs,null,n)," ")})),u?i.createElement(Hs,{onClick:function(){e.toggle()}},p):null)},t.contextType=Fe,t}(i.PureComponent),Hs=Se.span(Es||(Es=Object(o.__makeTemplateObject)(["\n color: ",";\n vertical-align: middle;\n font-size: 13px;\n line-height: 20px;\n padding: 0 5px;\n cursor: pointer;\n"],["\n color: ",";\n vertical-align: middle;\n font-size: 13px;\n line-height: 20px;\n padding: 0 5px;\n cursor: pointer;\n"])),(function(e){return e.theme.colors.primary.main})),Vs=Se(Vi)(_s||(_s=Object(o.__makeTemplateObject)(["\n margin: 2px 0;\n"],["\n margin: 2px 0;\n"]))),Ys=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.extensions;return i.createElement(Fe.Consumer,null,(function(t){return i.createElement(i.Fragment,null,t.showExtensions&&Object.keys(e).map((function(t){return i.createElement(Vs,{key:t},i.createElement(Cs,null," ",t.substring(2),": ")," ",i.createElement(Us,null,"string"==typeof e[t]?e[t]:JSON.stringify(e[t])))})))}))},t}(i.PureComponent),Gs=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){return 0===this.props.constraints.length?null:i.createElement("span",null," ",this.props.constraints.map((function(e){return i.createElement(Bs,{key:e}," ",e," ")})))},t}(i.PureComponent),Qs=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){if(void 0===this.props.value)return null;var e=this.props.raw?this.props.value:JSON.stringify(this.props.value);return i.createElement("div",null,i.createElement(Cs,null," ",this.props.label," ")," ",i.createElement(zs,null,e))},t}(i.PureComponent),Xs=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.showExamples,n=e.field,r=e.renderDiscriminatorSwitch,a=this.context,s=a.enumSkipQuotes,l=a.hideSchemaTitles,c=n.schema,u=n.description,p=n.example,f=n.deprecated,d=!!s||"header"===n.in,h=null;if(t&&void 0!==p){var m=he("example")+":";if(n.in&&(n.style||n.serializationMime)){var g=decodeURIComponent(ct(n,p));h=i.createElement(Qs,{label:m,value:g,raw:!0})}else h=i.createElement(Qs,{label:m,value:p})}return i.createElement("div",null,i.createElement("div",null,i.createElement(Is,null,c.typePrefix),i.createElement(Ps,null,c.displayType),c.displayFormat&&i.createElement(Ns,null," ","<",c.displayFormat,">"," "),c.title&&!l&&i.createElement(Rs,null," (",c.title,") "),i.createElement(Gs,{constraints:c.constraints}),c.nullable&&i.createElement(Ds,null," ",he("nullable")," "),c.pattern&&c.pattern.length<45&&i.createElement(Fs,null," ",c.pattern," "),c.isCircular&&i.createElement(Ms,null," ",he("recursive")," ")),f&&i.createElement("div",null,i.createElement(or,{type:"warning"}," ",he("deprecated")," ")),i.createElement(Qs,{raw:d,label:he("default")+":",value:c.default}),!r&&i.createElement(qs,{type:c.type,values:c.enum})," ",h,i.createElement(Ys,{extensions:Object(o.__assign)(Object(o.__assign)({},n.extensions),c.extensions)}),i.createElement("div",null,i.createElement(ea,{compact:!0,source:u})),c.externalDocs&&i.createElement(Ws,{externalDocs:c.externalDocs,compact:!0}),r&&r(this.props)||null)},t.contextType=Fe,t}(i.PureComponent),Ks=Se.div(Ss||(Ss=Object(o.__makeTemplateObject)(["\n padding-left: ","px;\n"],["\n padding-left: ","px;\n"])),(function(e){return 2*e.theme.spacing.unit})),Js=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.schema.items,t=ft(function(e,t){return void 0===e&&(e=void 0),void 0===t&&(t=void 0),{type:"array",minItems:e,maxItems:t}}(e.schema.minItems,e.schema.maxItems));return i.createElement("div",null,i.createElement(yr,null," Array (",t,")"),i.createElement(Ks,null,i.createElement(ol,Object(o.__assign)({},this.props,{schema:e}))),i.createElement(vr,null))},t}(i.PureComponent),Zs=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.toggle=function(){void 0===t.props.field.expanded&&t.props.expandByDefault?t.props.field.expanded=!1:t.props.field.toggle()},t.handleKeyPress=function(e){"Enter"===e.key&&(e.preventDefault(),t.toggle())},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.className,n=e.field,r=e.isLast,a=e.expandByDefault,s=n.name,l=n.deprecated,c=n.required,u=n.kind,p=!n.schema.isPrimitive&&!n.schema.isCircular,f=void 0===n.expanded?a:n.expanded,d=p?i.createElement(As,{className:l?"deprecated":"",kind:u,title:s},i.createElement(pr,null),i.createElement("button",{onClick:this.toggle,onKeyPress:this.handleKeyPress,"aria-label":"expand properties"},s,i.createElement(rr,{direction:f?"down":"right"})),c&&i.createElement(Ls,null," required ")):i.createElement(cr,{className:l?"deprecated":void 0,kind:u,title:s},i.createElement(pr,null),s,c&&i.createElement(Ls,null," required "));return i.createElement(i.Fragment,null,i.createElement("tr",{className:r?"last "+t:t},d,i.createElement(ur,null,i.createElement(Xs,Object(o.__assign)({},this.props)))),f&&p&&i.createElement("tr",{key:n.name+"inner"},i.createElement(lr,{colSpan:2},i.createElement(fr,null,i.createElement(ol,{schema:n.schema,skipReadOnly:this.props.skipReadOnly,skipWriteOnly:this.props.skipWriteOnly,showTitle:this.props.showTitle})))))},t=Object(o.__decorate)([us],t)}(i.Component),el=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.changeActiveChild=function(e){t.props.parent.activateOneOf(e.idx)},t}return Object(o.__extends)(t,e),t.prototype.sortOptions=function(e,t){if(0!==t.length){var n={};t.forEach((function(e,t){n[e]=t})),e.sort((function(e,t){return n[e.value]>n[t.value]?1:-1}))}},t.prototype.render=function(){var e=this.props,t=e.parent,n=e.enumValues;if(void 0===t.oneOf)return null;var r=t.oneOf.map((function(e,t){return{value:e.title,idx:t}})),o=r[t.activeOneOf].value;return this.sortOptions(r,n),i.createElement(io,{value:o,options:r,onChange:this.changeActiveChild})},t=Object(o.__decorate)([us],t)}(i.Component),tl=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),Object.defineProperty(t.prototype,"parentSchema",{get:function(){return this.props.discriminator.parentSchema},enumerable:!1,configurable:!0}),t.prototype.render=function(){var e=this,t=this.props,n=t.schema.fields,r=void 0===n?[]:n,o=t.showTitle,a=t.discriminator,s=this.props.skipReadOnly||this.props.skipWriteOnly?r.filter((function(t){return!(e.props.skipReadOnly&&t.schema.readOnly||e.props.skipWriteOnly&&t.schema.writeOnly)})):r,l=this.context.expandSingleSchemaField&&1===s.length;return i.createElement(dr,null,o&&i.createElement(ar,null,this.props.schema.title),i.createElement("tbody",null,ae(s,(function(t,n){return i.createElement(Zs,{key:t.name,isLast:n,field:t,expandByDefault:l,renderDiscriminatorSwitch:a&&a.fieldName===t.name&&function(){return i.createElement(el,{parent:e.parentSchema,enumValues:t.schema.enum})}||void 0,className:t.expanded?"expanded":void 0,showExamples:!1,skipReadOnly:e.props.skipReadOnly,skipWriteOnly:e.props.skipWriteOnly,showTitle:e.props.showTitle})}))))},t.contextType=Fe,t=Object(o.__decorate)([us],t)}(i.Component),nl=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.activateOneOf=function(){t.props.schema.activateOneOf(t.props.idx)},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.idx,n=e.schema,r=e.subSchema;return i.createElement(gr,{active:t===n.activeOneOf,onClick:this.activateOneOf},r.title||r.typePrefix+r.displayType)},t=Object(o.__decorate)([us],t)}(i.Component),rl=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.schema.oneOf,n=e.schema;return void 0===t?null:i.createElement("div",null,i.createElement(mr,null," ",n.oneOfType," "),i.createElement(hr,null,t.map((function(e,t){return i.createElement(nl,{key:e.pointer,schema:n,subSchema:e,idx:t})}))),i.createElement(ol,Object(o.__assign)({},this.props,{schema:t[n.activeOneOf]})))},t=Object(o.__decorate)([us],t)}(i.Component),ol=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.schema;if(!e)return i.createElement("em",null," Schema not provided ");var t=e.type,n=e.oneOf,r=e.discriminatorProp;if(e.isCircular)return i.createElement("div",null,i.createElement(Ps,null,e.displayType),e.title&&i.createElement(Rs,null," ",e.title," "),i.createElement(Ms,null," ",he("recursive")," "));if(void 0!==r)return n&&n.length?i.createElement(tl,Object(o.__assign)({},Object(o.__assign)(Object(o.__assign)({},this.props),{schema:n[e.activeOneOf]}),{discriminator:{fieldName:r,parentSchema:e}})):(console.warn("Looks like you are using discriminator wrong: you don't have any definition inherited from the "+e.title),null);if(void 0!==n)return i.createElement(rl,Object(o.__assign)({schema:e},this.props));switch(t){case"object":return i.createElement(tl,Object(o.__assign)({},this.props));case"array":return i.createElement(Js,Object(o.__assign)({},this.props))}var a={schema:e,name:"",required:!1,description:e.description,externalDocs:e.externalDocs,deprecated:!1,toggle:function(){return null},expanded:!1};return i.createElement("div",null,i.createElement(Xs,{field:a}))},t=Object(o.__decorate)([us],t)}(i.Component),il=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderDropdown=function(e){return i.createElement(Bi,Object(o.__assign)({Label:so,Dropdown:Da},e))},t}return Object(o.__extends)(t,e),t.getMediaType=function(e,t){if(!e)return{};var n={schema:{$ref:e}};return t&&(n.examples={example:{$ref:t}}),n},Object.defineProperty(t.prototype,"mediaModel",{get:function(){var e=this.props,n=e.parser,r=e.schemaRef,o=e.exampleRef,i=e.options;return this._mediaModel||(this._mediaModel=new Ht(n,"json",!1,t.getMediaType(r,o),i)),this._mediaModel},enumerable:!1,configurable:!0}),t.prototype.render=function(){var e=this.props,t=e.showReadOnly,n=void 0===t||t,r=e.showWriteOnly,o=void 0!==r&&r;return i.createElement(yn,null,i.createElement(xn,null,i.createElement(gn,null,i.createElement(ol,{skipWriteOnly:!o,skipReadOnly:!n,schema:this.mediaModel.schema})),i.createElement(bn,null,i.createElement(al,null,i.createElement(za,{renderDropdown:this.renderDropdown,mediaType:this.mediaModel})))))},t}(i.PureComponent),al=Se.div(Ts||(Ts=Object(o.__makeTemplateObject)(["\n background: ",";\n & > div,\n & > pre {\n padding: ","px;\n margin: 0;\n }\n\n & > div > pre {\n padding: 0;\n }\n"],["\n background: ",";\n & > div,\n & > pre {\n padding: ","px;\n margin: 0;\n }\n\n & > div > pre {\n padding: 0;\n }\n"])),(function(e){return e.theme.codeBlock.backgroundColor}),(function(e){return 4*e.theme.spacing.unit})),sl={oauth2:"OAuth2",apiKey:"API Key",http:"HTTP",openIdConnect:"Open ID Connect"},ll=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.type,n=e.flow;return i.createElement("tr",null,i.createElement("th",null," ",t," OAuth Flow "),i.createElement("td",null,"implicit"===t||"authorizationCode"===t?i.createElement("div",null,i.createElement("strong",null," Authorization URL: "),n.authorizationUrl):null,"password"===t||"clientCredentials"===t||"authorizationCode"===t?i.createElement("div",null,i.createElement("strong",null," Token URL: "),n.tokenUrl):null,n.refreshUrl&&i.createElement("div",null,i.createElement("strong",null," Refresh URL: "),n.refreshUrl),i.createElement("div",null,i.createElement("strong",null," Scopes: ")),i.createElement("ul",null,Object.keys(n.scopes||{}).map((function(e){return i.createElement("li",{key:e},i.createElement("code",null,e)," - ",i.createElement(ea,{inline:!0,source:n.scopes[e]||""}))})))))},t}(i.PureComponent),cl=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){return this.props.securitySchemes.schemes.map((function(e){return i.createElement(yn,{id:e.sectionId,key:e.id},i.createElement(xn,null,i.createElement(gn,null,i.createElement(En,null,i.createElement(Mn,{to:e.sectionId}),e.id),i.createElement(ea,{source:e.description||""}),i.createElement(Vi,null,i.createElement("table",{className:"security-details"},i.createElement("tbody",null,i.createElement("tr",null,i.createElement("th",null," Security Scheme Type "),i.createElement("td",null," ",sl[e.type]||e.type," ")),e.apiKey?i.createElement("tr",null,i.createElement("th",null," ",(t=e.apiKey.in||"").charAt(0).toUpperCase()+t.slice(1)," parameter name:"),i.createElement("td",null," ",e.apiKey.name," ")):e.http?[i.createElement("tr",{key:"scheme"},i.createElement("th",null," HTTP Authorization Scheme "),i.createElement("td",null," ",e.http.scheme," ")),"bearer"===e.http.scheme&&e.http.bearerFormat&&i.createElement("tr",{key:"bearer"},i.createElement("th",null," Bearer format "),i.createElement("td",null,' "',e.http.bearerFormat,'" '))]:e.openId?i.createElement("tr",null,i.createElement("th",null," Connect URL "),i.createElement("td",null,i.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:e.openId.connectUrl},e.openId.connectUrl))):e.flows?Object.keys(e.flows).map((function(t){return i.createElement(ll,{key:t,type:t,flow:e.flows[t]})})):null))))));var t}))},t}(i.PureComponent);var ul,pl,fl,dl,hl,ml,gl,yl,vl=function(){function e(e,t,n,r){var o=this;void 0===n&&(n={}),void 0===r&&(r=!0),this.marker=new At,this.disposer=null,this.rawOptions=n,this.options=new ye(n,bl),this.scroll=new zi(this.options),Fi.updateOnHistory(Tt.currentId,this.scroll),this.spec=new Ni(e,t,this.options),this.menu=new Fi(this.spec,this.scroll,Tt),this.options.disableSearch||(this.search=new Ui,r&&this.search.indexItems(this.menu.items),this.disposer=Object(Be.o)(this.menu,"activeItemIdx",(function(e){o.updateMarkOnMenu(e.newValue)})))}return e.fromJS=function(t){var n=new e(t.spec.data,t.spec.url,t.options,!1);return n.menu.activeItemIdx=t.menu.activeItemIdx||0,n.menu.activate(n.menu.flatItems[n.menu.activeItemIdx]),n.options.disableSearch||n.search.load(t.searchIndex),n},e.prototype.onDidMount=function(){this.menu.updateOnHistory(),this.updateMarkOnMenu(this.menu.activeItemIdx)},e.prototype.dispose=function(){this.scroll.dispose(),this.menu.dispose(),this.search&&this.search.dispose(),null!=this.disposer&&this.disposer()},e.prototype.toJS=function(){return Object(o.__awaiter)(this,void 0,void 0,(function(){var e,t;return Object(o.__generator)(this,(function(n){switch(n.label){case 0:return e={menu:{activeItemIdx:this.menu.activeItemIdx},spec:{url:this.spec.parser.specUrl,data:this.spec.parser.spec}},this.search?[4,this.search.toJS()]:[3,2];case 1:return t=n.sent(),[3,3];case 2:t=void 0,n.label=3;case 3:return[2,(e.searchIndex=t,e.options=this.rawOptions,e)]}}))}))},e.prototype.updateMarkOnMenu=function(e){for(var t=Math.max(0,e),n=Math.min(this.menu.flatItems.length,t+5),r=[],o=t;o1?W(.1,n.sidebar.backgroundColor):1===e?W(.05,n.sidebar.backgroundColor):""}var Nl,Ll,Ml,Dl,Fl,zl,Ul,Bl,$l,Wl,ql,Hl,Vl,Yl,Gl,Ql,Xl,Kl,Jl,Zl,ec,tc=Se.ul(Ll||(Ll=Object(o.__makeTemplateObject)(["\n margin: 0;\n padding: 0;\n\n & & {\n font-size: 0.929em;\n }\n\n ",";\n"],["\n margin: 0;\n padding: 0;\n\n & & {\n font-size: 0.929em;\n }\n\n ",";\n"])),(function(e){return e.expanded?"":"display: none;"})),nc=Se.li(Ml||(Ml=Object(o.__makeTemplateObject)(["\n list-style: none inside none;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0;\n ",";\n"],["\n list-style: none inside none;\n overflow: hidden;\n text-overflow: ellipsis;\n padding: 0;\n ",";\n"])),(function(e){return 0===e.depth?"margin-top: 15px":""})),rc={0:we(Dl||(Dl=Object(o.__makeTemplateObject)(["\n opacity: 0.7;\n text-transform: ",";\n font-size: 0.8em;\n padding-bottom: 0;\n cursor: default;\n color: ",";\n "],["\n opacity: 0.7;\n text-transform: ",";\n font-size: 0.8em;\n padding-bottom: 0;\n cursor: default;\n color: ",";\n "])),(function(e){return e.theme.sidebar.groupItems.textTransform}),(function(e){return e.theme.sidebar.textColor})),1:we(Fl||(Fl=Object(o.__makeTemplateObject)(["\n font-size: 0.929em;\n text-transform: ",";\n &:hover {\n color: ",";\n }\n "],["\n font-size: 0.929em;\n text-transform: ",";\n &:hover {\n color: ",";\n }\n "])),(function(e){return e.theme.sidebar.level1Items.textTransform}),(function(e){return e.theme.sidebar.activeTextColor})),2:we(zl||(zl=Object(o.__makeTemplateObject)(["\n color: ",";\n "],["\n color: ",";\n "])),(function(e){return e.theme.sidebar.textColor}))},oc=Se.label.attrs((function(e){return{role:"menuitem",className:Il("-depth"+e.depth,{active:e.active})}}))(Ul||(Ul=Object(o.__makeTemplateObject)(["\n cursor: pointer;\n color: ",";\n margin: 0;\n padding: 12.5px ","px;\n ","\n display: flex;\n justify-content: space-between;\n font-family: ",";\n ",";\n background-color: ",";\n\n ",";\n\n &:hover {\n background-color: ",";\n }\n\n "," {\n height: ",";\n width: ",";\n polygon {\n fill: ",";\n }\n }\n"],["\n cursor: pointer;\n color: ",";\n margin: 0;\n padding: 12.5px ","px;\n ","\n display: flex;\n justify-content: space-between;\n font-family: ",";\n ",";\n background-color: ",";\n\n ",";\n\n &:hover {\n background-color: ",";\n }\n\n "," {\n height: ",";\n width: ",";\n polygon {\n fill: ",";\n }\n }\n"])),(function(e){return e.active?e.theme.sidebar.activeTextColor:e.theme.sidebar.textColor}),(function(e){return 4*e.theme.spacing.unit}),(function(e){var t=e.depth,n=e.type,r=e.theme;return"section"===n&&t>1&&"padding-left: "+8*r.spacing.unit+"px;"||""}),(function(e){return e.theme.typography.headings.fontFamily}),(function(e){return rc[e.depth]}),(function(e){return e.active?Rl(e.depth,e):""}),(function(e){return e.deprecated&&ir||""}),(function(e){return Rl(e.depth,e)}),rr,(function(e){return e.theme.sidebar.arrow.size}),(function(e){return e.theme.sidebar.arrow.size}),(function(e){return e.theme.sidebar.arrow.color})),ic=Se.span(Bl||(Bl=Object(o.__makeTemplateObject)(["\n display: inline-block;\n vertical-align: middle;\n width: ",";\n overflow: hidden;\n text-overflow: ellipsis;\n"],["\n display: inline-block;\n vertical-align: middle;\n width: ",";\n overflow: hidden;\n text-overflow: ellipsis;\n"])),(function(e){return e.width?e.width:"auto"})),ac=Se.div($l||($l=Object(o.__makeTemplateObject)(["\n ",";\n"],["\n ",";\n"])),(function(e){var t=e.theme;return"\n font-size: 0.8em;\n margin-top: "+2*t.spacing.unit+"px;\n padding: 0 "+4*t.spacing.unit+"px;\n text-align: left;\n\n opacity: 0.7;\n\n a,\n a:visited,\n a:hover {\n color: "+t.sidebar.textColor+" !important;\n border-top: 1px solid "+W(.1,t.sidebar.backgroundColor)+";\n padding: "+t.spacing.unit+"px 0;\n display: block;\n }\n"})),sc=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.name,n=e.opened,r=e.className,o=e.onClick,a=e.httpVerb,s=e.deprecated;return i.createElement(lc,{className:r,onClick:o||void 0},i.createElement(uc,{type:a},yt(a)),i.createElement(rr,{size:"1.5em",direction:n?"down":"right",float:"left"}),i.createElement(cc,{deprecated:s},t),s?i.createElement(or,{type:"warning"}," ",he("deprecated")," "):null)},t}(i.PureComponent),lc=Se.button(Wl||(Wl=Object(o.__makeTemplateObject)(["\n border: 0;\n width: 100%;\n text-align: left;\n & > * {\n vertical-align: middle;\n }\n\n "," {\n polygon {\n fill: ",";\n }\n }\n"],["\n border: 0;\n width: 100%;\n text-align: left;\n & > * {\n vertical-align: middle;\n }\n\n "," {\n polygon {\n fill: ",";\n }\n }\n"])),rr,(function(e){var t=e.theme;return W(t.colors.tonalOffset,t.colors.gray[100])})),cc=Se.span(ql||(ql=Object(o.__makeTemplateObject)(["\n text-decoration: ",";\n margin-right: 8px;\n"],["\n text-decoration: ",";\n margin-right: 8px;\n"])),(function(e){return e.deprecated?"line-through":"none"})),uc=Se(Pl)(Hl||(Hl=Object(o.__makeTemplateObject)(["\n margin: 0px 5px 0px 0px;\n"],["\n margin: 0px 5px 0px 0px;\n"]))),pc=Se(sc)(Vl||(Vl=Object(o.__makeTemplateObject)(["\n padding: 10px;\n border-radius: 2px;\n margin-bottom: 4px;\n line-height: 1.5em;\n background-color: ",";\n cursor: pointer;\n outline-color: ",";\n"],["\n padding: 10px;\n border-radius: 2px;\n margin-bottom: 4px;\n line-height: 1.5em;\n background-color: ",";\n cursor: pointer;\n outline-color: ",";\n"])),(function(e){return e.theme.colors.gray[100]}),(function(e){var t=e.theme;return W(t.colors.tonalOffset,t.colors.gray[100])})),fc=Se.div(Yl||(Yl=Object(o.__makeTemplateObject)(["\n padding: 10px 25px;\n background-color: ",";\n margin-bottom: 5px;\n margin-top: 5px;\n"],["\n padding: 10px 25px;\n background-color: ",";\n margin-bottom: 5px;\n margin-top: 5px;\n"])),(function(e){return e.theme.colors.gray[50]})),dc=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.selectElement=function(){la.selectElement(t.child)},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props.children;return i.createElement("div",{ref:function(t){return e.child=t},onClick:this.selectElement,onFocus:this.selectElement,tabIndex:0,role:"button"},t)},t}(i.PureComponent),hc=Se.div(Gl||(Gl=Object(o.__makeTemplateObject)(["\n cursor: pointer;\n position: relative;\n margin-bottom: 5px;\n"],["\n cursor: pointer;\n position: relative;\n margin-bottom: 5px;\n"]))),mc=Se.span(Ql||(Ql=Object(o.__makeTemplateObject)(["\n font-family: ",";\n margin-left: 10px;\n flex: 1;\n overflow-x: hidden;\n text-overflow: ellipsis;\n"],["\n font-family: ",";\n margin-left: 10px;\n flex: 1;\n overflow-x: hidden;\n text-overflow: ellipsis;\n"])),(function(e){return e.theme.typography.code.fontFamily})),gc=Se.button(Xl||(Xl=Object(o.__makeTemplateObject)(["\n outline: 0;\n color: inherit;\n width: 100%;\n text-align: left;\n cursor: pointer;\n padding: 10px 30px 10px ",";\n border-radius: ",";\n background-color: ",";\n display: flex;\n white-space: nowrap;\n align-items: center;\n border: ",";\n border-bottom: ",";\n transition: border-color 0.25s ease;\n\n ","\n\n ."," {\n color: ","\n }\n &:focus {\n box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.45), 0 2px 0 rgba(128, 128, 128, 0.25);\n }\n"],["\n outline: 0;\n color: inherit;\n width: 100%;\n text-align: left;\n cursor: pointer;\n padding: 10px 30px 10px ",";\n border-radius: ",";\n background-color: ",";\n display: flex;\n white-space: nowrap;\n align-items: center;\n border: ",";\n border-bottom: ",";\n transition: border-color 0.25s ease;\n\n ","\n\n ."," {\n color: ","\n }\n &:focus {\n box-shadow: inset 0 2px 2px rgba(0, 0, 0, 0.45), 0 2px 0 rgba(128, 128, 128, 0.25);\n }\n"])),(function(e){return e.inverted?"10px":"20px"}),(function(e){return e.inverted?"0":"4px 4px 0 0"}),(function(e){return e.inverted?"transparent":e.theme.codeBlock.backgroundColor}),(function(e){return e.inverted?"0":"1px solid transparent"}),(function(e){return e.inverted?"1px solid #ccc":"0"}),(function(e){return e.expanded&&!e.inverted&&"border-color: "+e.theme.colors.border.dark+";"||""}),mc,(function(e){return e.inverted?e.theme.colors.text.primary:"#ffffff"})),yc=Se.span.attrs((function(e){return{className:"http-verb "+e.type}}))(Kl||(Kl=Object(o.__makeTemplateObject)(["\n font-size: ",";\n line-height: ",";\n background-color: ",";\n color: #ffffff;\n padding: ",";\n text-transform: uppercase;\n font-family: ",";\n margin: 0;\n"],["\n font-size: ",";\n line-height: ",";\n background-color: ",";\n color: #ffffff;\n padding: ",";\n text-transform: uppercase;\n font-family: ",";\n margin: 0;\n"])),(function(e){return e.compact?"0.8em":"0.929em"}),(function(e){return e.compact?"18px":"20px"}),(function(e){return e.theme.colors.http[e.type]||"#999999"}),(function(e){return e.compact?"2px 8px":"3px 10px"}),(function(e){return e.theme.typography.headings.fontFamily})),vc=Se.div(Jl||(Jl=Object(o.__makeTemplateObject)(["\n position: absolute;\n width: 100%;\n z-index: 100;\n background: #fafafa;\n color: #263238;\n box-sizing: border-box;\n box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.33);\n overflow: hidden;\n border-bottom-left-radius: 4px;\n border-bottom-right-radius: 4px;\n transition: all 0.25s ease;\n visibility: hidden;\n ","\n"],["\n position: absolute;\n width: 100%;\n z-index: 100;\n background: #fafafa;\n color: #263238;\n box-sizing: border-box;\n box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.33);\n overflow: hidden;\n border-bottom-left-radius: 4px;\n border-bottom-right-radius: 4px;\n transition: all 0.25s ease;\n visibility: hidden;\n ","\n"])),(function(e){return e.expanded?"visibility: visible;":"transform: translateY(-50%) scaleY(0);"})),bc=Se.div(Zl||(Zl=Object(o.__makeTemplateObject)(["\n padding: 10px;\n"],["\n padding: 10px;\n"]))),xc=Se.div(ec||(ec=Object(o.__makeTemplateObject)(["\n padding: 5px;\n border: 1px solid #ccc;\n background: #fff;\n word-break: break-all;\n color: ",";\n > span {\n color: ",";\n }\n"],["\n padding: 5px;\n border: 1px solid #ccc;\n background: #fff;\n word-break: break-all;\n color: ",";\n > span {\n color: ",";\n }\n"])),(function(e){return e.theme.colors.primary.main}),(function(e){return e.theme.colors.text.primary})),wc=function(e){function t(t){var n=e.call(this,t)||this;return n.toggle=function(){n.setState({expanded:!n.state.expanded})},n.state={expanded:!1},n}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.operation,r=t.inverted,o=t.hideHostname,a=this.state.expanded;return i.createElement(Fe.Consumer,null,(function(t){return i.createElement(hc,null,i.createElement(gc,{onClick:e.toggle,expanded:a,inverted:r},i.createElement(yc,{type:n.httpVerb,compact:e.props.compact},n.httpVerb),i.createElement(mc,null,n.path),i.createElement(rr,{float:"right",color:r?"black":"white",size:"20px",direction:a?"up":"down",style:{marginRight:"-25px"}})),i.createElement(vc,{expanded:a,"aria-hidden":!a},n.servers.map((function(e){var r,a,s=t.expandDefaultServerVariables?(r=e.url,void 0===(a=e.variables)&&(a={}),r.replace(/(?:{)([\w-.]+)(?:})/g,(function(e,t){return a[t]&&a[t].default||e}))):e.url;return i.createElement(bc,{key:s},i.createElement(ea,{source:e.description||"",compact:!0}),i.createElement(dc,null,i.createElement(xc,null,i.createElement("span",null,o||t.hideHostname?function(e){try{return fe(e).pathname}catch(t){return e}}(s):s),n.path)))}))))}))},t}(i.Component),kc=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.place,n=e.parameters;return n&&n.length?i.createElement("div",{key:t},i.createElement(Sn,null,t," Parameters"),i.createElement(dr,null,i.createElement("tbody",null,ae(n,(function(e,t){return i.createElement(Zs,{key:e.name,isLast:t,field:e,showExamples:!0})}))))):null},t}(i.PureComponent),Oc=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.switchMedia=function(e){var n=e.idx;t.props.content&&t.props.content.activate(n)},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props.content;if(!t||!t.mediaTypes||!t.mediaTypes.length)return null;var n=t.activeMimeIdx,r=t.mediaTypes.map((function(e,t){return{value:e.name,idx:t}}));return i.createElement(i.Fragment,null,i.createElement((function(t){var n=t.children;return e.props.withLabel?i.createElement(Ma,null,i.createElement(La,null,"Content type"),n):n}),null,this.props.renderDropdown({value:r[n].value,options:r,onChange:this.switchMedia,ariaLabel:"Content type"})),this.props.children(t.active))},t=Object(o.__decorate)([us],t)}(i.Component);var Ec=["path","query","cookie","header"],_c=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.orderParams=function(e){var t={};return e.forEach((function(e){var n,r,o;n=t,r=e.in,o=e,n[r]||(n[r]=[]),n[r].push(o)})),t},t.prototype.render=function(){var e=this.props,t=e.body,n=e.parameters,r=void 0===n?[]:n;if(void 0===t&&void 0===r)return null;var o=this.orderParams(r),a=r.length>0?Ec:[],s=t&&t.content,l=t&&t.description;return i.createElement(i.Fragment,null,a.map((function(e){return i.createElement(kc,{key:e,place:e,parameters:o[e]})})),s&&i.createElement(Tc,{content:s,description:l}))},t}(i.PureComponent);function Sc(e){return i.createElement(Sn,{key:"header"},"Request Body schema: ",i.createElement(Bi,Object(o.__assign)({},e)))}function Tc(e){var t=e.content,n=e.description;return i.createElement(Oc,{content:t,renderDropdown:Sc},(function(e){var t=e.schema;return i.createElement(i.Fragment,null,void 0!==n&&i.createElement(ea,{source:n}),i.createElement(ol,{skipReadOnly:!0,key:"schema",schema:t}))}))}var jc,Ac,Cc,Ic,Pc,Rc,Nc,Lc,Mc,Dc,Fc,zc,Uc,Bc,$c,Wc,qc,Hc,Vc,Yc=Se(function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.title,n=e.type,r=e.empty,o=e.code,a=e.opened,s=e.className,l=e.onClick;return i.createElement("button",{className:s,onClick:!r&&l||void 0,"aria-expanded":a,disabled:r},!r&&i.createElement(rr,{size:"1.5em",color:n,direction:a?"down":"right",float:"left"}),i.createElement("strong",null,o," "),i.createElement(ea,{compact:!0,inline:!0,source:t}))},t}(i.PureComponent))(jc||(jc=Object(o.__makeTemplateObject)(["\n display: block;\n border: 0;\n width: 100%;\n text-align: left;\n padding: 10px;\n border-radius: 2px;\n margin-bottom: 4px;\n line-height: 1.5em;\n background-color: #f2f2f2;\n cursor: pointer;\n\n color: ",";\n background-color: ",";\n &:focus {\n outline: auto;\n outline-color: ",";\n }\n ",";\n"],["\n display: block;\n border: 0;\n width: 100%;\n text-align: left;\n padding: 10px;\n border-radius: 2px;\n margin-bottom: 4px;\n line-height: 1.5em;\n background-color: #f2f2f2;\n cursor: pointer;\n\n color: ",";\n background-color: ",";\n &:focus {\n outline: auto;\n outline-color: ",";\n }\n ",";\n"])),(function(e){return e.theme.colors.responses[e.type].color}),(function(e){return e.theme.colors.responses[e.type].backgroundColor}),(function(e){return e.theme.colors.responses[e.type].color}),(function(e){return e.empty?'\ncursor: default;\n&::before {\n content: "—";\n font-weight: bold;\n width: 1.5em;\n text-align: center;\n display: inline-block;\n}\n&:focus {\n outline: 0;\n}\n':""})),Gc=Se.div(Ac||(Ac=Object(o.__makeTemplateObject)(["\n padding: 10px;\n"],["\n padding: 10px;\n"]))),Qc=Se(Sn.withComponent("caption"))(Cc||(Cc=Object(o.__makeTemplateObject)(["\n text-align: left;\n margin-top: 1em;\n caption-side: top;\n"],["\n text-align: left;\n margin-top: 1em;\n caption-side: top;\n"]))),Xc=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.headers;return void 0===e||0===e.length?null:i.createElement(dr,null,i.createElement(Qc,null," Response Headers "),i.createElement("tbody",null,ae(e,(function(e,t){return i.createElement(Zs,{isLast:t,key:e.name,field:e,showExamples:!0})}))))},t}(i.PureComponent),Kc=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderDropdown=function(e){return i.createElement(Sn,{key:"header"},"Response Schema: ",i.createElement(Bi,Object(o.__assign)({},e)))},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.response,t=e.description,n=e.headers,r=e.content;return i.createElement(i.Fragment,null,t&&i.createElement(ea,{source:t}),i.createElement(Xc,{headers:n}),i.createElement(Oc,{content:r,renderDropdown:this.renderDropdown},(function(e){var t=e.schema;return i.createElement(ol,{skipWriteOnly:!0,key:"schema",schema:t})})))},t}(i.PureComponent),Jc=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.toggle=function(){t.props.response.toggle()},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.response,t=e.headers,n=e.type,r=e.summary,o=e.description,a=e.code,s=e.expanded,l=e.content,c=void 0===l?[]:l.mediaTypes.filter((function(e){return void 0!==e.schema})),u=0===t.length&&0===c.length&&!o;return i.createElement("div",null,i.createElement(Yc,{onClick:this.toggle,type:n,empty:u,title:r||"",code:a,opened:s}),s&&!u&&i.createElement(Gc,null,i.createElement(Kc,{response:this.props.response})))},t=Object(o.__decorate)([us],t)}(i.Component),Zc=Se.h3(Ic||(Ic=Object(o.__makeTemplateObject)(["\n font-size: 1.3em;\n padding: 0.2em 0;\n margin: 3em 0 1.1em;\n color: ",";\n font-weight: normal;\n"],["\n font-size: 1.3em;\n padding: 0.2em 0;\n margin: 3em 0 1.1em;\n color: ",";\n font-weight: normal;\n"])),(function(e){return e.theme.colors.text.primary})),eu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.responses,n=e.isCallback;return t&&0!==t.length?i.createElement("div",null,i.createElement(Zc,null,n?"Callback responses":"Responses"),t.map((function(e){return i.createElement(Jc,{key:e.code,response:e})}))):null},t}(i.PureComponent),tu=Se.code(Pc||(Pc=Object(o.__makeTemplateObject)(["\n font-size: ",";\n font-family: ",";\n border: 1px solid ",";\n margin: 0 3px;\n padding: 0.2em;\n display: inline-block;\n line-height: 1;\n\n &:after {\n content: ',';\n }\n &:last-child:after {\n content: none;\n }\n"],["\n font-size: ",";\n font-family: ",";\n border: 1px solid ",";\n margin: 0 3px;\n padding: 0.2em;\n display: inline-block;\n line-height: 1;\n\n &:after {\n content: ',';\n }\n &:last-child:after {\n content: none;\n }\n"])),(function(e){return e.theme.typography.code.fontSize}),(function(e){return e.theme.typography.code.fontFamily}),(function(e){return e.theme.colors.border.dark})),nu=Se.span(Rc||(Rc=Object(o.__makeTemplateObject)(["\n &:after {\n content: ' AND ';\n font-weight: bold;\n }\n\n &:last-child:after {\n content: none;\n }\n\n ",";\n"],["\n &:after {\n content: ' AND ';\n font-weight: bold;\n }\n\n &:last-child:after {\n content: none;\n }\n\n ",";\n"])),Hi),ru=Se.span(Nc||(Nc=Object(o.__makeTemplateObject)(["\n &:before {\n content: '( ';\n font-weight: bold;\n }\n &:after {\n content: ' ) OR ';\n font-weight: bold;\n }\n &:last-child:after {\n content: ' )';\n }\n\n &:only-child:before,\n &:only-child:after {\n content: none;\n }\n\n ",";\n"],["\n &:before {\n content: '( ';\n font-weight: bold;\n }\n &:after {\n content: ' ) OR ';\n font-weight: bold;\n }\n &:last-child:after {\n content: ' )';\n }\n\n &:only-child:before,\n &:only-child:after {\n content: none;\n }\n\n ",";\n"])),Hi),ou=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.security;return i.createElement(ru,null,e.schemes.map((function(e){return i.createElement(nu,{key:e.id},i.createElement(Nn,{to:e.sectionId},e.id),e.scopes.length>0&&" (",e.scopes.map((function(e){return i.createElement(tu,{key:e},e)})),e.scopes.length>0&&") ")})))},t}(i.PureComponent),iu=Se.div(Lc||(Lc=Object(o.__makeTemplateObject)(["\n flex: 1;\n"],["\n flex: 1;\n"]))),au=Se.div(Mc||(Mc=Object(o.__makeTemplateObject)(["\n width: ",";\n"],["\n width: ",";\n"])),(function(e){return e.theme.schema.defaultDetailsWidth})),su=Se(Sn)(Dc||(Dc=Object(o.__makeTemplateObject)(["\n display: inline-block;\n margin: 0;\n"],["\n display: inline-block;\n margin: 0;\n"]))),lu=Se.div(Fc||(Fc=Object(o.__makeTemplateObject)(["\n width: 100%;\n display: flex;\n margin: 1em 0;\n"],["\n width: 100%;\n display: flex;\n margin: 1em 0;\n"]))),cu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.securities;return e.length?i.createElement(lu,null,i.createElement(iu,null,i.createElement(su,null,"Authorizations: ")),i.createElement(au,null,e.map((function(e,t){return i.createElement(ou,{key:t,security:e})})))):null},t}(i.PureComponent),uu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.operation,t=e.description,n=e.externalDocs,r=!(!t&&!n);return i.createElement(fc,null,r&&i.createElement(pu,null,void 0!==t&&i.createElement(ea,{source:t}),n&&i.createElement(Ws,{externalDocs:n})),i.createElement(wc,{operation:this.props.operation,inverted:!0,compact:!0}),i.createElement(Ys,{extensions:e.extensions}),i.createElement(cu,{securities:e.security}),i.createElement(_c,{parameters:e.parameters,body:e.requestBody}),i.createElement(eu,{responses:e.responses,isCallback:e.isCallback}))},t=Object(o.__decorate)([us],t)}(i.Component),pu=Se.div(zc||(zc=Object(o.__makeTemplateObject)(["\n margin-bottom: ","px;\n"],["\n margin-bottom: ","px;\n"])),(function(e){return 3*e.theme.spacing.unit})),fu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.toggle=function(){t.props.callbackOperation.toggle()},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.callbackOperation,t=e.name,n=e.expanded,r=e.httpVerb,o=e.deprecated;return i.createElement(i.Fragment,null,i.createElement(pc,{onClick:this.toggle,name:t,opened:n,httpVerb:r,deprecated:o}),n&&i.createElement(uu,{operation:this.props.callbackOperation}))},t=Object(o.__decorate)([us],t)}(i.Component),du=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.callbacks;return e&&0!==e.length?i.createElement("div",null,i.createElement(hu,null," Callbacks "),e.map((function(e){return e.operations.map((function(t,n){return i.createElement(fu,{key:e.name+"_"+n,callbackOperation:t})}))}))):null},t}(i.PureComponent),hu=Se.h3(Uc||(Uc=Object(o.__makeTemplateObject)(["\n font-size: 1.3em;\n padding: 0.2em 0;\n margin: 3em 0 1.1em;\n color: ",";\n font-weight: normal;\n"],["\n font-size: 1.3em;\n padding: 0.2em 0;\n margin: 3em 0 1.1em;\n color: ",";\n font-weight: normal;\n"])),(function(e){return e.theme.colors.text.primary})),mu=function(e){function t(t){var n=e.call(this,t)||this;return n.switchItem=function(e){var t=e.idx;n.props.items&&n.setState({activeItemIdx:t})},n.state={activeItemIdx:0},n}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props.items;if(!t||!t.length)return null;return i.createElement(i.Fragment,null,i.createElement((function(t){var n=t.children;return e.props.label?i.createElement(Ma,null,i.createElement(La,null,e.props.label),n):n}),null,this.props.renderDropdown({value:this.props.options[this.state.activeItemIdx].value,options:this.props.options,onChange:this.switchItem,ariaLabel:this.props.label||"Callback"})),this.props.children(t[this.state.activeItemIdx]))},t=Object(o.__decorate)([us],t)}(i.Component),gu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderDropdown=function(e){return i.createElement(Bi,Object(o.__assign)({Label:Na,Dropdown:Da},e))},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props.content;return void 0===t?null:i.createElement(Oc,{content:t,renderDropdown:this.renderDropdown,withLabel:!0},(function(t){return i.createElement(za,{key:"samples",mediaType:t,renderDropdown:e.renderDropdown})}))},t=Object(o.__decorate)([us],t)}(i.Component),yu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.callback.codeSamples.find((function(e){return Qt(e)}));return e?i.createElement(vu,null,i.createElement(gu,{content:e.requestBodyContent})):null},t}(i.Component),vu=Se.div(Bc||(Bc=Object(o.__makeTemplateObject)(["\n margin-top: 15px;\n"],["\n margin-top: 15px;\n"]))),bu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.renderDropdown=function(e){return i.createElement(Bi,Object(o.__assign)({Label:Na,Dropdown:Da},e))},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props.callbacks;if(!t||0===t.length)return null;var n=t.map((function(e){return e.operations.map((function(e){return e}))})).reduce((function(e,t){return e.concat(t)}),[]);if(!n.some((function(e){return e.codeSamples.length>0})))return null;var r=n.map((function(e,t){return{value:e.httpVerb.toUpperCase()+": "+e.name,idx:t}}));return i.createElement("div",null,i.createElement(_n,null," Callback payload samples "),i.createElement(xu,null,i.createElement(mu,{items:n,renderDropdown:this.renderDropdown,label:"Callback",options:r},(function(t){return i.createElement(yu,{key:"callbackPayloadSample",callback:t,renderDropdown:e.renderDropdown})}))))},t.contextType=Fe,t=Object(o.__decorate)([us],t)}(i.Component),xu=Se.div($c||($c=Object(o.__makeTemplateObject)(["\n background: ",";\n padding: ","px;\n"],["\n background: ",";\n padding: ","px;\n"])),(function(e){return e.theme.codeBlock.backgroundColor}),(function(e){return 4*e.theme.spacing.unit})),wu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.operation.codeSamples,t=e.length>0,n=1===e.length&&this.context.hideSingleRequestSampleTab;return t&&i.createElement("div",null,i.createElement(_n,null," Request samples "),i.createElement($o,{defaultIndex:0},i.createElement(Io,{hidden:n},e.map((function(e){return i.createElement(Ro,{key:e.lang+"_"+(e.label||"")},void 0!==e.label?e.label:e.lang)}))),e.map((function(e){return i.createElement(Lo,{key:e.lang+"_"+(e.label||"")},Qt(e)?i.createElement("div",null,i.createElement(gu,{content:e.requestBodyContent})):i.createElement(Ea,{lang:e.lang,source:e.source}))}))))||null},t.contextType=Fe,t=Object(o.__decorate)([us],t)}(i.Component),ku=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.operation.responses.filter((function(e){return e.content&&e.content.hasSample}));return e.length>0&&i.createElement("div",null,i.createElement(_n,null," Response samples "),i.createElement($o,{defaultIndex:0},i.createElement(Io,null,e.map((function(e){return i.createElement(Ro,{className:"tab-"+e.type,key:e.code},e.code)}))),e.map((function(e){return i.createElement(Lo,{key:e.code},i.createElement("div",null,i.createElement(gu,{content:e.content})))}))))||null},t=Object(o.__decorate)([us],t)}(i.Component),Ou=Se(xn)(Wc||(Wc=Object(o.__makeTemplateObject)(["\n backface-visibility: hidden;\n contain: content;\n overflow: hidden;\n"],["\n backface-visibility: hidden;\n contain: content;\n overflow: hidden;\n"]))),Eu=Se.div(qc||(qc=Object(o.__makeTemplateObject)(["\n margin-bottom: ","px;\n"],["\n margin-bottom: ","px;\n"])),(function(e){return 6*e.theme.spacing.unit})),_u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.operation,t=e.name,n=e.description,r=e.deprecated,o=e.externalDocs,a=e.isWebhook,s=!(!n&&!o);return i.createElement(Fe.Consumer,null,(function(l){return i.createElement(Ou,null,i.createElement(gn,null,i.createElement(En,null,i.createElement(Mn,{to:e.id}),t," ",r&&i.createElement(or,{type:"warning"}," Deprecated "),a&&i.createElement(or,{type:"primary"}," Webhook ")),l.pathInMiddlePanel&&!a&&i.createElement(wc,{operation:e,inverted:!0}),s&&i.createElement(Eu,null,void 0!==n&&i.createElement(ea,{source:n}),o&&i.createElement(Ws,{externalDocs:o})),i.createElement(Ys,{extensions:e.extensions}),i.createElement(cu,{securities:e.security}),i.createElement(_c,{parameters:e.parameters,body:e.requestBody}),i.createElement(eu,{responses:e.responses}),i.createElement(du,{callbacks:e.callbacks})),i.createElement(bn,null,!l.pathInMiddlePanel&&!a&&i.createElement(wc,{operation:e}),i.createElement(wu,{operation:e}),i.createElement(ku,{operation:e}),i.createElement(bu,{callbacks:e.callbacks})))}))},t=Object(o.__decorate)([us],t)}(i.Component),Su=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.items;return 0===e.length?null:e.map((function(e){return i.createElement(Tu,{key:e.id,item:e})}))},t=Object(o.__decorate)([us],t)}(i.Component),Tu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e,t=this.props.item;switch(t.type){case"group":e=null;break;case"tag":case"section":e=i.createElement(Au,Object(o.__assign)({},this.props));break;case"operation":e=i.createElement(Cu,{item:t});break;default:e=i.createElement(Au,Object(o.__assign)({},this.props))}return i.createElement(i.Fragment,null,e&&i.createElement(yn,{id:t.id,underlined:"operation"===t.type},e),t.items&&i.createElement(Su,{items:t.items}))},t=Object(o.__decorate)([us],t)}(i.Component),ju=function(e){return i.createElement(gn,{compact:!0},e)},Au=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.item,t=e.name,n=e.description,r=e.externalDocs,o=2===e.level?En:On;return i.createElement(i.Fragment,null,i.createElement(xn,null,i.createElement(gn,{compact:!1},i.createElement(o,null,i.createElement(Mn,{to:this.props.item.id}),t))),i.createElement(Cl,{source:n||"",htmlWrap:ju}),r&&i.createElement(xn,null,i.createElement(gn,null,i.createElement(Ws,{externalDocs:r}))))},t=Object(o.__decorate)([us],t)}(i.Component),Cu=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){return i.createElement(_u,{operation:this.props.item})},t=Object(o.__decorate)([us],t)}(i.Component),Iu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.ref=i.createRef(),t.activate=function(e){t.props.onActivate(t.props.item),e.stopPropagation()},t}return Object(o.__extends)(t,e),t.prototype.componentDidMount=function(){this.scrollIntoViewIfActive()},t.prototype.componentDidUpdate=function(){this.scrollIntoViewIfActive()},t.prototype.scrollIntoViewIfActive=function(){this.props.item.active&&this.ref.current&&this.ref.current.scrollIntoViewIfNeeded()},t.prototype.render=function(){var e=this.props,t=e.item,n=e.withoutChildren;return i.createElement(nc,{onClick:this.activate,depth:t.depth,"data-item-id":t.id},"operation"===t.type?i.createElement(Pu,Object(o.__assign)({},this.props,{item:t})):i.createElement(oc,{depth:t.depth,active:t.active,type:t.type,ref:this.ref},i.createElement(ic,{title:t.name},t.name,this.props.children),t.depth>0&&t.items.length>0&&i.createElement(rr,{float:"right",direction:t.expanded?"down":"right"})||null),!n&&t.items&&t.items.length>0&&i.createElement(Ru,{expanded:t.expanded,items:t.items,onActivate:this.props.onActivate}))},t=Object(o.__decorate)([us],t)}(i.Component),Pu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.ref=i.createRef(),t}return Object(o.__extends)(t,e),t.prototype.componentDidUpdate=function(){this.props.item.active&&this.ref.current&&this.ref.current.scrollIntoViewIfNeeded()},t.prototype.render=function(){var e=this.props.item;return i.createElement(oc,{depth:e.depth,active:e.active,deprecated:e.deprecated,ref:this.ref},e.isWebhook?i.createElement(Pl,{type:"hook"},he("webhook")):i.createElement(Pl,{type:e.httpVerb},yt(e.httpVerb)),i.createElement(ic,{width:"calc(100% - 38px)"},e.name,this.props.children))},t=Object(o.__decorate)([us],t)}(i.Component),Ru=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this,t=this.props,n=t.items,r=t.root,a=t.className,s=null==this.props.expanded||this.props.expanded;return i.createElement(tc,Object(o.__assign)({className:a,style:this.props.style,expanded:s},r?{role:"navigation"}:{}),n.map((function(t,n){return i.createElement(Iu,{key:n,item:t,onActivate:e.props.onActivate})})))},t=Object(o.__decorate)([us],t)}(i.Component),Nu=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.activate=function(e){if(e&&e.active&&t.context.menuToggle)return e.expanded?e.collapse():e.expand();t.props.menu.activateAndScroll(e,!0),setTimeout((function(){t._updateScroll&&t._updateScroll()}))},t.saveScrollUpdate=function(e){t._updateScroll=e},t}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props.menu;return i.createElement(ji,{updateFn:this.saveScrollUpdate,className:this.props.className,options:{wheelPropagation:!1}},i.createElement(Ru,{items:e.items,onActivate:this.activate,root:!0}),i.createElement(ac,null,i.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:"https://github.com/Redocly/redoc"},"Documentation Powered by ReDoc")))},t.contextType=Fe,t=Object(o.__decorate)([us],t)}(i.Component),Lu=function(e){var t=e.open?8:-4;return i.createElement(Du,null,i.createElement(Mu,{size:15,style:{transform:"translate(2px, "+t+"px) rotate(180deg)",transition:"transform 0.2s ease"}}),i.createElement(Mu,{size:15,style:{transform:"translate(2px, "+(0-t)+"px)",transition:"transform 0.2s ease"}}))},Mu=function(e){var t=e.size,n=void 0===t?10:t,r=e.className,o=void 0===r?"":r,a=e.style;return i.createElement("svg",{className:o,style:a||{},viewBox:"0 0 926.23699 573.74994",version:"1.1",x:"0px",y:"0px",width:n,height:n},i.createElement("g",{transform:"translate(904.92214,-879.1482)"},i.createElement("path",{d:"\n m -673.67664,1221.6502 -231.2455,-231.24803 55.6165,\n -55.627 c 30.5891,-30.59485 56.1806,-55.627 56.8701,-55.627 0.6894,\n 0 79.8637,78.60862 175.9427,174.68583 l 174.6892,174.6858 174.6892,\n -174.6858 c 96.079,-96.07721 175.253196,-174.68583 175.942696,\n -174.68583 0.6895,0 26.281,25.03215 56.8701,\n 55.627 l 55.6165,55.627 -231.245496,231.24803 c -127.185,127.1864\n -231.5279,231.248 -231.873,231.248 -0.3451,0 -104.688,\n -104.0616 -231.873,-231.248 z\n ",fill:"currentColor"})))},Du=Se.div(Hc||(Hc=Object(o.__makeTemplateObject)(["\n user-select: none;\n width: 20px;\n height: 20px;\n align-self: center;\n display: flex;\n flex-direction: column;\n color: ",";\n"],["\n user-select: none;\n width: 20px;\n height: 20px;\n align-self: center;\n display: flex;\n flex-direction: column;\n color: ",";\n"])),(function(e){return e.theme.colors.primary.main}));te&&(Vc=n(316));var Fu,zu,Uu,Bu,$u,Wu,qu,Hu,Vu,Yu,Gu,Qu,Xu,Ku,Ju=Vc&&Vc(),Zu=Se.div(zu||(zu=Object(o.__makeTemplateObject)(["\n width: ",";\n background-color: ",";\n overflow: hidden;\n display: flex;\n flex-direction: column;\n\n backface-visibility: hidden;\n /* contain: strict; TODO: breaks layout since Chrome 80*/\n\n height: 100vh;\n position: sticky;\n position: -webkit-sticky;\n top: 0;\n\n ",";\n\n @media print {\n display: none;\n }\n"],["\n width: ",";\n background-color: ",";\n overflow: hidden;\n display: flex;\n flex-direction: column;\n\n backface-visibility: hidden;\n /* contain: strict; TODO: breaks layout since Chrome 80*/\n\n height: 100vh;\n position: sticky;\n position: -webkit-sticky;\n top: 0;\n\n ",";\n\n @media print {\n display: none;\n }\n"])),(function(e){return e.theme.sidebar.width}),(function(e){return e.theme.sidebar.backgroundColor}),_e("small")(Fu||(Fu=Object(o.__makeTemplateObject)(["\n position: fixed;\n z-index: 20;\n width: 100%;\n background: ",";\n display: ",";\n "],["\n position: fixed;\n z-index: 20;\n width: 100%;\n background: ",";\n display: ",";\n "])),(function(e){return e.theme.sidebar.backgroundColor}),(function(e){return e.open?"flex":"none"}))),ep=Se.div(Bu||(Bu=Object(o.__makeTemplateObject)(["\n outline: none;\n user-select: none;\n background-color: #f2f2f2;\n color: ",";\n display: none;\n cursor: pointer;\n position: fixed;\n right: 20px;\n z-index: 100;\n border-radius: 50%;\n box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);\n ",";\n\n bottom: 44px;\n\n width: 60px;\n height: 60px;\n padding: 0 20px;\n\n @media print {\n display: none;\n }\n"],["\n outline: none;\n user-select: none;\n background-color: #f2f2f2;\n color: ",";\n display: none;\n cursor: pointer;\n position: fixed;\n right: 20px;\n z-index: 100;\n border-radius: 50%;\n box-shadow: 0 0 20px rgba(0, 0, 0, 0.3);\n ",";\n\n bottom: 44px;\n\n width: 60px;\n height: 60px;\n padding: 0 20px;\n\n @media print {\n display: none;\n }\n"])),(function(e){return e.theme.colors.primary.main}),_e("small")(Uu||(Uu=Object(o.__makeTemplateObject)(["\n display: flex;\n "],["\n display: flex;\n "])))),tp=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.state={offsetTop:"0px"},t.toggleNavMenu=function(){t.props.menu.toggleSidebar()},t}return Object(o.__extends)(t,e),t.prototype.componentDidMount=function(){Ju&&Ju.add(this.stickyElement),this.setState({offsetTop:this.getScrollYOffset(this.context)})},t.prototype.componentWillUnmount=function(){Ju&&Ju.remove(this.stickyElement)},t.prototype.getScrollYOffset=function(e){return(void 0!==this.props.scrollYOffset?ye.normalizeScrollYOffset(this.props.scrollYOffset)():e.scrollYOffset())+"px"},t.prototype.render=function(){var e=this,t=this.props.menu.sideBarOpened,n=this.state.offsetTop;return i.createElement(i.Fragment,null,i.createElement(Zu,{open:t,className:this.props.className,style:{top:n,height:"calc(100vh - "+n+")"},ref:function(t){e.stickyElement=t}},this.props.children),i.createElement(ep,{onClick:this.toggleNavMenu},i.createElement(Lu,{open:t})))},t.contextType=Fe,t=Object(o.__decorate)([us],t)}(i.Component),np=Se.div($u||($u=Object(o.__makeTemplateObject)(["\n ",";\n"],["\n ",";\n"])),(function(e){var t=e.theme;return"\n font-family: "+t.typography.fontFamily+";\n font-size: "+t.typography.fontSize+";\n font-weight: "+t.typography.fontWeightRegular+";\n line-height: "+t.typography.lineHeight+";\n color: "+t.colors.text.primary+";\n display: flex;\n position: relative;\n text-align: left;\n\n -webkit-font-smoothing: "+t.typography.smoothing+";\n font-smoothing: "+t.typography.smoothing+";\n "+(t.typography.optimizeSpeed?"text-rendering: optimizeSpeed !important":"")+";\n\n tap-highlight-color: rgba(0, 0, 0, 0);\n text-size-adjust: 100%;\n\n * {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(255, 255, 255, 0);\n }\n"})),rp=Se.div(qu||(qu=Object(o.__makeTemplateObject)(["\n z-index: 1;\n position: relative;\n overflow: hidden;\n width: calc(100% - ",");\n ",";\n\n contain: layout;\n"],["\n z-index: 1;\n position: relative;\n overflow: hidden;\n width: calc(100% - ",");\n ",";\n\n contain: layout;\n"])),(function(e){return e.theme.sidebar.width}),_e("small",!0)(Wu||(Wu=Object(o.__makeTemplateObject)(["\n width: 100%;\n "],["\n width: 100%;\n "])))),op=Se.div(Vu||(Vu=Object(o.__makeTemplateObject)(["\n background: ",";\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n width: ",";\n ",";\n"],["\n background: ",";\n position: absolute;\n top: 0;\n bottom: 0;\n right: 0;\n width: ",";\n ",";\n"])),(function(e){return e.theme.rightPanel.backgroundColor}),(function(e){var t=e.theme;if(t.rightPanel.width.endsWith("%")){var n=parseInt(t.rightPanel.width,10);return"calc((100% - "+t.sidebar.width+") * "+n/100+")"}return t.rightPanel.width}),_e("medium",!0)(Hu||(Hu=Object(o.__makeTemplateObject)(["\n display: none;\n "],["\n display: none;\n "])))),ip=Se.div(Yu||(Yu=Object(o.__makeTemplateObject)(["\n padding: 5px 0;\n"],["\n padding: 5px 0;\n"]))),ap=Se.input.attrs((function(){return{className:"search-input"}}))(Gu||(Gu=Object(o.__makeTemplateObject)(["\n width: calc(100% - ","px);\n box-sizing: border-box;\n margin: 0 ","px;\n padding: 5px ","px 5px\n ","px;\n border: 0;\n border-bottom: 1px solid\n ",";\n font-family: ",";\n font-weight: bold;\n font-size: 13px;\n color: ",";\n background-color: transparent;\n outline: none;\n"],["\n width: calc(100% - ","px);\n box-sizing: border-box;\n margin: 0 ","px;\n padding: 5px ","px 5px\n ","px;\n border: 0;\n border-bottom: 1px solid\n ",";\n font-family: ",";\n font-weight: bold;\n font-size: 13px;\n color: ",";\n background-color: transparent;\n outline: none;\n"])),(function(e){return 8*e.theme.spacing.unit}),(function(e){return 4*e.theme.spacing.unit}),(function(e){return 2*e.theme.spacing.unit}),(function(e){return 4*e.theme.spacing.unit}),(function(e){var t=e.theme;return(V(t.sidebar.backgroundColor)>.5?W:Q)(.1,t.sidebar.backgroundColor)}),(function(e){return e.theme.typography.fontFamily}),(function(e){return e.theme.sidebar.textColor})),sp=Se((function(e){return i.createElement("svg",{className:e.className,version:"1.1",viewBox:"0 0 1000 1000",x:"0px",xmlns:"http://www.w3.org/2000/svg",y:"0px"},i.createElement("path",{d:"M968.2,849.4L667.3,549c83.9-136.5,66.7-317.4-51.7-435.6C477.1-25,252.5-25,113.9,113.4c-138.5,138.3-138.5,362.6,0,501C219.2,730.1,413.2,743,547.6,666.5l301.9,301.4c43.6,43.6,76.9,14.9,104.2-12.4C981,928.3,1011.8,893,968.2,849.4z M524.5,522c-88.9,88.7-233,88.7-321.8,0c-88.9-88.7-88.9-232.6,0-321.3c88.9-88.7,233-88.7,321.8,0C613.4,289.4,613.4,433.3,524.5,522z"}))})).attrs({className:"search-icon"})(Qu||(Qu=Object(o.__makeTemplateObject)(["\n position: absolute;\n left: ","px;\n height: 1.8em;\n width: 0.9em;\n\n path {\n fill: ",";\n }\n"],["\n position: absolute;\n left: ","px;\n height: 1.8em;\n width: 0.9em;\n\n path {\n fill: ",";\n }\n"])),(function(e){return 4*e.theme.spacing.unit}),(function(e){return e.theme.sidebar.textColor})),lp=Se.div(Xu||(Xu=Object(o.__makeTemplateObject)(["\n padding: ","px 0;\n background-color: ","};\n color: ",";\n min-height: 150px;\n max-height: 250px;\n border-top: ","};\n border-bottom: ","};\n margin-top: 10px;\n line-height: 1.4;\n font-size: 0.9em;\n\n "," {\n padding-top: 6px;\n padding-bottom: 6px;\n\n &:hover,\n &.active {\n background-color: ",";\n }\n\n > svg {\n display: none;\n }\n }\n"],["\n padding: ","px 0;\n background-color: ","};\n color: ",";\n min-height: 150px;\n max-height: 250px;\n border-top: ","};\n border-bottom: ","};\n margin-top: 10px;\n line-height: 1.4;\n font-size: 0.9em;\n\n "," {\n padding-top: 6px;\n padding-bottom: 6px;\n\n &:hover,\n &.active {\n background-color: ",";\n }\n\n > svg {\n display: none;\n }\n }\n"])),(function(e){return e.theme.spacing.unit}),(function(e){var t=e.theme;return W(.05,t.sidebar.backgroundColor)}),(function(e){return e.theme.sidebar.textColor}),(function(e){var t=e.theme;return W(.1,t.sidebar.backgroundColor)}),(function(e){var t=e.theme;return W(.1,t.sidebar.backgroundColor)}),oc,(function(e){var t=e.theme;return W(.1,t.sidebar.backgroundColor)})),cp=Se.i(Ku||(Ku=Object(o.__makeTemplateObject)(["\n position: absolute;\n display: inline-block;\n width: ","px;\n text-align: center;\n right: ","px;\n line-height: 2em;\n vertical-align: middle;\n margin-right: 2px;\n cursor: pointer;\n font-style: normal;\n color: '#666';\n"],["\n position: absolute;\n display: inline-block;\n width: ","px;\n text-align: center;\n right: ","px;\n line-height: 2em;\n vertical-align: middle;\n margin-right: 2px;\n cursor: pointer;\n font-style: normal;\n color: '#666';\n"])),(function(e){return 2*e.theme.spacing.unit}),(function(e){return 4*e.theme.spacing.unit})),up=function(e){function t(t){var n=e.call(this,t)||this;return n.activeItemRef=null,n.clear=function(){n.setState({results:[],term:"",activeItemIdx:-1}),n.props.marker.unmark()},n.handleKeyDown=function(e){if(27===e.keyCode&&n.clear(),40===e.keyCode&&(n.setState({activeItemIdx:Math.min(n.state.activeItemIdx+1,n.state.results.length-1)}),e.preventDefault()),38===e.keyCode&&(n.setState({activeItemIdx:Math.max(0,n.state.activeItemIdx-1)}),e.preventDefault()),13===e.keyCode){var t=n.state.results[n.state.activeItemIdx];if(t){var r=n.props.getItemById(t.meta);r&&n.props.onActivate(r)}}},n.search=function(e){var t=e.target.value;t.length<3?n.clearResults(t):n.setState({term:t},(function(){return n.searchCallback(n.state.term)}))},n.state={results:[],term:"",activeItemIdx:-1},n}return Object(o.__extends)(t,e),t.prototype.clearResults=function(e){this.setState({results:[],term:e}),this.props.marker.unmark()},t.prototype.setResults=function(e,t){this.setState({results:e}),this.props.marker.mark(t)},t.prototype.searchCallback=function(e){var t=this;this.props.search.search(e).then((function(n){t.setResults(n,e)}))},t.prototype.render=function(){var e=this,t=this.state.activeItemIdx,n=this.state.results.map((function(t){return{item:e.props.getItemById(t.meta),score:t.score}}));return n.sort((function(e,t){return t.score-e.score})),i.createElement(ip,{role:"search"},this.state.term&&i.createElement(cp,{onClick:this.clear},"×"),i.createElement(sp,null),i.createElement(ap,{value:this.state.term,onKeyDown:this.handleKeyDown,placeholder:"Search...",type:"text",onChange:this.search}),n.length>0&&i.createElement(ji,{options:{wheelPropagation:!1}},i.createElement(lp,{"data-role":"search:results"},n.map((function(n,r){return i.createElement(Iu,{item:Object.create(n.item,{active:{value:r===t}}),onActivate:e.props.onActivate,withoutChildren:!0,key:n.item.id,"data-role":"search:result"})})))))},Object(o.__decorate)([Ve.bind,Object(Ve.debounce)(400)],t.prototype,"searchCallback",null),t}(i.PureComponent),pp=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.componentDidMount=function(){this.props.store.onDidMount()},t.prototype.componentWillUnmount=function(){this.props.store.dispose()},t.prototype.render=function(){var e=this.props.store,t=e.spec,n=e.menu,r=e.options,o=e.search,a=e.marker,s=this.props.store;return i.createElement(Ee,{theme:r.theme},i.createElement(An,{value:this.props.store},i.createElement(ze,{value:r},i.createElement(np,{className:"redoc-wrap"},i.createElement(tp,{menu:n,className:"menu-content"},i.createElement(Al,{info:t.info}),!r.disableSearch&&i.createElement(up,{search:o,marker:a,getItemById:n.getItemById,onActivate:n.activateAndScroll})||null,i.createElement(Nu,{menu:n})),i.createElement(rp,{className:"api-content"},i.createElement(_l,{store:s}),i.createElement(Su,{items:n.items})),i.createElement(op,null)))))},t.propTypes={store:l.instanceOf(vl).isRequired},t}(i.Component),fp=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return Object(o.__extends)(t,e),t.prototype.render=function(){var e=this.props,t=e.spec,n=e.specUrl,r=e.options,o=void 0===r?{}:r,a=e.onLoaded,s=void 0!==o.hideLoading,l=new ye(o);return i.createElement(Re,null,i.createElement(In,{spec:t,specUrl:n,options:o,onLoaded:a},(function(e){var t=e.loading,n=e.store;return t?s?null:i.createElement(De,{color:l.theme.colors.primary.main}):i.createElement(pp,{store:n})})))},t.propTypes={spec:function(e,t,n){return e.spec||e.specUrl?null:new Error("One of props 'spec' or 'specUrl' was not specified in '"+n+"'.")},specUrl:function(e,t,n){return e.spec||e.specUrl?null:new Error("One of props 'spec' or 'specUrl' was not specified in '"+n+"'.")},options:l.any,onLoaded:l.any},t}(i.PureComponent),dp="2.0.0-rc.40",hp="17b9873";function mp(e){var t=function(e){for(var t={},n=e.attributes,r=0;r tag is not found on the page');var a,l;"string"==typeof e?a=e:"object"==typeof e&&(l=e),Object(s.render)(i.createElement(fp,{spec:l,onLoaded:r,specUrl:a,options:Object(o.__assign)(Object(o.__assign)({},t),mp(n))},["Loading..."]),n)}function yp(e,t,n){void 0===t&&(t=ne("redoc")),kt();var r=vl.fromJS(e);Ot(),setTimeout((function(){kt(),Object(s.hydrate)(i.createElement(pp,{store:r}),t,n),Ot()}),0)}!function(){var e=ne("redoc");if(e){var t=e.getAttribute("spec-url");t&&gp(t,{},e)}}()}])})); +//# sourceMappingURL=redoc.standalone.js.map -

    CATMAID API

    Download OpenAPI specification:Download

    api-token-auth

    api-token-auth_create

    Request Body schema: application/json
    username
    required
    string

    Valid username for authentication

    -
    password
    required
    string

    Valid password for authentication

    -

    Responses

    201
    post http://localhost:8000/api-token-auth/
    http://localhost:8000http://localhost:8000/api-token-auth/

    Request samples

    Content type
    application/json
    Copy
    Expand all Collapse all
    {
    • "username": "string",
    • "password": "string"
    }

    apis

    apis_list

    Responses

    200
    get http://localhost:8000/apis/
    http://localhost:8000http://localhost:8000/apis/

    client

    client_datastores_list

    Responses

    200
    get http://localhost:8000/client/datastores/
    http://localhost:8000http://localhost:8000/client/datastores/

    client_datastores_create

    Responses

    201
    post http://localhost:8000/client/datastores/
    http://localhost:8000http://localhost:8000/client/datastores/

    client_datastores_delete

    path Parameters
    name
    required
    string

    Responses

    204
    delete http://localhost:8000/client/datastores/{name}
    http://localhost:8000http://localhost:8000/client/datastores/{name}

    client_datastores_read

    path Parameters
    name
    required
    string

    Responses

    200
    get http://localhost:8000/client/datastores/{name}/
    http://localhost:8000http://localhost:8000/client/datastores/{name}/

    client_datastores_update

    path Parameters
    name
    required
    string

    Responses

    200
    put http://localhost:8000/client/datastores/{name}/
    http://localhost:8000http://localhost:8000/client/datastores/{name}/

    client_datastores_delete_0

    path Parameters
    name
    required
    string

    Responses

    204
    delete http://localhost:8000/client/datastores/{name}/
    http://localhost:8000http://localhost:8000/client/datastores/{name}/

    ext

    Check whether the extension catmaid-synister is installed.

    Check whether the extension catmaid-synister is installed.

    -

    Responses

    200
    get http://localhost:8000/ext/catmaidsynister/is-installed
    http://localhost:8000http://localhost:8000/ext/catmaidsynister/is-installed

    Try to retrieve neurotransmitter information from a remote service.

    Try to retrieve neurotransmitter information from a remote service.

    -
    path Parameters
    project_id
    required
    string
    connector_id
    required
    string

    Responses

    201
    post http://localhost:8000/ext/catmaidsynister/{project_id}/connectors/{connector_id}/fetch-neurotransmitter
    http://localhost:8000http://localhost:8000/ext/catmaidsynister/{project_id}/connectors/{connector_id}/fetch-neurotransmitter

    ext_circuitmap_index_list

    Responses

    200
    get http://localhost:8000/ext/circuitmap/index
    http://localhost:8000http://localhost:8000/ext/circuitmap/index

    Check whether the extension circuitmap is installed.

    Check whether the extension circuitmap is installed.

    -

    Responses

    200
    get http://localhost:8000/ext/circuitmap/is-installed
    http://localhost:8000http://localhost:8000/ext/circuitmap/is-installed

    ext_circuitmap_test_list

    Responses

    200
    get http://localhost:8000/ext/circuitmap/test
    http://localhost:8000http://localhost:8000/ext/circuitmap/test

    ext_circuitmap_imports_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/ext/circuitmap/{project_id}/imports/
    http://localhost:8000http://localhost:8000/ext/circuitmap/{project_id}/imports/

    ext_circuitmap_imports_last-update_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/ext/circuitmap/{project_id}/imports/last-update
    http://localhost:8000http://localhost:8000/ext/circuitmap/{project_id}/imports/last-update

    ext_circuitmap_imports_last-update_list_0

    path Parameters
    project_id
    required
    string
    import_id
    required
    string

    Responses

    200
    get http://localhost:8000/ext/circuitmap/{project_id}/imports/{import_id}/last-update
    http://localhost:8000http://localhost:8000/ext/circuitmap/{project_id}/imports/{import_id}/last-update

    ext_circuitmap_synapses_fetch_create

    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/ext/circuitmap/{project_id}/synapses/fetch
    http://localhost:8000http://localhost:8000/ext/circuitmap/{project_id}/synapses/fetch

    groups

    groups_list

    Responses

    200
    get http://localhost:8000/groups/
    http://localhost:8000http://localhost:8000/groups/

    projects

    List projects visible to the requesting user.

    List projects visible to the requesting user.

    -
    Request Body schema: application/x-www-form-urlencoded
    has_tracing_data
    string

    Return only projects that have tracing data

    -
    with_mirrors
    string

    Whether to include stack mirror data in the response.

    -

    Responses

    200
    get http://localhost:8000/projects/
    http://localhost:8000http://localhost:8000/projects/

    Detailed list of projects visible to the requesting user.

    Detailed list of projects visible to the requesting user.

    -

    Responses

    200
    get http://localhost:8000/projects/export
    http://localhost:8000http://localhost:8000/projects/export

    analytics

    List nodes that are located in a broken section.

    List nodes that are located in a broken section.

    + " fill="currentColor">

    CATMAID API

    Download OpenAPI specification:Download

    api-token-auth

    api-token-auth_create

    Request Body schema: application/json
    username
    required
    string

    Valid username for authentication

    +
    password
    required
    string

    Valid password for authentication

    +

    Responses

    Request samples

    Content type
    application/json
    {
    • "username": "string",
    • "password": "string"
    }

    apis

    apis_list

    Responses

    client

    client_datastores_list

    Responses

    client_datastores_create

    Responses

    client_datastores_delete

    path Parameters
    name
    required
    string

    Responses

    client_datastores_read

    path Parameters
    name
    required
    string

    Responses

    client_datastores_update

    path Parameters
    name
    required
    string

    Responses

    client_datastores_delete_0

    path Parameters
    name
    required
    string

    Responses

    groups

    groups_list

    Responses

    Update the group membership of multiple users at once.

    Update the group membership of multiple users at once.

    +
    path Parameters
    project_id
    required
    string

    Responses

    project-tokens

    project-tokens_apply_create

    Responses

    project-tokens_list

    path Parameters
    project_id
    required
    string

    Responses

    project-tokens_create

    path Parameters
    project_id
    required
    string

    Responses

    project-tokens_revoke_create

    path Parameters
    project_id
    required
    string

    Responses

    projects

    List projects visible to the requesting user.

    List projects visible to the requesting user.

    +
    Request Body schema: application/x-www-form-urlencoded
    has_tracing_data
    string

    Return only projects that have tracing data

    +
    with_mirrors
    string

    Whether to include stack mirror data in the response.

    +

    Responses

    Detailed list of projects visible to the requesting user.

    Detailed list of projects visible to the requesting user.

    +

    Responses

    read

    path Parameters
    project_id
    required
    string

    Responses

    create

    path Parameters
    project_id
    required
    string

    Responses

    delete

    path Parameters
    project_id
    required
    string

    Responses

    analytics

    List nodes that are located in a broken section.

    List nodes that are located in a broken section.

    Broken secrions of all stacks linked to the current project are tested if they contain any nodes. Stack orientatins are respected. Optionally, only particular skeletons can be checked.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    List of skeleton IDs to constrain tests on

    -

    Responses

    201
    post http://localhost:8000/{project_id}/analytics/broken-section-nodes
    http://localhost:8000http://localhost:8000/{project_id}/analytics/broken-section-nodes

    Find potentially problematic locations in a list of skeletons.

    Find potentially problematic locations in a list of skeletons.

    -
    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/analytics/skeletons
    http://localhost:8000http://localhost:8000/{project_id}/analytics/skeletons

    annotations

    List annotations matching filtering criteria that are currently in use.

    List annotations matching filtering criteria that are currently in use.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    List of skeleton IDs to constrain tests on

    +

    Responses

    Find potentially problematic locations in a list of skeletons.

    Find potentially problematic locations in a list of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Responses

    annotations

    List annotations matching filtering criteria that are currently in use.

    List annotations matching filtering criteria that are currently in use.

    The result set is the intersection of annotations matching criteria (the criteria are conjunctive) unless stated otherwise.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    annotations
    string

    A list of (meta) annotations with which which resulting annotations should be annotated with.

    -
    annotates
    string

    A list of entity IDs (like annotations and neurons) that should be annotated by the result set.

    -
    parallel_annotations
    string

    A list of annotation that have to be used alongside the result set.

    -
    user_id
    string

    Result annotations have to be used by this user.

    -
    neuron_id
    string

    Result annotations will annotate this neuron.

    -
    skeleton_id
    string

    Result annotations will annotate the neuron modeled by this skeleton.

    -
    ignored_annotations
    string

    A list of annotation names that will be excluded from the result set.

    -
    if_modified_since
    string

    Works only if is True. Return 304 response if there is no +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    annotations
    string

    A list of (meta) annotations with which which resulting annotations should be annotated with.

    +
    annotates
    string

    A list of entity IDs (like annotations and neurons) that should be annotated by the result set.

    +
    parallel_annotations
    string

    A list of annotation that have to be used alongside the result set.

    +
    user_id
    string

    Result annotations have to be used by this user.

    +
    neuron_id
    string

    Result annotations will annotate this neuron.

    +
    skeleton_id
    string

    Result annotations will annotate the neuron modeled by this skeleton.

    +
    ignored_annotations
    string

    A list of annotation names that will be excluded from the result set.

    +
    if_modified_since
    string

    Works only if is True. Return 304 response if there is no newer content with respect to the passed in UTC date in ISO format.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/annotations/
    http://localhost:8000http://localhost:8000/{project_id}/annotations/

    List annotations matching filtering criteria that are currently in use.

    List annotations matching filtering criteria that are currently in use.

    +

    Responses

    List annotations matching filtering criteria that are currently in use.

    List annotations matching filtering criteria that are currently in use.

    The result set is the intersection of annotations matching criteria (the criteria are conjunctive) unless stated otherwise.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    annotations
    string

    A list of (meta) annotations with which which resulting annotations should be annotated with.

    -
    annotates
    string

    A list of entity IDs (like annotations and neurons) that should be annotated by the result set.

    -
    parallel_annotations
    string

    A list of annotation that have to be used alongside the result set.

    -
    user_id
    string

    Result annotations have to be used by this user.

    -
    neuron_id
    string

    Result annotations will annotate this neuron.

    -
    skeleton_id
    string

    Result annotations will annotate the neuron modeled by this skeleton.

    -
    ignored_annotations
    string

    A list of annotation names that will be excluded from the result set.

    -
    if_modified_since
    string

    Works only if is True. Return 304 response if there is no +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    annotations
    string

    A list of (meta) annotations with which which resulting annotations should be annotated with.

    +
    annotates
    string

    A list of entity IDs (like annotations and neurons) that should be annotated by the result set.

    +
    parallel_annotations
    string

    A list of annotation that have to be used alongside the result set.

    +
    user_id
    string

    Result annotations have to be used by this user.

    +
    neuron_id
    string

    Result annotations will annotate this neuron.

    +
    skeleton_id
    string

    Result annotations will annotate the neuron modeled by this skeleton.

    +
    ignored_annotations
    string

    A list of annotation names that will be excluded from the result set.

    +
    if_modified_since
    string

    Works only if is True. Return 304 response if there is no newer content with respect to the passed in UTC date in ISO format.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/annotations/
    http://localhost:8000http://localhost:8000/{project_id}/annotations/

    Add missing neuron name annotations.

    Add missing neuron name annotations.

    +

    Responses

    Add missing neuron name annotations.

    Add missing neuron name annotations.

    To each passed in neuron, a list of neuron IDs and/or skelton IDs, the neuron name stored in the neuron's base name is added as annotation. Each neuron name annotation is meta-annotated with a "Name" annotation.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    A list of skeleton IDs to update

    -
    entity_ids
    string

    A list of target entity IDs to update

    -

    Responses

    201
    post http://localhost:8000/{project_id}/annotations/add-neuron-names
    http://localhost:8000http://localhost:8000/{project_id}/annotations/add-neuron-names

    Get annotations and who used them for a set of skeletons.

    Get annotations and who used them for a set of skeletons.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    A list of skeleton IDs to update

    +
    entity_ids
    string

    A list of target entity IDs to update

    +

    Responses

    Get annotations and who used them for a set of skeletons.

    Get annotations and who used them for a set of skeletons.

    This method focuses only on annotations linked to skeletons and is likely to be faster than the general query. Returns an object with two fields: "annotations", which is itself an object with annotation IDs as fields, @@ -345,8 +522,8 @@ "skeletons" is also an object, mapping skeleton IDs to lists of annotation-annotator ID pairs. Also, as JSON separator a colon is used instead of a comma.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    A list of skeleton IDs which are annotated by the resulting annotations.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/annotations/forskeletons
    http://localhost:8000http://localhost:8000/{project_id}/annotations/forskeletons

    Query annotations linked to a list of objects.

    Query annotations linked to a list of objects.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    A list of skeleton IDs which are annotated by the resulting annotations.

    +

    Responses

    Query annotations linked to a list of objects.

    Query annotations linked to a list of objects.

    These objects can for instance be neurons, annotations or stack groups. From a database perspective, these objects are class instances.

    Returned is an object with the fields "entities" and "annotations". The @@ -355,47 +532,53 @@ user who annotated it. The latter maps annotation IDs to annotation names. For instance::

    { "entities": { "42": [{id: 1, uid: 12}, {id: 3, uid: 14}] }, "annotations": { 12: "example1", 14: "example2" } }

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    object_ids
    string

    A list of object IDs for which annotations should be returned.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/annotations/query
    http://localhost:8000http://localhost:8000/{project_id}/annotations/query

    Query entities based on various constraints

    Query entities based on various constraints

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    object_ids
    string

    A list of object IDs for which annotations should be returned.

    +

    Responses

    Query entities based on various constraints

    Query entities based on various constraints

    Entities are objects that can be referenced within CATMAID's semantic space, e.g. neurons, annotations or stack groups. This API allows to query them, mainly by annotations that have been used with them. Multiple annotation parameters can be used to combine different annotation sets with AND. Elements of one annotation parameter are combined with OR.

    -
    path Parameters
    project_id
    required
    string
    query Parameters
    annotation_date_start
    string

    The earliest YYYY-MM-DD date result elements have been annotated at.

    -
    annotation_date_end
    string

    The latest YYYY-MM-DD date result elements have been annotated at.

    -
    Request Body schema: application/x-www-form-urlencoded
    name
    string

    The name (or a part of it) of result elements.

    -
    name_exact
    string

    Whether the name has to match exactly or can be a part of the result +

    path Parameters
    project_id
    required
    string
    query Parameters
    annotation_date_start
    string

    The earliest YYYY-MM-DD date result elements have been annotated at.

    +
    annotation_date_end
    string

    The latest YYYY-MM-DD date result elements have been annotated at.

    +
    Request Body schema: application/x-www-form-urlencoded
    name
    string

    The name (or a part of it) of result elements.

    +
    name_exact
    string

    Whether the name has to match exactly or can be a part of the result name. This is typically faster than using a regular expression. False by default.

    -
    name_case_sensitive
    string

    Whether the name has to match the exact letter case provided. False +

    name_case_sensitive
    string

    Whether the name has to match the exact letter case provided. False by default.

    -
    annotated_by
    string

    A result element was annotated by a user with this ID.

    -
    annotated_with
    string

    A comma separated list of annotation IDs which all annotate the +

    annotated_by
    string

    A result element was annotated by a user with this ID.

    +
    annotated_with
    string

    A comma separated list of annotation IDs which all annotate the result elements.

    -
    not_annotated_with
    string

    A comma separated list of annotation IDs which don't annotate the +

    not_annotated_with
    string

    A comma separated list of annotation IDs which don't annotate the result elements.

    -
    sub_annotated_with
    string

    A comma separated list of annotation IDs that are contained +

    sub_annotated_with
    string

    A comma separated list of annotation IDs that are contained in either 'annotated_with' or 'not_annotated_with' that get expanded to also include their sub-annotations in the query (of which then at least one has to match inclusion or exclusion respectively).

    -
    with_annotations
    string

    Indicate if annotations of result elements should be returned.

    -
    types
    string

    Allowed result types. Multple types can be passed with multiple +

    with_annotations
    string

    Indicate if annotations of result elements should be returned.

    +
    types
    string

    Allowed result types. Multple types can be passed with multiple parameters. Defaults to 'neuron' and 'annotation'.

    -
    sort_by
    string

    Indicates how results are sorted.

    -
    sort_dir
    string

    Indicates sorting direction.

    -
    range_start
    string

    The first result element index.

    -
    range_length
    string

    The number of results

    -
    annotation_reference
    string

    Whether annoation references are IDs or names, can be 'id' or 'name.

    -
    with_timestamps
    string

    Whether to return also the annotation time for each entity.

    -
    import_only
    string

    Whether and how only skeletons that contain imported fragments +

    sort_by
    string

    Indicates how results are sorted.

    +
    sort_dir
    string

    Indicates sorting direction.

    +
    range_start
    string

    The first result element index.

    +
    range_length
    string

    The number of results

    +
    annotation_reference
    string

    Whether annoation references are IDs or names, can be 'id' or 'name.

    +
    with_timestamps
    string

    Whether to return also the annotation time for each entity.

    +
    import_only
    string

    Whether and how only skeletons that contain imported fragments should be returned. If set to 'partial', only skeletons that have at least one imported node in them are returned. If set to 'full', only skeletons that are fully imported are returned. Not set by default.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/annotations/query-targets
    http://localhost:8000http://localhost:8000/{project_id}/annotations/query-targets

    connector

    Get a list of connectors that are linked to a set of treenodes.

    Get a list of connectors that are linked to a set of treenodes.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in.

    -
    Request Body schema: application/x-www-form-urlencoded
    treenode_ids
    required
    string

    Treenode IDs that result nodes are connected to.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/connector/list/linked-to-nodes
    http://localhost:8000http://localhost:8000/{project_id}/connector/list/linked-to-nodes

    connectors

    Get a collection of connectors.

    Get a collection of connectors.

    +
    ignore_nonexisting
    string

    Whether non-existing query annotations should be ignored instead of +raising an error.

    +
    with_name
    string

    Whether to return the name of each entity.

    +
    with_type
    string

    Whether to return the type of each entity.

    +

    Responses

    Replace a set of annotations for a list of target class instances by

    Replace a set of annotations for a list of target class instances by +removing a set of annotations and adding another one.

    +
    path Parameters
    project_id
    required
    string

    Responses

    connector

    Get a list of connectors that are linked to a set of treenodes.

    Get a list of connectors that are linked to a set of treenodes.

    +
    path Parameters
    project_id
    required
    string

    The project to operate in.

    +
    Request Body schema: application/x-www-form-urlencoded
    treenode_ids
    required
    string

    Treenode IDs that result nodes are connected to.

    +

    Responses

    connectors

    Get a collection of connectors.

    Get a collection of connectors.

    The connectors field of the returned object contains a list of all result nodes, each represented as a list of the form:

    [id, x, y, z, confidence, creator_id, editor_id, creation_time, edition_time]

    @@ -410,44 +593,45 @@ need to be linked by the specified relation. Without relation_type, linked skeletons can have any relation and without skeleton_ids a connector needs to have a least one link with the specified relation.

    -
    path Parameters
    project_id
    required
    string

    Project of connectors

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Skeletons linked to connectors

    -
    tags
    string

    Require a set of tags

    -
    relation_type
    string

    Relation of linked skeletons to connector.

    -
    without_relation_types
    string

    Relations to linked skeletons that connectors must not have.

    -
    with_tags
    string

    If connector tags should be fetched

    -
    with_partners
    string

    If partner node and link information should be fetched

    -

    Responses

    201
    post http://localhost:8000/{project_id}/connectors/
    http://localhost:8000http://localhost:8000/{project_id}/connectors/

    Get a list of all connector nodes that intersect with the passed in

    Get a list of all connector nodes that intersect with the passed in +

    path Parameters
    project_id
    required
    string

    Project of connectors

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Skeletons linked to connectors

    +
    tags
    string

    Require a set of tags

    +
    relation_type
    string

    Relation of linked skeletons to connector.

    +
    without_relation_types
    string

    Relations to linked skeletons that connectors must not have.

    +
    with_tags
    string

    If connector tags should be fetched

    +
    with_partners
    string

    If partner node and link information should be fetched

    +

    Responses

    Get a list of all connector nodes that intersect with the passed in

    Get a list of all connector nodes that intersect with the passed in bounding box.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    -
    minx
    required
    string

    Minimum world space X coordinate

    -
    miny
    required
    string

    Minimum world space Y coordinate

    -
    minz
    required
    string

    Minimum world space Z coordinate

    -
    maxx
    required
    string

    Maximum world space X coordinate

    -
    maxy
    required
    string

    Maximum world space Y coordinate

    -
    maxz
    required
    string

    Maximum world space Z coordinate

    -
    with_locations
    string

    Whether to return the location of each connector.

    -
    with_links
    string

    Whether to return every individual link or null for unlinked connectors +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    +
    minx
    required
    string

    Minimum world space X coordinate

    +
    miny
    required
    string

    Minimum world space Y coordinate

    +
    minz
    required
    string

    Minimum world space Z coordinate

    +
    maxx
    required
    string

    Maximum world space X coordinate

    +
    maxy
    required
    string

    Maximum world space Y coordinate

    +
    maxz
    required
    string

    Maximum world space Z coordinate

    +
    with_locations
    string

    Whether to return the location of each connector.

    +
    with_links
    string

    Whether to return every individual link or null for unlinked connectors (if part of response).

    -
    only_linked
    string

    Whether to return only connectors with linked treenodes. By default all +

    only_linked
    string

    Whether to return only connectors with linked treenodes. By default all connectors are returned and link information is null for unlinked nodes.

    -
    skeleton_ids
    string

    Skeletons linked to connectors

    -

    Responses

    200
    get http://localhost:8000/{project_id}/connectors/in-bounding-box
    http://localhost:8000http://localhost:8000/{project_id}/connectors/in-bounding-box

    Get a list of all connector nodes that intersect with the passed in

    Get a list of all connector nodes that intersect with the passed in +

    skeleton_ids
    string

    Skeletons linked to connectors

    +

    Responses

    Get a list of all connector nodes that intersect with the passed in

    Get a list of all connector nodes that intersect with the passed in bounding box.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    -
    minx
    required
    string

    Minimum world space X coordinate

    -
    miny
    required
    string

    Minimum world space Y coordinate

    -
    minz
    required
    string

    Minimum world space Z coordinate

    -
    maxx
    required
    string

    Maximum world space X coordinate

    -
    maxy
    required
    string

    Maximum world space Y coordinate

    -
    maxz
    required
    string

    Maximum world space Z coordinate

    -
    with_locations
    string

    Whether to return the location of each connector.

    -
    with_links
    string

    Whether to return every individual link or null for unlinked connectors +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    +
    minx
    required
    string

    Minimum world space X coordinate

    +
    miny
    required
    string

    Minimum world space Y coordinate

    +
    minz
    required
    string

    Minimum world space Z coordinate

    +
    maxx
    required
    string

    Maximum world space X coordinate

    +
    maxy
    required
    string

    Maximum world space Y coordinate

    +
    maxz
    required
    string

    Maximum world space Z coordinate

    +
    with_locations
    string

    Whether to return the location of each connector.

    +
    with_links
    string

    Whether to return every individual link or null for unlinked connectors (if part of response).

    -
    only_linked
    string

    Whether to return only connectors with linked treenodes. By default all +

    only_linked
    string

    Whether to return only connectors with linked treenodes. By default all connectors are returned and link information is null for unlinked nodes.

    -
    skeleton_ids
    string

    Skeletons linked to connectors

    -

    Responses

    201
    post http://localhost:8000/{project_id}/connectors/in-bounding-box
    http://localhost:8000http://localhost:8000/{project_id}/connectors/in-bounding-box
    skeleton_ids
    string

    Skeletons linked to connectors

    +

    Responses

    Get a list of available connector types.

    Get a list of available connector types.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    required
    string

    Skeletons to list connectors for

    +
    relation_type
    required
    string

    Relation of listed connector links

    +
    with_tags
    string

    If connector tags should be fetched

    +

    Responses

    Get a list of available connector types.

    Get a list of available connector types.

    Returns a list of all available connector link types in a project. Each list element consists of an object with the following fields: type, relation, relation_id.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/connectors/types/
    http://localhost:8000http://localhost:8000/{project_id}/connectors/types/

    Return information on a treenode connector edge.

    Return information on a treenode connector edge.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Return information on a treenode connector edge.

    Return information on a treenode connector edge.

    Returns a JSON array with elements representing information on the matched links. They have the following form:

    { "user": ..., "creaetion_time": ..., "edition_time": ... }

    Developer node: This function is called often (every connector mouseover) and should therefore be as fast as possible. Analogous to user_info for treenodes and connectors.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project of connectors

    -
    treenode_id
    required
    string

    The treenode, the connector is linked to

    -
    connector_id
    required
    string

    The connector, the treenode is linked to

    -
    relation_id
    string

    The relation ID of the link, can be used instead of relation_name

    -
    relation_name
    string

    The relation name of the link, can be used instead of relation_id

    -

    Responses

    200
    get http://localhost:8000/{project_id}/connectors/user-info
    http://localhost:8000http://localhost:8000/{project_id}/connectors/user-info

    Get detailed information on a connector and its partners

    Get detailed information on a connector and its partners

    -
    path Parameters
    project_id
    required
    string
    connector_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/connectors/{connector_id}/
    http://localhost:8000http://localhost:8000/{project_id}/connectors/{connector_id}/

    fork

    Attempt to create a new project based on the passed in project ID.

    Attempt to create a new project based on the passed in project ID.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    name
    required
    string

    Name of new project

    -

    Responses

    201
    post http://localhost:8000/{project_id}/fork
    http://localhost:8000http://localhost:8000/{project_id}/fork

    graph

    Given a set of one or more skeleton IDs, find all skeletons that connect

    Given a set of one or more skeleton IDs, find all skeletons that connect +

    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project of connectors

    +
    treenode_id
    required
    string

    The treenode, the connector is linked to

    +
    connector_id
    required
    string

    The connector, the treenode is linked to

    +
    relation_id
    string

    The relation ID of the link, can be used instead of relation_name

    +
    relation_name
    string

    The relation name of the link, can be used instead of relation_id

    +

    Responses

    Get detailed information on a connector and its partners

    Get detailed information on a connector and its partners

    +
    path Parameters
    project_id
    required
    string
    connector_id
    required
    string

    Responses

    favorite

    favorite_create

    path Parameters
    project_id
    required
    string

    Responses

    favorite_delete

    path Parameters
    project_id
    required
    string

    Responses

    fork

    Attempt to create a new project based on the passed in project ID.

    Attempt to create a new project based on the passed in project ID.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    name
    required
    string

    Name of new project

    +
    description
    string

    Description of new project

    +
    copy_volumes
    string

    Whether volumes will be copied to the new project

    +
    project_token
    string

    Whether or not a new project token should be generated

    +
    add_to_favorites
    string

    Whether or not the new project is marked as a favorite

    +

    Responses

    graph

    Given a set of one or more skeleton IDs, find all skeletons that connect

    Given a set of one or more skeleton IDs, find all skeletons that connect them (n_circles=1), or that connect to others that connect them (n_circles=2), etc. Returns a list of unique skeleton IDs that exclude the ones provided as argument.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to start expanding from.

    -
    n_circles
    string

    (Optional) The numbers of recursive expansions.

    -
    allowed_connector_ids[]
    string

    (Optional) IDs of connector nodes that are allowed to be used for expansion.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/graph/circlesofhell
    http://localhost:8000http://localhost:8000/{project_id}/graph/circlesofhell

    interpolatable-sections

    Get all section locations for all orientations.

    Get all section locations for all orientations.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/interpolatable-sections/
    http://localhost:8000http://localhost:8000/{project_id}/interpolatable-sections/

    labels

    List all labels (front-end node *tags*) in use.

    List all labels (front-end node tags) in use.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    -

    Responses

    200
    get http://localhost:8000/{project_id}/labels/
    http://localhost:8000http://localhost:8000/{project_id}/labels/

    List all labels (front-end node *tags*) in use alongside their IDs.

    List all labels (front-end node tags) in use alongside their IDs.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    -

    Responses

    200
    get http://localhost:8000/{project_id}/labels/detail
    http://localhost:8000http://localhost:8000/{project_id}/labels/detail

    Get usage statistics of node labels.

    Get usage statistics of node labels.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project from which to get label stats

    -

    Responses

    200
    get http://localhost:8000/{project_id}/labels/stats
    http://localhost:8000http://localhost:8000/{project_id}/labels/stats

    List all labels (front-end node *tags*) attached to a particular node.

    List all labels (front-end node tags) attached to a particular node.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    -
    node_type
    required
    string

    Either 'connector', 'treenode' or 'location'

    -
    node_id
    required
    string

    ID of node to list labels for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/labels/{node_type}/{node_id}/
    http://localhost:8000http://localhost:8000/{project_id}/labels/{node_type}/{node_id}/

    landmarks

    landmarks_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/landmarks/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/

    landmarks_update

    path Parameters
    project_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/landmarks/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/

    landmarks_delete

    path Parameters
    project_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/

    landmarks_groups_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/landmarks/groups/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/

    landmarks_groups_update

    path Parameters
    project_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/landmarks/groups/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/

    landmarks_groups_import_create

    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/landmarks/groups/import
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/import

    landmarks_groups_materialize_create

    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/landmarks/groups/materialize
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/materialize

    landmarks_groups_read

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/

    landmarks_groups_create

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/

    landmarks_groups_delete_0

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/

    landmarks_groups_locations_update

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string
    location_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/locations/{location_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/locations/{location_id}/

    landmarks_groups_locations_delete

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string
    location_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/locations/{location_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/locations/{location_id}/

    landmarks_groups_transitively-linked_list

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/transitively-linked
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/groups/{landmarkgroup_id}/transitively-linked

    landmarks_read

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/landmarks/{landmark_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/

    landmarks_create

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/landmarks/{landmark_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/

    landmarks_delete_0

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/{landmark_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/

    landmarks_groups_delete

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string
    group_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/{landmark_id}/groups/{group_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/groups/{group_id}/

    landmarks_locations_update

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/landmarks/{landmark_id}/locations/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/locations/

    landmarks_locations_delete

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string
    location_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/landmarks/{landmark_id}/locations/{location_id}/
    http://localhost:8000http://localhost:8000/{project_id}/landmarks/{landmark_id}/locations/{location_id}/

    neuron

    Get a list of all skeleton IDs linked to the passed in neuron.

    Get a list of all skeleton IDs linked to the passed in neuron.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    neuron_id
    required
    string

    ID of neuron to get skeletons for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/neuron/{neuron_id}/get-all-skeletons
    http://localhost:8000http://localhost:8000/{project_id}/neuron/{neuron_id}/get-all-skeletons

    neurons

    List neurons matching filtering criteria.

    List neurons matching filtering criteria.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to start expanding from.

    +
    n_circles
    string

    (Optional) The numbers of recursive expansions.

    +
    allowed_connector_ids[]
    string

    (Optional) IDs of connector nodes that are allowed to be used for expansion.

    +

    Responses

    interpolatable-sections

    Get all section locations for all orientations.

    Get all section locations for all orientations.

    +
    path Parameters
    project_id
    required
    string

    Responses

    labels

    List all labels (front-end node *tags*) in use.

    List all labels (front-end node tags) in use.

    +
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    +

    Responses

    List all labels (front-end node *tags*) in use alongside their IDs.

    List all labels (front-end node tags) in use alongside their IDs.

    +
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    +

    Responses

    Get usage statistics of node labels.

    Get usage statistics of node labels.

    +
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project from which to get label stats

    +

    Responses

    List all labels (front-end node *tags*) attached to a particular node.

    List all labels (front-end node tags) attached to a particular node.

    +
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project containing node of interest

    +
    node_type
    required
    string

    Either 'connector', 'treenode' or 'location'

    +
    node_id
    required
    string

    ID of node to list labels for

    +

    Responses

    landmarks

    landmarks_list

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_update

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_delete

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_groups_list

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_groups_update

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_groups_import_create

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_groups_materialize_create

    path Parameters
    project_id
    required
    string

    Responses

    landmarks_groups_read

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    landmarks_groups_create

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    landmarks_groups_delete_0

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    landmarks_groups_locations_update

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string
    location_id
    required
    string

    Responses

    landmarks_groups_locations_delete

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string
    location_id
    required
    string

    Responses

    landmarks_groups_transitively-linked_list

    path Parameters
    project_id
    required
    string
    landmarkgroup_id
    required
    string

    Responses

    landmarks_read

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    landmarks_create

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    landmarks_delete_0

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    landmarks_groups_delete

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string
    group_id
    required
    string

    Responses

    landmarks_locations_update

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string

    Responses

    landmarks_locations_delete

    path Parameters
    project_id
    required
    string
    landmark_id
    required
    string
    location_id
    required
    string

    Responses

    neuron

    Get a list of all skeleton IDs linked to the passed in neuron.

    Get a list of all skeleton IDs linked to the passed in neuron.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    neuron_id
    required
    string

    ID of neuron to get skeletons for

    +

    Responses

    neurons

    List neurons matching filtering criteria.

    List neurons matching filtering criteria.

    The result set is the intersection of neurons matching criteria (the criteria are conjunctive) unless stated otherwise.

    -
    path Parameters
    project_id
    required
    string
    query Parameters
    created_by
    string

    Filter for user ID of the neurons' creator.

    -
    reviewed_by
    string

    Filter for user ID of the neurons' reviewer.

    -
    from_date
    string

    Filter for neurons with nodes created after this date.

    -
    to_date
    string

    Filter for neurons with nodes created before this date.

    -
    nodecount_gt
    string

    Filter for neurons with more nodes than this threshold. Removes +

    path Parameters
    project_id
    required
    string
    query Parameters
    created_by
    string

    Filter for user ID of the neurons' creator.

    +
    reviewed_by
    string

    Filter for user ID of the neurons' reviewer.

    +
    from_date
    string

    Filter for neurons with nodes created after this date.

    +
    to_date
    string

    Filter for neurons with nodes created before this date.

    +
    nodecount_gt
    string

    Filter for neurons with more nodes than this threshold. Removes all other criteria.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/neurons/
    http://localhost:8000http://localhost:8000/{project_id}/neurons/

    Find all skeleton IDs linked to the passed in neurons.

    Find all skeleton IDs linked to the passed in neurons.

    +

    Responses

    Find all skeleton IDs linked to the passed in neurons.

    Find all skeleton IDs linked to the passed in neurons.

    A map

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    neuron_ids
    required
    string

    IDs of neurons to get skeletons for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/neurons/all-skeletons
    http://localhost:8000http://localhost:8000/{project_id}/neurons/all-skeletons

    Retrieve neuron IDs modeled by particular entities, eg skeletons.

    Retrieve neuron IDs modeled by particular entities, eg skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    neuron_ids
    required
    string

    IDs of neurons to get skeletons for

    +

    Responses

    Retrieve neuron IDs modeled by particular entities, eg skeletons.

    Retrieve neuron IDs modeled by particular entities, eg skeletons.

    From a list of source entities (class instances), the IDs of all modeled neurons are returned. There are currently only skeletons that model neurons.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    model_ids[]
    required
    string

    IDs of models to find neurons for (e.g. skeleton IDs)

    -

    Responses

    201
    post http://localhost:8000/{project_id}/neurons/from-models
    http://localhost:8000http://localhost:8000/{project_id}/neurons/from-models

    Rename a neuron.

    Rename a neuron.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    model_ids[]
    required
    string

    IDs of models to find neurons for (e.g. skeleton IDs)

    +

    Responses

    Rename a neuron.

    Rename a neuron.

    If a neuron is not locked by a user on which the current user has no permission, the name of neuron can be changed through this endpoint. Neuron names are currently not allowed to contain pipe characters ("|").

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    neuron_names
    required
    string

    A list of two-element tuples, containing of neuron ID and new name each.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/neurons/rename
    http://localhost:8000http://localhost:8000/{project_id}/neurons/rename

    Rename a neuron.

    Rename a neuron.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    neuron_names
    required
    string

    A list of two-element tuples, containing of neuron ID and new name each.

    +

    Responses

    Rename a neuron.

    Rename a neuron.

    If a neuron is not locked by a user on which the current user has no permission, the name of neuron can be changed through this endpoint. Neuron names are currently not allowed to contain pipe characters ("|").

    -
    path Parameters
    project_id
    required
    string
    neuron_id
    required
    string

    ID of neuron to rename

    -
    Request Body schema: application/x-www-form-urlencoded
    name
    required
    string

    New name of the neuron

    -

    Responses

    201
    post http://localhost:8000/{project_id}/neurons/{neuron_id}/rename
    http://localhost:8000http://localhost:8000/{project_id}/neurons/{neuron_id}/rename

    nodes

    Retrieve all nodes intersecting a bounding box

    Retrieve all nodes intersecting a bounding box

    +
    path Parameters
    project_id
    required
    string
    neuron_id
    required
    string

    ID of neuron to rename

    +
    Request Body schema: application/x-www-form-urlencoded
    name
    required
    string

    New name of the neuron

    +

    Responses

    nodes

    Retrieve all nodes intersecting a bounding box

    Retrieve all nodes intersecting a bounding box

    The intersection bounding box is defined in terms of its minimum and maximum project space coordinates. The number of returned nodes can be limited to constrain query execution time. Optionally, lists of treenodes @@ -566,171 +754,173 @@

    With the last top level element returned the present connector linked relations are mapped to their textural representations:

    {relation_id: relation_name}

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_ids
    string

    Whether linked connectors should be returned.

    -
    connector_ids
    string

    Whether tags should be returned.

    -
    limit
    string

    Limit the number of returned nodes.

    -
    left
    required
    string

    Minimum world space X coordinate

    -
    top
    required
    string

    Minimum world space Y coordinate

    -
    z1
    required
    string

    Minimum world space Z coordinate

    -
    right
    required
    string

    Maximum world space X coordinate

    -
    bottom
    required
    string

    Maximum world space Y coordinate

    -
    z2
    required
    string

    Maximum world space Z coordinate

    -
    format
    string

    Either "json" (default) or "msgpack", optional.

    -
    with_relation_map
    string

    Whether an ID to name mapping for the used relations should be included +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_ids
    string

    Whether linked connectors should be returned.

    +
    connector_ids
    string

    Whether tags should be returned.

    +
    limit
    string

    Limit the number of returned nodes.

    +
    left
    required
    string

    Minimum world space X coordinate

    +
    top
    required
    string

    Minimum world space Y coordinate

    +
    z1
    required
    string

    Minimum world space Z coordinate

    +
    right
    required
    string

    Maximum world space X coordinate

    +
    bottom
    required
    string

    Maximum world space Y coordinate

    +
    z2
    required
    string

    Maximum world space Z coordinate

    +
    format
    string

    Either "json" (default) or "msgpack", optional.

    +
    with_relation_map
    string

    Whether an ID to name mapping for the used relations should be included and which extent it should have.

    -
    with_origin
    string

    Whether the origin for each skeleton should be looked up and returned. +

    with_origin
    string

    Whether the origin for each skeleton should be looked up and returned. This will show which skeletons are imported.

    -
    n_largest_skeletons_limit
    string

    Maximum number of the largest skeletons in view

    -
    n_last_edited_skeletons_limit
    string

    Maximum number of most recently edited skeletons.

    -
    hidden_last_editor_id
    string

    No nodes edited last by this user will be retuned.

    -
    min_skeleton_length
    string

    Optional minimum skeleton length, no returned node is of a shorter +

    n_largest_skeletons_limit
    string

    Maximum number of the largest skeletons in view

    +
    n_last_edited_skeletons_limit
    string

    Maximum number of most recently edited skeletons.

    +
    hidden_last_editor_id
    string

    No nodes edited last by this user will be retuned.

    +
    min_skeleton_length
    string

    Optional minimum skeleton length, no returned node is of a shorter skeleton.

    -
    order
    string

    Either empty, cable-asc or cable-desc. Will return in a particular +

    order
    string

    Either empty, cable-asc or cable-desc. Will return in a particular order. By default, no ordering is applied.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/nodes/
    http://localhost:8000http://localhost:8000/{project_id}/nodes/

    List nodes with labels matching a query, ordered by distance.

    List nodes with labels matching a query, ordered by distance.

    +

    Responses

    List nodes with labels matching a query, ordered by distance.

    List nodes with labels matching a query, ordered by distance.

    Find nodes with labels (front-end node tags) matching a regular expression, sort them by ascending distance from a reference location, and return the result. Returns at most 50 nodes.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    x
    required
    string

    X coordinate of the distance reference in project space.

    -
    y
    required
    string

    Y coordinate of the distance reference in project space.

    -
    z
    required
    string

    Z coordinate of the distance reference in project space.

    -
    label_regex
    required
    string

    Regular expression query to match labels

    -

    Responses

    201
    post http://localhost:8000/{project_id}/nodes/find-labels
    http://localhost:8000http://localhost:8000/{project_id}/nodes/find-labels

    Get locations for a particular set of nodes in a project.

    Get locations for a particular set of nodes in a project.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    x
    required
    string

    X coordinate of the distance reference in project space.

    +
    y
    required
    string

    Y coordinate of the distance reference in project space.

    +
    z
    required
    string

    Z coordinate of the distance reference in project space.

    +
    label_regex
    required
    string

    Regular expression query to match labels

    +

    Responses

    Get locations for a particular set of nodes in a project.

    Get locations for a particular set of nodes in a project.

    A list of lists is returned. Each inner list represents one location and hast the following format: [id, x, y, z].

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    node_ids
    required
    string

    A list of node IDs to get the location for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/nodes/location
    http://localhost:8000http://localhost:8000/{project_id}/nodes/location

    Retrieve the last edited node.

    Retrieve the last edited node.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    node_ids
    required
    string

    A list of node IDs to get the location for

    +

    Responses

    Retrieve the last edited node.

    Retrieve the last edited node.

    Without any further parameters, this will retrieve the node last edited on any skeleton by any user. This can be further constrained by skeleton and user.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in.

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_id
    string

    (optional) Skeleton for which to retrieve last edited node.

    -
    user_id
    string

    (optional) User of which to retrieve last edited node.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/nodes/most-recent
    http://localhost:8000http://localhost:8000/{project_id}/nodes/most-recent

    Find the closest node in a skeleton relative to a passed in location.

    Find the closest node in a skeleton relative to a passed in location.

    +
    path Parameters
    project_id
    required
    string

    The project to operate in.

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_id
    string

    (optional) Skeleton for which to retrieve last edited node.

    +
    user_id
    string

    (optional) User of which to retrieve last edited node.

    +

    Responses

    Find the closest node in a skeleton relative to a passed in location.

    Find the closest node in a skeleton relative to a passed in location.

    If a skeleton ID or neuron id is passed in as well, the nearest node in the respective skeleton is returned.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in.

    -
    Request Body schema: application/x-www-form-urlencoded
    x
    required
    string

    X coordinate of query location.

    -
    y
    required
    string

    X coordinate of query location.

    -
    z
    required
    string

    Z coordinate of query location.

    -
    skeleton_id
    string

    Result treenode has to be in this skeleton.

    -
    neuron_id
    string

    Alternative to skeleton_id. Result treenode has to be in +

    path Parameters
    project_id
    required
    string

    The project to operate in.

    +
    Request Body schema: application/x-www-form-urlencoded
    x
    required
    string

    X coordinate of query location.

    +
    y
    required
    string

    X coordinate of query location.

    +
    z
    required
    string

    Z coordinate of query location.

    +
    skeleton_id
    string

    Result treenode has to be in this skeleton.

    +
    neuron_id
    string

    Alternative to skeleton_id. Result treenode has to be in this neuron

    -

    Responses

    200
    get http://localhost:8000/{project_id}/nodes/nearest
    http://localhost:8000http://localhost:8000/{project_id}/nodes/nearest

    origins

    origins_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/origins/
    http://localhost:8000http://localhost:8000/{project_id}/origins/

    pointclouds

    pointclouds_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/pointclouds/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/

    pointclouds_create

    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/pointclouds/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/

    pointclouds_update

    path Parameters
    project_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/pointclouds/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/

    pointclouds_read

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/

    pointclouds_delete

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/

    pointclouds_images_read

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string
    image_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/images/{image_id}/
    http://localhost:8000http://localhost:8000/{project_id}/pointclouds/{pointcloud_id}/images/{image_id}/

    points

    points_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/points/
    http://localhost:8000http://localhost:8000/{project_id}/points/

    points_update

    path Parameters
    project_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/points/
    http://localhost:8000http://localhost:8000/{project_id}/points/

    points_read

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/points/{point_id}/
    http://localhost:8000http://localhost:8000/{project_id}/points/{point_id}/

    points_create

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/points/{point_id}/
    http://localhost:8000http://localhost:8000/{project_id}/points/{point_id}/

    points_delete

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/points/{point_id}/
    http://localhost:8000http://localhost:8000/{project_id}/points/{point_id}/

    pointsets

    pointsets_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/pointsets/
    http://localhost:8000http://localhost:8000/{project_id}/pointsets/

    pointsets_create

    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/pointsets/
    http://localhost:8000http://localhost:8000/{project_id}/pointsets/

    pointsets_read

    path Parameters
    project_id
    required
    string
    pointset_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/pointsets/{pointset_id}/
    http://localhost:8000http://localhost:8000/{project_id}/pointsets/{pointset_id}/

    samplers

    Get a collection of available samplers.

    Get a collection of available samplers.

    +

    Responses

    origins

    origins_list

    path Parameters
    project_id
    required
    string

    Responses

    pointclouds

    pointclouds_list

    path Parameters
    project_id
    required
    string

    Responses

    pointclouds_create

    path Parameters
    project_id
    required
    string

    Responses

    pointclouds_update

    path Parameters
    project_id
    required
    string

    Responses

    pointclouds_read

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string

    Responses

    pointclouds_delete

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string

    Responses

    pointclouds_images_read

    path Parameters
    project_id
    required
    string
    pointcloud_id
    required
    string
    image_id
    required
    string

    Responses

    points

    points_list

    path Parameters
    project_id
    required
    string

    Responses

    points_update

    path Parameters
    project_id
    required
    string

    Responses

    points_read

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    points_create

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    points_delete

    path Parameters
    project_id
    required
    string
    point_id
    required
    string

    Responses

    pointsets

    pointsets_list

    path Parameters
    project_id
    required
    string

    Responses

    pointsets_create

    path Parameters
    project_id
    required
    string

    Responses

    pointsets_read

    path Parameters
    project_id
    required
    string
    pointset_id
    required
    string

    Responses

    samplers

    Get a collection of available samplers.

    Get a collection of available samplers.

    Optionally, the "skeleton_ids" parameter can provide a list of skeleton IDs. If this is the case, only samplers for the respective skeletons are returned.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Optional skeleton IDs to constrain result set to.

    -
    with_domains
    string

    Optional flag to include all domains of all result sampler results.

    -
    with_intervals
    string

    Optional flag to include all intervals of all domains. Implies with_domains.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/

    Create a new sampler for a skeleton.

    Create a new sampler for a skeleton.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_id
    required
    string

    Skeleton this sampelr is for

    -
    interval_length
    required
    string

    Length of a intervals with domains (nm).

    -
    interval_error
    string

    Maximum allowed error for a single interval.

    -
    review_required
    required
    string

    Whether reviews should be enforced in this sampler

    -
    create_interval_boundaries
    required
    string

    Whether new nodes for interval boundaries should be created.

    -
    leaf_segment_handling
    string

    How leaf segments should be handled, can be 'ignore', 'merge' or 'short-interval'.

    -
    merge_limit
    string

    A leaf handling option for merge-or-create mode. A value between 0 and 1 representing the interval length ratio up to which a merge is allowed.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/add
    http://localhost:8000http://localhost:8000/{project_id}/samplers/add

    Get a list of connectors that already have a state associated with them.

    Get a list of connectors that already have a state associated with them.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Optional skeleton IDs to constrain result set to.

    +
    with_domains
    string

    Optional flag to include all domains of all result sampler results.

    +
    with_intervals
    string

    Optional flag to include all intervals of all domains. Implies with_domains.

    +

    Responses

    Create a new sampler for a skeleton.

    Create a new sampler for a skeleton.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_id
    required
    string

    Skeleton this sampelr is for

    +
    interval_length
    required
    string

    Length of a intervals with domains (nm).

    +
    interval_error
    string

    Maximum allowed error for a single interval.

    +
    review_required
    required
    string

    Whether reviews should be enforced in this sampler

    +
    create_interval_boundaries
    required
    string

    Whether new nodes for interval boundaries should be created.

    +
    leaf_segment_handling
    string

    How leaf segments should be handled, can be 'ignore', 'merge' or 'short-interval'.

    +
    merge_limit
    string

    A leaf handling option for merge-or-create mode. A value between 0 and 1 representing the interval length ratio up to which a merge is allowed.

    +

    Responses

    Get a list of connectors that already have a state associated with them.

    Get a list of connectors that already have a state associated with them.

    If a connector is not part of this list it is implicetely assumed to be in an "untouched" state.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    string

    The interval all results should be part of

    -
    connector_id
    string

    The connector to get sampler information for

    -
    state_id
    string

    The state all result sets have to have.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/connectors/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/connectors/

    Get a list of all available connectors states and their IDs.

    Get a list of all available connectors states and their IDs.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/connectors/states/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/connectors/states/

    Get a list of all available interval states.

    Get a list of all available interval states.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/domains/intervals/states/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/intervals/states/

    Set state of sampler connector

    Set state of sampler connector

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    required
    string

    Interval the connector is part of

    -
    connector_id
    required
    string

    Connector to set state of

    -
    state_id
    required
    string

    The new state

    -

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/connectors/{connector_id}/set-state
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/connectors/{connector_id}/set-state

    Get details on a particular interval.

    Get details on a particular interval.

    -
    path Parameters
    project_id
    required
    string
    interval_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/details
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/details

    Set state of an interval.

    Set state of an interval.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    required
    string

    Interval to update state of

    -

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/set-state
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/intervals/{interval_id}/set-state

    Get a list of all available domain types.

    Get a list of all available domain types.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/domains/types/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/types/

    Get details on a particular domain.

    Get details on a particular domain.

    -
    path Parameters
    project_id
    required
    string
    domain_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/domains/{domain_id}/details
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/{domain_id}/details

    Get a collection of available sampler domains intervals.

    Get a collection of available sampler domains intervals.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    domain_id
    required
    string

    Domain to list intervals for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/domains/{domain_id}/intervals/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/{domain_id}/intervals/

    Create all intervals in a particular domain.

    Create all intervals in a particular domain.

    -
    path Parameters
    project_id
    required
    string
    domain_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/domains/{domain_id}/intervals/add-all
    http://localhost:8000http://localhost:8000/{project_id}/samplers/domains/{domain_id}/intervals/add-all

    Get a list of all available sampler states and their IDs.

    Get a list of all available sampler states and their IDs.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/states/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/states/

    samplers_read

    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/{sampler_id}/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/

    samplers_create

    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/{sampler_id}/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/

    Delete a sampler if permissions allow it.

    Delete a sampler if permissions allow it.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    string

    The interval all results should be part of

    +
    connector_id
    string

    The connector to get sampler information for

    +
    state_id
    string

    The state all result sets have to have.

    +

    Responses

    Get a list of all available connectors states and their IDs.

    Get a list of all available connectors states and their IDs.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Get a list of all available interval states.

    Get a list of all available interval states.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Set state of sampler connector

    Set state of sampler connector

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    required
    string

    Interval the connector is part of

    +
    connector_id
    required
    string

    Connector to set state of

    +
    state_id
    required
    string

    The new state

    +

    Responses

    Get details on a particular interval.

    Get details on a particular interval.

    +
    path Parameters
    project_id
    required
    string
    interval_id
    required
    string

    Responses

    Set state of an interval.

    Set state of an interval.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    interval_id
    required
    string

    Interval to update state of

    +

    Responses

    Get a list of all available domain types.

    Get a list of all available domain types.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Get details on a particular domain.

    Get details on a particular domain.

    +
    path Parameters
    project_id
    required
    string
    domain_id
    required
    string

    Responses

    Get a collection of available sampler domains intervals.

    Get a collection of available sampler domains intervals.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    domain_id
    required
    string

    Domain to list intervals for

    +

    Responses

    Create all intervals in a particular domain.

    Create all intervals in a particular domain.

    +
    path Parameters
    project_id
    required
    string
    domain_id
    required
    string

    Responses

    Get a list of all available sampler states and their IDs.

    Get a list of all available sampler states and their IDs.

    +
    path Parameters
    project_id
    required
    string

    Responses

    samplers_read

    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    samplers_create

    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    Delete a sampler if permissions allow it.

    Delete a sampler if permissions allow it.

    If the sampler was created with allowing the creation of new boundary nodes, these nodes are removed by default if they have not been modified since their insertion. This can optionally be disabled using the parameter.

    -
    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    delete_created_nodes
    string

    Optional flag to disable automatic removal of untouched +

    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    delete_created_nodes
    string

    Optional flag to disable automatic removal of untouched nodes created for this sampler's intervals.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/{sampler_id}/delete
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/delete

    Get a collection of available sampler domains.

    Get a collection of available sampler domains.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    sampler_id
    required
    string

    Sampler to list domains for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/

    Create a new domain for a sampler.

    Create a new domain for a sampler.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    sampler_id
    required
    string

    Sampeler the new domain is part of

    -
    domain_type_id
    required
    string

    The type of the new domain

    -
    start_node_id
    required
    string

    Start node of domain

    -
    end_node_ids
    required
    string

    A list of all end nodes for the new domain

    -
    parent_interval_id
    string

    Optional parent inerval ID.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/add
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/add

    Create a new domain for a sampler.

    Create a new domain for a sampler.

    -
    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/add-all
    http://localhost:8000http://localhost:8000/{project_id}/samplers/{sampler_id}/domains/add-all

    similarity

    similarity_configs_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/similarity/configs/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/configs/

    similarity_configs_update

    path Parameters
    project_id
    required
    string

    Responses

    200
    put http://localhost:8000/{project_id}/similarity/configs/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/configs/

    similarity_configs_read

    path Parameters
    project_id
    required
    string
    config_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/similarity/configs/{config_id}/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/configs/{config_id}/

    similarity_configs_delete

    path Parameters
    project_id
    required
    string
    config_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/similarity/configs/{config_id}/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/configs/{config_id}/

    similarity_queries_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/similarity/queries/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/queries/

    Compare two sets of objects (skeletons or point clouds) and return an

    Compare two sets of objects (skeletons or point clouds) and return an +

    Responses

    Get a collection of available sampler domains.

    Get a collection of available sampler domains.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    sampler_id
    required
    string

    Sampler to list domains for

    +

    Responses

    Create a new domain for a sampler.

    Create a new domain for a sampler.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    sampler_id
    required
    string

    Sampeler the new domain is part of

    +
    domain_type_id
    required
    string

    The type of the new domain

    +
    start_node_id
    required
    string

    Start node of domain

    +
    end_node_ids
    required
    string

    A list of all end nodes for the new domain

    +
    parent_interval_id
    string

    Optional parent inerval ID.

    +

    Responses

    Create a new domain for a sampler.

    Create a new domain for a sampler.

    +
    path Parameters
    project_id
    required
    string
    sampler_id
    required
    string

    Responses

    similarity

    similarity_configs_list

    path Parameters
    project_id
    required
    string

    Responses

    similarity_configs_update

    path Parameters
    project_id
    required
    string

    Responses

    similarity_configs_read

    path Parameters
    project_id
    required
    string
    config_id
    required
    string

    Responses

    similarity_configs_delete

    path Parameters
    project_id
    required
    string
    config_id
    required
    string

    Responses

    similarity_queries_list

    path Parameters
    project_id
    required
    string

    Responses

    Compare two sets of objects (skeletons or point clouds) and return an

    Compare two sets of objects (skeletons or point clouds) and return an NBLAST scoring based on an existing NBLAST configuration.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    config_id
    required
    string

    ID of the new NBLAST configuration to use

    -
    query_ids
    required
    string

    Set of objects (skeletons or point clouds) to query similarity for.

    -
    target_ids
    required
    string

    Set of objects (skeletons or point clouds) or point clouds to compare against.

    -
    target_type
    string

    Type of target objects, 'skeleton' or 'pointcloud'.

    -
    name
    string

    Name for the similarity lookup task

    -
    normalized
    string

    Whether and how scores should be normalized.

    -
    use_alpha
    string

    Whether to consider local directions in the similarity computation

    -
    reverse
    string

    If enabled, the target is matched against the query.

    -
    query_type_id
    string

    Type of query data

    -
    target_type_id
    string

    Type of query data

    -
    query_meta
    string

    Extra data for the selected query type. A JSON encoded string is expected.

    -
    target_meta
    string

    Extra data for the selected target type. A JSON encoded string is expected.

    -
    remove_target_duplicates
    string

    Remove all target objects that appear also in the query.

    -
    simplify
    string

    Whether or not to simplify neurons and remove parts below a specified branch point level.

    -
    required_branches
    string

    The required branch levels if neurons should be simplified.

    -
    use_cache
    string

    Whether or not to use cached data when computing similarity scores.

    -
    top_n
    string

    How many results should be returned sorted by score. A +

    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    config_id
    required
    string

    ID of the new NBLAST configuration to use

    +
    query_ids
    required
    string

    Set of objects (skeletons or point clouds) to query similarity for.

    +
    target_ids
    required
    string

    Set of objects (skeletons or point clouds) or point clouds to compare against.

    +
    target_type
    string

    Type of target objects, 'skeleton' or 'pointcloud'.

    +
    name
    string

    Name for the similarity lookup task

    +
    normalized
    string

    Whether and how scores should be normalized.

    +
    use_alpha
    string

    Whether to consider local directions in the similarity computation

    +
    reverse
    string

    If enabled, the target is matched against the query.

    +
    query_type_id
    string

    Type of query data

    +
    target_type_id
    string

    Type of query data

    +
    query_meta
    string

    Extra data for the selected query type. A JSON encoded string is expected.

    +
    target_meta
    string

    Extra data for the selected target type. A JSON encoded string is expected.

    +
    remove_target_duplicates
    string

    Remove all target objects that appear also in the query.

    +
    simplify
    string

    Whether or not to simplify neurons and remove parts below a specified branch point level.

    +
    required_branches
    string

    The required branch levels if neurons should be simplified.

    +
    use_cache
    string

    Whether or not to use cached data when computing similarity scores.

    +
    top_n
    string

    How many results should be returned sorted by score. A value of zero dsiables this cutoff.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/similarity/queries/similarity
    http://localhost:8000http://localhost:8000/{project_id}/similarity/queries/similarity

    similarity_queries_read

    path Parameters
    project_id
    required
    string
    similarity_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/similarity/queries/{similarity_id}/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/queries/{similarity_id}/

    similarity_queries_delete

    path Parameters
    project_id
    required
    string
    similarity_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/similarity/queries/{similarity_id}/
    http://localhost:8000http://localhost:8000/{project_id}/similarity/queries/{similarity_id}/

    skeleton

    Return a sparse connectivity matrix representation for the given skeleton

    Return a sparse connectivity matrix representation for the given skeleton +

    Responses

    similarity_queries_read

    path Parameters
    project_id
    required
    string
    similarity_id
    required
    string

    Responses

    similarity_queries_delete

    path Parameters
    project_id
    required
    string
    similarity_id
    required
    string

    Responses

    skeleton

    Return a sparse connectivity matrix representation for the given skeleton

    Return a sparse connectivity matrix representation for the given skeleton IDs. The returned dictionary has a key for each row skeleton having outgoing connections to one or more column skeletons. Each entry stores a dictionary that maps the connection partners to the individual outgoing synapse counts.

    -
    path Parameters
    project_id
    required
    string

    Project of skeletons

    -
    Request Body schema: application/x-www-form-urlencoded
    rows
    required
    string

    IDs of row skeletons

    -
    columns
    required
    string

    IDs of column skeletons

    -
    with_locations
    string

    Whether or not to return locations of connectors

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeleton/connectivity_matrix
    http://localhost:8000http://localhost:8000/{project_id}/skeleton/connectivity_matrix

    Map skeleton IDs to neuron base names.

    Map skeleton IDs to neuron base names.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skids[]
    required
    string

    IDs of the skeletons to query name for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeleton/neuronnames
    http://localhost:8000http://localhost:8000/{project_id}/skeleton/neuronnames

    Export an extended SWC file. It includes a creation user name, creation

    Export an extended SWC file. It includes a creation user name, creation +

    path Parameters
    project_id
    required
    string

    Project of skeletons

    +
    Request Body schema: application/x-www-form-urlencoded
    rows
    required
    string

    IDs of row skeletons

    +
    columns
    required
    string

    IDs of column skeletons

    +
    with_locations
    string

    Whether or not to return locations of connectors

    +
    row_relation
    string

    The relation from a row skeleton to a connector

    +
    col_relation
    string

    The relation from a column skeleton to a connector

    +

    Responses

    Map skeleton IDs to neuron base names.

    Map skeleton IDs to neuron base names.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skids[]
    required
    string

    IDs of the skeletons to query name for

    +

    Responses

    Export an extended SWC file. It includes a creation user name, creation

    Export an extended SWC file. It includes a creation user name, creation timestamp, editor user name and edition time stamp as well as a condidence value in range [0,5].

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/skeleton/{skeleton_id}/eswc
    http://localhost:8000http://localhost:8000/{project_id}/skeleton/{skeleton_id}/eswc

    Export a skeleton as standard SWC file.

    Export a skeleton as standard SWC file.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/skeleton/{skeleton_id}/swc
    http://localhost:8000http://localhost:8000/{project_id}/skeleton/{skeleton_id}/swc

    skeletons

    List skeletons matching filtering criteria.

    List skeletons matching filtering criteria.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    Export a skeleton as standard SWC file.

    Export a skeleton as standard SWC file.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    skeletons

    List skeletons matching filtering criteria.

    List skeletons matching filtering criteria.

    The result set is the intersection of skeletons matching criteria (the criteria are conjunctive) unless stated otherwise.

    -
    path Parameters
    project_id
    required
    string
    query Parameters
    created_by
    string

    Filter for user ID of the skeletons' creator.

    -
    reviewed_by
    string

    Filter for user ID of the skeletons' reviewer.

    -
    from_date
    string

    Filter for skeletons with nodes created after this date.

    -
    to_date
    string

    Filter for skeletons with nodes created before this date.

    -
    nodecount_gt
    string

    Filter for skeletons with more nodes than this threshold. Removes +

    path Parameters
    project_id
    required
    string
    query Parameters
    created_by
    string

    Filter for user ID of the skeletons' creator.

    +
    reviewed_by
    string

    Filter for user ID of the skeletons' reviewer.

    +
    from_date
    string

    Filter for skeletons with nodes created after this date.

    +
    to_date
    string

    Filter for skeletons with nodes created before this date.

    +
    nodecount_gt
    string

    Filter for skeletons with more nodes than this threshold. Removes all other criteria.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/

    Get the cable length of a set of skeletons.

    Get the cable length of a set of skeletons.

    +

    Responses

    Get the cable length of a set of skeletons.

    Get the cable length of a set of skeletons.

    Returns a mapping from skeleton ID to cable length.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query cable-length for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/cable-length
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/cable-length

    Get the cable length of a set of skeletons.

    Get the cable length of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query cable-length for

    +

    Responses

    Get the cable length of a set of skeletons.

    Get the cable length of a set of skeletons.

    Returns a mapping from skeleton ID to cable length.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query cable-length for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/cable-length
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/cable-length

    Return the history of all skeletons ID changes in a project over time.

    Return the history of all skeletons ID changes in a project over time. +

    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query cable-length for

    +

    Responses

    Return the history of all skeletons ID changes in a project over time.

    Return the history of all skeletons ID changes in a project over time. Optionally, this can be constrained by a user ID and a time window.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    initial_user_id
    string

    User who caused the first change in all returned skeleton.

    -
    changes_after
    string

    Date of format YYYY-MM-DDTHH:mm:ss, only the date part is required. +

    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    initial_user_id
    string

    User who caused the first change in all returned skeleton.

    +
    changes_after
    string

    Date of format YYYY-MM-DDTHH:mm:ss, only the date part is required. Limits returns history to skeleton changes after this date.

    -
    changes_before
    string

    Date of format YYYY-MM-DDTHH:mm:ss, only the date part is required. +

    changes_before
    string

    Date of format YYYY-MM-DDTHH:mm:ss, only the date part is required. Limits returns history to skeleton changes before this date.

    -
    skeleton_ids
    string

    Skeleton IDs of the initial set of treenodes.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/change-history
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/change-history

    Get a compact treenode representation of a list of skeletons, optionally

    Get a compact treenode representation of a list of skeletons, optionally +

    skeleton_ids
    string

    Skeleton IDs of the initial set of treenodes.

    +

    Responses

    Get a compact treenode representation of a list of skeletons, optionally

    Get a compact treenode representation of a list of skeletons, optionally with the history of individual nodes and connectors.

    Returns, in JSON, [[nodes], [connectors], {nodeID: [tags]}], with connectors and tags being empty when 0 == with_connectors and 0 == @@ -750,18 +940,18 @@ data. This requires the client to do slightly more work, but unfortunately the original creation time is needed for data that was created without history tables enabled.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    string
    with_connectors
    string

    Whether linked connectors should be returned.

    -
    with_tags
    string

    Whether tags should be returned.

    -
    with_history
    string

    Whether history information should be returned for each treenode and connector.

    -
    with_merge_history
    string

    Whether the history of arbors merged into the requested skeleton should be returned. Only used if history is returned.

    -
    with_reviews
    string

    Whether a node index should be returned that maps node IDs to the +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    string
    with_connectors
    string

    Whether linked connectors should be returned.

    +
    with_tags
    string

    Whether tags should be returned.

    +
    with_history
    string

    Whether history information should be returned for each treenode and connector.

    +
    with_merge_history
    string

    Whether the history of arbors merged into the requested skeleton should be returned. Only used if history is returned.

    +
    with_reviews
    string

    Whether a node index should be returned that maps node IDs to the list of reviews done on them, respects history parameter.

    -
    with_annotations
    string

    Whether the list of linked annotations should be returned. If history +

    with_annotations
    string

    Whether the list of linked annotations should be returned. If history should be returned, returns all link versions.

    -
    with_user_info
    string

    Whether all result elements should contain also the creator ID.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/compact-detail
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/compact-detail

    Obtain completeness information for a set of skeleton IDs.

    Obtain completeness information for a set of skeleton IDs.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/completeness
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/completeness

    Obtain completeness information for a set of skeleton IDs.

    Obtain completeness information for a set of skeleton IDs.

    -
    path Parameters
    project_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/completeness
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/completeness

    Get a synaptic graph between skeletons compartmentalized by confidence.

    Get a synaptic graph between skeletons compartmentalized by confidence.

    +
    with_user_info
    string

    Whether all result elements should contain also the creator ID.

    +

    Responses

    Obtain completeness information for a set of skeleton IDs.

    Obtain completeness information for a set of skeleton IDs.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Obtain completeness information for a set of skeleton IDs.

    Obtain completeness information for a set of skeleton IDs.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Get a synaptic graph between skeletons compartmentalized by confidence.

    Get a synaptic graph between skeletons compartmentalized by confidence.

    Given a set of skeletons, retrieve presynaptic-to-postsynaptic edges between them, annotated with count. If a confidence threshold is supplied, compartmentalize the skeletons at edges in the arbor @@ -769,173 +959,176 @@ compartments.

    When skeletons are split into compartments, nodes in the graph take an string ID like {skeleton_id}_{compartment #}.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to graph

    -
    confidence_threshold
    string

    Confidence value below which to segregate compartments

    -
    bandwidth
    string

    Bandwidth in nanometers

    -
    cable_spread
    string

    Cable spread in nanometers

    -
    expand[]
    string

    IDs of the skeletons to expand

    -
    link_types[]
    string

    IDs of link types to respect

    -
    allowed_connector_ids[]
    string

    (Optional) IDs of allowed conectors. All other connectors will be ignored.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/confidence-compartment-subgraph
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/confidence-compartment-subgraph

    Retrieve a list of down/up-stream partners of a set of skeletons.

    Retrieve a list of down/up-stream partners of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to graph

    +
    confidence_threshold
    string

    Confidence value below which to segregate compartments

    +
    bandwidth
    string

    Bandwidth in nanometers

    +
    cable_spread
    string

    Cable spread in nanometers

    +
    expand[]
    string

    IDs of the skeletons to expand

    +
    link_types[]
    string

    IDs of link types to respect

    +
    allowed_connector_ids[]
    string

    (Optional) IDs of allowed conectors. All other connectors will be ignored.

    +

    Responses

    Retrieve a list of down/up-stream partners of a set of skeletons.

    Retrieve a list of down/up-stream partners of a set of skeletons.

    From a queried set of source skeletons, find all upstream and downstream partners, the number of synapses between each source and each partner, and a list of reviewers for each partner set. Confidence distributions for each synapse count are included. Optionally find only those partners that are common between the source skeleton set.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    source_skeleton_ids
    required
    string

    IDs of the skeletons whose partners to find

    -
    boolean_op
    required
    string

    Whether to find partners of any source skeleton ("OR") or partners +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    source_skeleton_ids
    required
    string

    IDs of the skeletons whose partners to find

    +
    boolean_op
    required
    string

    Whether to find partners of any source skeleton ("OR") or partners common to all source skeletons ("AND")

    -
    with_nodes
    string

    Whether to return detailed connectivity information that includes +

    with_nodes
    string

    Whether to return detailed connectivity information that includes partner sites.

    -
    link_types
    string

    A list of allowed link types: incoming, outgoing, abutting, +

    link_types
    string

    A list of allowed link types: incoming, outgoing, abutting, gapjunction, tightjunction, desmosome, attachment, close_object.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/connectivity
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/connectivity

    Get the number of synapses per type for r a set of skeletons.

    Get the number of synapses per type for r a set of skeletons.

    +

    Responses

    Get the number of synapses per type for r a set of skeletons.

    Get the number of synapses per type for r a set of skeletons.

    Returns an object with to fields. The first, connectivity, is a mapping from skeleton ID to objects that map a relation ID to connectivity count for that particular relation. The second field of the returned object, relations, maps relation IDs used in the first field to relation names.

    -
    path Parameters
    project_id
    required
    string

    Project of work in

    -
    count_partner_links
    required
    string

    Whether to count partner links or links to a connector.

    -
    Request Body schema: application/x-www-form-urlencoded
    source_relations[]
    string

    A list of pre-connector relations that have to be used

    -
    target_relations[]
    string

    A list of post-connector relations that have to be used

    -
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to count

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/connectivity-counts
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/connectivity-counts

    Get the number of synapses per type for r a set of skeletons.

    Get the number of synapses per type for r a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project of work in

    +
    count_partner_links
    required
    string

    Whether to count partner links or links to a connector.

    +
    Request Body schema: application/x-www-form-urlencoded
    source_relations[]
    string

    A list of pre-connector relations that have to be used

    +
    target_relations[]
    string

    A list of post-connector relations that have to be used

    +
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to count

    +

    Responses

    Get the number of synapses per type for r a set of skeletons.

    Get the number of synapses per type for r a set of skeletons.

    Returns an object with to fields. The first, connectivity, is a mapping from skeleton ID to objects that map a relation ID to connectivity count for that particular relation. The second field of the returned object, relations, maps relation IDs used in the first field to relation names.

    -
    path Parameters
    project_id
    required
    string

    Project of work in

    -
    count_partner_links
    required
    string

    Whether to count partner links or links to a connector.

    -
    Request Body schema: application/x-www-form-urlencoded
    source_relations[]
    string

    A list of pre-connector relations that have to be used

    -
    target_relations[]
    string

    A list of post-connector relations that have to be used

    -
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to count

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/connectivity-counts
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/connectivity-counts

    Return a CSV file that represents the connectivity matrix of a set of row

    Return a CSV file that represents the connectivity matrix of a set of row +

    path Parameters
    project_id
    required
    string

    Project of work in

    +
    count_partner_links
    required
    string

    Whether to count partner links or links to a connector.

    +
    Request Body schema: application/x-www-form-urlencoded
    source_relations[]
    string

    A list of pre-connector relations that have to be used

    +
    target_relations[]
    string

    A list of post-connector relations that have to be used

    +
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to count

    +

    Responses

    Return a CSV file that represents the connectivity matrix of a set of row

    Return a CSV file that represents the connectivity matrix of a set of row skeletons and a set of column skeletons.

    -
    path Parameters
    project_id
    required
    string

    Project of skeletons

    -
    Request Body schema: application/x-www-form-urlencoded
    rows
    required
    string

    IDs of row skeletons

    -
    columns
    required
    string

    IDs of column skeletons

    -
    names
    string

    An optional mapping of skeleton IDs versus names. +

    path Parameters
    project_id
    required
    string

    Project of skeletons

    +
    Request Body schema: application/x-www-form-urlencoded
    rows
    required
    string

    IDs of row skeletons

    +
    columns
    required
    string

    IDs of column skeletons

    +
    names
    string

    An optional mapping of skeleton IDs versus names. Represented as a list of two-element lists. Each inner list follows the form [, ].

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/connectivity_matrix/csv
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/connectivity_matrix/csv

    Find mappings to existing skeletons for potential imports.

    Find mappings to existing skeletons for potential imports.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    source_url
    required
    string

    Source URL of skeletons

    -
    source_project_id
    required
    string

    Source project ID of skeletons

    -
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/from-origin
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/from-origin

    Find mappings to existing skeletons for potential imports.

    Find mappings to existing skeletons for potential imports.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    source_url
    required
    string

    Source URL of skeletons

    -
    source_project_id
    required
    string

    Source project ID of skeletons

    -
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/from-origin
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/from-origin

    Import a neuron modeled by a skeleton from an uploaded file.

    Import a neuron modeled by a skeleton from an uploaded file.

    +
    row_relation
    string

    The relation from a row skeleton to a connector

    +
    col_relation
    string

    The relation from a column skeleton to a connector

    +

    Responses

    Find mappings to existing skeletons for potential imports.

    Find mappings to existing skeletons for potential imports.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    source_url
    required
    string

    Source URL of skeletons

    +
    source_project_id
    required
    string

    Source project ID of skeletons

    +
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    +

    Responses

    Find mappings to existing skeletons for potential imports.

    Find mappings to existing skeletons for potential imports.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    source_url
    required
    string

    Source URL of skeletons

    +
    source_project_id
    required
    string

    Source project ID of skeletons

    +
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    +

    Responses

    Import a neuron modeled by a skeleton from an uploaded file.

    Import a neuron modeled by a skeleton from an uploaded file.

    Currently only SWC and eSWC representation is supported.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    neuron_id
    string

    If specified a request for a particular neuron ID is expressed. If force = true, this request is enforced and the existing neuron ID (and all its skeletons) is replaced (as long as they are in the target project). If force = false (default), the neuron ID is only used if available and a new one is generated otherwise.

    -
    skeleton_id
    string

    If specified a request for a particular skeleton ID is expressed. If force = true, this request is enforced and the existing skeleton ID (and all its neurons) is replaced (as long as they are in the target project). If force = false (default), the skeleton ID is only used if available and a new one is generated otherwise.

    -
    force
    string

    If neuron_id or skeleton_id are passed in, existing neuron/skeleton instances in this project are replaced. All their respectively linked skeletons and neurons will be removed.

    -
    auto_id
    string

    If a passed in neuron ID or skeleton ID is already in use, a new ID will be selected automatically (default). If auto_id is set to false, an error is raised in this situation.

    -
    name
    string

    If specified, the name of a new neuron will be set to this.

    -
    annotations
    string

    An optional list of annotation names that is added to the imported skeleton.

    -
    source_id
    string

    If specified, this source ID will be saved and mapped to the new skeleton ID.

    -
    source_project_id
    string

    If specified, this source project ID will be saved and mapped to the new skeleton ID. This is only valid together with source_id and source_url.

    -
    source_url
    string

    If specified, this source URL will be saved and mapped to the new skeleton ID.

    -
    source_type
    string

    Can be either 'skeleton' or 'segmentation', to further specify of what type the origin data is.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/import
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/import

    Get information on imported nodes of a set of skeletons.

    Get information on imported nodes of a set of skeletons.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get import information for.

    -
    with_treenodes
    string

    Whether to include IDs of all imported nodes in response.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/import-info
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/import-info

    Get information on imported nodes of a set of skeletons.

    Get information on imported nodes of a set of skeletons.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get import information for.

    -
    with_treenodes
    string

    Whether to include IDs of all imported nodes in response.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/import-info
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/import-info

    Get a list of all skeletons that intersect with the passed in bounding

    Get a list of all skeletons that intersect with the passed in bounding -box. Optionally, only a subsed of passed in skeletons can be tested against.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    -
    minx
    required
    string

    Minimum world space X coordinate

    -
    miny
    required
    string

    Minimum world space Y coordinate

    -
    minz
    required
    string

    Minimum world space Z coordinate

    -
    maxx
    required
    string

    Maximum world space X coordinate

    -
    maxy
    required
    string

    Maximum world space Y coordinate

    -
    maxz
    required
    string

    Maximum world space Z coordinate

    -
    min_nodes
    string

    A minimum number of nodes per result skeleton

    -
    min_cable
    string

    A minimum number of cable length per result skeleton

    -
    volume_id
    string

    Alternative to manual bounding box definition. The bounding box of the +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    neuron_id
    string

    If specified a request for a particular neuron ID is expressed. If force = true, this request is enforced and the existing neuron ID (and all its skeletons) is replaced (as long as they are in the target project). If force = false (default), the neuron ID is only used if available and a new one is generated otherwise.

    +
    skeleton_id
    string

    If specified a request for a particular skeleton ID is expressed. If force = true, this request is enforced and the existing skeleton ID (and all its neurons) is replaced (as long as they are in the target project). If force = false (default), the skeleton ID is only used if available and a new one is generated otherwise.

    +
    force
    string

    If neuron_id or skeleton_id are passed in, existing neuron/skeleton instances in this project are replaced. All their respectively linked skeletons and neurons will be removed.

    +
    auto_id
    string

    If a passed in neuron ID or skeleton ID is already in use, a new ID will be selected automatically (default). If auto_id is set to false, an error is raised in this situation.

    +
    name
    string

    If specified, the name of a new neuron will be set to this.

    +
    annotations
    string

    An optional list of annotation names that is added to the imported skeleton.

    +
    replace_annotations
    string

    If enabled and an existing neuron is replaced with a new skeleton, then all existing annotations of the target neuron are replaced with the annotations passed in or the default 'Import' annotations. If disabled, the existing annotations remaind and the passed in annotations or the default 'Import' annotation are appended (default). For newly created skelteons, this option has no relevance.

    +
    source_id
    string

    If specified, this source ID will be saved and mapped to the new skeleton ID.

    +
    source_project_id
    string

    If specified, this source project ID will be saved and mapped to the new skeleton ID. This is only valid together with source_id and source_url.

    +
    source_url
    string

    If specified, this source URL will be saved and mapped to the new skeleton ID.

    +
    source_type
    string

    Can be either 'skeleton' or 'segmentation', to further specify of what type the origin data is.

    +

    Responses

    Get information on imported nodes of a set of skeletons.

    Get information on imported nodes of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get import information for.

    +
    with_treenodes
    string

    Whether to include IDs of all imported nodes in response.

    +

    Responses

    Get information on imported nodes of a set of skeletons.

    Get information on imported nodes of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get import information for.

    +
    with_treenodes
    string

    Whether to include IDs of all imported nodes in response.

    +

    Responses

    Get a list of all skeletons that intersect with the query bounding

    Get a list of all skeletons that intersect with the query bounding +box. Optionally, only a subset of passed in skeletons can be tested against.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    +
    minx
    required
    string

    Minimum world space X coordinate

    +
    miny
    required
    string

    Minimum world space Y coordinate

    +
    minz
    required
    string

    Minimum world space Z coordinate

    +
    maxx
    required
    string

    Maximum world space X coordinate

    +
    maxy
    required
    string

    Maximum world space Y coordinate

    +
    maxz
    required
    string

    Maximum world space Z coordinate

    +
    min_nodes
    string

    A minimum number of nodes per result skeleton

    +
    min_cable
    string

    A minimum number of cable length per result skeleton

    +
    volume_id
    string

    Alternative to manual bounding box definition. The bounding box of the volume is used.

    -
    skeleton_ids
    string

    An optional list of skeleton IDs that should only be tested againt. If +

    skeleton_ids
    string

    An optional list of skeleton IDs that should only be tested againt. If used, the result will only contain skeletons of this set.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/in-bounding-box
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/in-bounding-box

    Get a list of all skeletons that intersect with the passed in bounding

    Get a list of all skeletons that intersect with the passed in bounding -box. Optionally, only a subsed of passed in skeletons can be tested against.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    -
    minx
    required
    string

    Minimum world space X coordinate

    -
    miny
    required
    string

    Minimum world space Y coordinate

    -
    minz
    required
    string

    Minimum world space Z coordinate

    -
    maxx
    required
    string

    Maximum world space X coordinate

    -
    maxy
    required
    string

    Maximum world space Y coordinate

    -
    maxz
    required
    string

    Maximum world space Z coordinate

    -
    min_nodes
    string

    A minimum number of nodes per result skeleton

    -
    min_cable
    string

    A minimum number of cable length per result skeleton

    -
    volume_id
    string

    Alternative to manual bounding box definition. The bounding box of the +

    Responses

    Get a list of all skeletons that intersect with the query bounding

    Get a list of all skeletons that intersect with the query bounding +box. Optionally, only a subset of passed in skeletons can be tested against.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    limit
    string

    Limit the number of returned nodes.

    +
    minx
    required
    string

    Minimum world space X coordinate

    +
    miny
    required
    string

    Minimum world space Y coordinate

    +
    minz
    required
    string

    Minimum world space Z coordinate

    +
    maxx
    required
    string

    Maximum world space X coordinate

    +
    maxy
    required
    string

    Maximum world space Y coordinate

    +
    maxz
    required
    string

    Maximum world space Z coordinate

    +
    min_nodes
    string

    A minimum number of nodes per result skeleton

    +
    min_cable
    string

    A minimum number of cable length per result skeleton

    +
    volume_id
    string

    Alternative to manual bounding box definition. The bounding box of the volume is used.

    -
    skeleton_ids
    string

    An optional list of skeleton IDs that should only be tested againt. If +

    skeleton_ids
    string

    An optional list of skeleton IDs that should only be tested againt. If used, the result will only contain skeletons of this set.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/in-bounding-box
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/in-bounding-box

    Return relationship between label IDs and skeleton IDs

    Return relationship between label IDs and skeleton IDs

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    label_ids[]
    required
    string

    IDs of the labels to find skeletons associated with

    -
    label_names[]
    required
    string

    Alternative to label_ids to pass in a list label names.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/node-labels
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/node-labels

    Return relationship between label IDs and skeleton IDs

    Return relationship between label IDs and skeleton IDs

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    label_ids[]
    required
    string

    IDs of the labels to find skeletons associated with

    -
    label_names[]
    required
    string

    Alternative to label_ids to pass in a list label names.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/node-labels
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/node-labels

    Get origin information of a set of skeletons.

    Get origin information of a set of skeletons.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get origin for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/origin
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/origin

    Get origin information of a set of skeletons.

    Get origin information of a set of skeletons.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get origin for

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/origin
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/origin

    Retrieve the review status for a collection of skeletons.

    Retrieve the review status for a collection of skeletons.

    +

    Responses

    Return relationship between label IDs and skeleton IDs

    Return relationship between label IDs and skeleton IDs

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    label_ids[]
    required
    string

    IDs of the labels to find skeletons associated with

    +
    label_names[]
    required
    string

    Alternative to label_ids to pass in a list label names.

    +

    Responses

    Return relationship between label IDs and skeleton IDs

    Return relationship between label IDs and skeleton IDs

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    label_ids[]
    required
    string

    IDs of the labels to find skeletons associated with

    +
    label_names[]
    required
    string

    Alternative to label_ids to pass in a list label names.

    +

    Responses

    Get origin information of a set of skeletons.

    Get origin information of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get origin for

    +

    Responses

    Get origin information of a set of skeletons.

    Get origin information of a set of skeletons.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of skeletons to get origin for

    +

    Responses

    Retrieve the review status for a collection of skeletons.

    Retrieve the review status for a collection of skeletons.

    The review status for each skeleton in the request is a tuple of total nodes and number of reviewed nodes (integers). The reviews of only certain users or a reviewer team may be counted instead of all reviews.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to retrieve.

    -
    whitelist
    string

    ID of the user whose reviewer team to use to filter reviews +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to retrieve.

    +
    whitelist
    string

    ID of the user whose reviewer team to use to filter reviews (exclusive to user_ids)

    -
    user_ids[]
    string

    IDs of the users whose reviews should be counted (exclusive +

    user_ids[]
    string

    IDs of the users whose reviews should be counted (exclusive to whitelist)

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/review-status
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/review-status

    Get the number of samplers associated with each skeleton in the passed in

    Get the number of samplers associated with each skeleton in the passed in +

    Responses

    Get the number of samplers associated with each skeleton in the passed in

    Get the number of samplers associated with each skeleton in the passed in last.

    -
    path Parameters
    project_id
    required
    string

    Project of skeleton

    -
    skeleton_ids
    required
    string

    IDs of the skeleton to get the sampler count for.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/sampler-count
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/sampler-count

    Get the original creation time, last edit time, number of nodes, number

    Get the original creation time, last edit time, number of nodes, number +

    path Parameters
    project_id
    required
    string

    Project of skeleton

    +
    skeleton_ids
    required
    string

    IDs of the skeleton to get the sampler count for.

    +

    Responses

    Get the original creation time, last edit time, number of nodes, number

    Get the original creation time, last edit time, number of nodes, number of imported nodes, cable length and last editor information for a list skeleton IDs.

    Returns a mapping from skeleton ID to summary info

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query summary for.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/summary
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/summary

    Get the original creation time, last edit time, number of nodes, number

    Get the original creation time, last edit time, number of nodes, number +

    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query summary for.

    +

    Responses

    Get the original creation time, last edit time, number of nodes, number

    Get the original creation time, last edit time, number of nodes, number of imported nodes, cable length and last editor information for a list skeleton IDs.

    Returns a mapping from skeleton ID to summary info

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query summary for.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/summary
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/summary

    Find out if passed skeleton IDs are valid (and represent present

    Find out if passed skeleton IDs are valid (and represent present +

    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons to query summary for.

    +

    Responses

    Find out if passed skeleton IDs are valid (and represent present

    Find out if passed skeleton IDs are valid (and represent present skeletons).

    Returns all passed in skeletons that are valid.

    -
    path Parameters
    project_id
    required
    string

    Project of landmark

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to find

    -
    return_invalid
    string

    Whether or not to return invalid skeleton IDs rather than valid ones.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/validity
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/validity

    Find out if passed skeleton IDs are valid (and represent present

    Find out if passed skeleton IDs are valid (and represent present +

    path Parameters
    project_id
    required
    string

    Project of landmark

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to find

    +
    return_invalid
    string

    Whether or not to return invalid skeleton IDs rather than valid ones.

    +

    Responses

    Find out if passed skeleton IDs are valid (and represent present

    Find out if passed skeleton IDs are valid (and represent present skeletons).

    Returns all passed in skeletons that are valid.

    -
    path Parameters
    project_id
    required
    string

    Project of landmark

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to find

    -
    return_invalid
    string

    Whether or not to return invalid skeleton IDs rather than valid ones.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/validity
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/validity

    Find skeletons within a given L-infinity distance of a treenode.

    Find skeletons within a given L-infinity distance of a treenode.

    +
    path Parameters
    project_id
    required
    string

    Project of landmark

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids[]
    required
    string

    IDs of the skeletons whose partners to find

    +
    return_invalid
    string

    Whether or not to return invalid skeleton IDs rather than valid ones.

    +

    Responses

    Find skeletons within a given L-infinity distance of a treenode.

    Find skeletons within a given L-infinity distance of a treenode.

    Returns at most 100 results.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode to search around

    -
    distance
    string

    L-infinity distance in nanometers within which to search

    -
    size_mode
    string

    Whether to return skeletons with only one node in the search area +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode to search around

    +
    distance
    string

    L-infinity distance in nanometers within which to search

    +
    size_mode
    string

    Whether to return skeletons with only one node in the search area (1) or more than one node in the search area (0).

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/within-spatial-distance
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/within-spatial-distance

    Get the cable length for a skeleton

    Get the cable length for a skeleton

    -
    path Parameters
    project_id
    required
    string

    Project of landmark

    -
    skeleton_id
    required
    string

    IDs of the skeleton to get the cable length for

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/cable-length
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/cable-length

    Get a compact treenode representation of a skeleton, optionally with the

    Get a compact treenode representation of a skeleton, optionally with the +

    Responses

    Get the cable length for a skeleton

    Get the cable length for a skeleton

    +
    path Parameters
    project_id
    required
    string

    Project of landmark

    +
    skeleton_id
    required
    string

    IDs of the skeleton to get the cable length for

    +

    Responses

    Get a compact treenode representation of a skeleton, optionally with the

    Get a compact treenode representation of a skeleton, optionally with the history of individual nodes and connectors.

    Returns, in JSON, [[nodes], [connectors], {nodeID: [tags]}], with connectors and tags being empty when 0 == with_connectors and 0 == @@ -955,30 +1148,30 @@ data. This requires the client to do slightly more work, but unfortunately the original creation time is needed for data that was created without history tables enabled.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    with_connectors
    string

    Whether linked connectors should be returned.

    -
    with_tags
    string

    Whether tags should be returned.

    -
    with_history
    string

    Whether history information should be returned for each treenode and +

    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    with_connectors
    string

    Whether linked connectors should be returned.

    +
    with_tags
    string

    Whether tags should be returned.

    +
    with_history
    string

    Whether history information should be returned for each treenode and connector.

    -
    with_merge_history
    string

    Whether the history of arbors merged into the requested skeleton should +

    with_merge_history
    string

    Whether the history of arbors merged into the requested skeleton should be returned. Only used if history is returned.

    -
    with_reviews
    string

    Whether a node index should be returned that maps node IDs to the +

    with_reviews
    string

    Whether a node index should be returned that maps node IDs to the list of reviews done on them, respects history parameter.

    -
    with_annotations
    string

    Whether the list of linked annotations should be returned. If history +

    with_annotations
    string

    Whether the list of linked annotations should be returned. If history should be returned, returns all link versions.

    -
    with_user_info
    string

    Whether all result elements should contain also the creator ID.

    -
    ordered
    string

    Whether result skeletons should be ordered by ID.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/compact-detail
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/compact-detail

    List nodes in a skeleton with labels matching a query.

    List nodes in a skeleton with labels matching a query.

    +
    with_user_info
    string

    Whether all result elements should contain also the creator ID.

    +
    ordered
    string

    Whether result skeletons should be ordered by ID.

    +

    Responses

    List nodes in a skeleton with labels matching a query.

    List nodes in a skeleton with labels matching a query.

    Find all nodes in this skeleton with labels (front-end node tags) matching a regular expression, sort them by ascending path distance from a treenode in the skeleton, and return the result.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode for path length distances

    -
    label_regex
    required
    string

    Regular expression query to match labels

    -
    only_leaves
    string

    Whether to only return information on leaf nodes.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/{skeleton_id}/find-labels
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/find-labels

    Export a morphology-only skeleton in neuroglancer's binary format.

    Export a morphology-only skeleton in neuroglancer's binary format.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/neuroglancer
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/neuroglancer

    Get information on a skeleton's treenodes, reviews and labels.

    Get information on a skeleton's treenodes, reviews and labels.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in

    -
    skeleton_id
    required
    string

    The skeleton to get information on

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/node-overview
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/node-overview

    List open leaf nodes in a skeleton.

    List open leaf nodes in a skeleton.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode for path length distances

    +
    label_regex
    required
    string

    Regular expression query to match labels

    +
    only_leaves
    string

    Whether to only return information on leaf nodes.

    +

    Responses

    skeletons_id_create

    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    Export a morphology-only skeleton in neuroglancer's binary format.

    Export a morphology-only skeleton in neuroglancer's binary format.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    Get information on a skeleton's treenodes, reviews and labels.

    Get information on a skeleton's treenodes, reviews and labels.

    +
    path Parameters
    project_id
    required
    string

    The project to operate in

    +
    skeleton_id
    required
    string

    The skeleton to get information on

    +

    Responses

    List open leaf nodes in a skeleton.

    List open leaf nodes in a skeleton.

    Return a list of the ID and location of open leaf nodes in a skeleton, their path length distance to the specified treenode, and their creation time.

    @@ -986,73 +1179,75 @@ a particular regex.

    .. note:: This endpoint is used interactively by the client so performance is critical.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode for path length distances

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/{skeleton_id}/open-leaves
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/open-leaves

    Export skeleton as a set of segments with per-node review information.

    Export skeleton as a set of segments with per-node review information.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    treenode_id
    required
    string

    ID of the origin treenode for path length distances

    +

    Responses

    Export skeleton as a set of segments with per-node review information.

    Export skeleton as a set of segments with per-node review information.

    Export the skeleton as a list of segments of non-branching node paths, with detailed information on reviewers and review times for each node.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    subarbor_node_id
    string

    If provided, only the subarbor starting at this treenode is returned.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/skeletons/{skeleton_id}/review
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/review

    Retrieve ID and location of the skeleton's root treenode.

    Retrieve ID and location of the skeleton's root treenode.

    -
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/root
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/root

    Get the number of samplers associated with this skeleton.

    Get the number of samplers associated with this skeleton.

    -
    path Parameters
    project_id
    required
    string

    Project of skeleton

    -
    skeleton_id
    required
    string

    ID of the skeleton to get the sampler count for.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/skeletons/{skeleton_id}/sampler-count
    http://localhost:8000http://localhost:8000/{project_id}/skeletons/{skeleton_id}/sampler-count

    stats

    Get the largest skeletons based on cable length.

    Get the largest skeletons based on cable length.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/stats/cable-length
    http://localhost:8000http://localhost:8000/{project_id}/stats/cable-length

    Get the total number of edited nodes per user.

    Get the total number of edited nodes per user.

    -
    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/stats/editor
    http://localhost:8000http://localhost:8000/{project_id}/stats/editor

    Get the total number of created nodes per user.

    Get the total number of created nodes per user.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    with_imports
    string

    Whether data added through imports should be respected.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/stats/nodecount
    http://localhost:8000http://localhost:8000/{project_id}/stats/nodecount

    stats_server_list

    path Parameters
    project_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/stats/server
    http://localhost:8000http://localhost:8000/{project_id}/stats/server

    Get per user contribution statistics

    Get per user contribution statistics

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    subarbor_node_id
    string

    If provided, only the subarbor starting at this treenode is returned.

    +

    Responses

    Retrieve ID and location of the skeleton's root treenode.

    Retrieve ID and location of the skeleton's root treenode.

    +
    path Parameters
    project_id
    required
    string
    skeleton_id
    required
    string

    Responses

    Get the number of samplers associated with this skeleton.

    Get the number of samplers associated with this skeleton.

    +
    path Parameters
    project_id
    required
    string

    Project of skeleton

    +
    skeleton_id
    required
    string

    ID of the skeleton to get the sampler count for.

    +

    Responses

    stats

    stats_aggregates_list

    path Parameters
    project_id
    required
    string

    Responses

    Get the largest skeletons based on cable length.

    Get the largest skeletons based on cable length.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Get the total number of edited nodes per user.

    Get the total number of edited nodes per user.

    +
    path Parameters
    project_id
    required
    string

    Responses

    Get the total number of created nodes per user.

    Get the total number of created nodes per user.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    with_imports
    string

    Whether data added through imports should be respected.

    +

    Responses

    stats_server_list

    path Parameters
    project_id
    required
    string

    Responses

    Get per user contribution statistics

    Get per user contribution statistics

    A date range can be provided to limit the scope of the returned statiscis. By default, the statistics for the last ten days is returned. The returned data includes created cable length, the number of created synaptic connections and the number of reviews made, per day and user.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    start_date
    string

    If provided (YYYY-MM-DD), only statistics from this day on are returned (inclusive).

    -
    end_date
    string

    If provided (YYYY-MM-DD), only statistics to this day on are returned (inclusive).

    -
    time_zone
    string

    Optional time zone for the date range, e.g. "US/Eastern"

    -
    with_imports
    string

    Whether or not to return information on the imported number of nodes and +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    start_date
    string

    If provided (YYYY-MM-DD), only statistics from this day on are returned (inclusive).

    +
    end_date
    string

    If provided (YYYY-MM-DD), only statistics to this day on are returned (inclusive).

    +
    time_zone
    string

    Optional time zone for the date range, e.g. "US/Eastern"

    +
    with_imports
    string

    Whether or not to return information on the imported number of nodes and cable length.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/stats/user-history
    http://localhost:8000http://localhost:8000/{project_id}/stats/user-history

    transactions

    Get a collection of all available transactions in the passed in project.

    Get a collection of all available transactions in the passed in project.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    range_start
    string

    The first result element index.

    -
    range_length
    string

    The maximum number result elements.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/transactions/
    http://localhost:8000http://localhost:8000/{project_id}/transactions/

    Try to associate a location in the passed in project for a particular

    Try to associate a location in the passed in project for a particular +

    Responses

    transactions

    Get a collection of all available transactions in the passed in project.

    Get a collection of all available transactions in the passed in project.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    range_start
    string

    The first result element index.

    +
    range_length
    string

    The maximum number result elements.

    +
    user_id
    string

    The user ID to retrieve transactions for.

    +
    type
    string

    The type of log entry to retriee.

    +

    Responses

    Try to associate a location in the passed in project for a particular

    Try to associate a location in the passed in project for a particular transaction.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    transaction_id
    required
    string

    Transaction ID in question

    -
    execution_time
    required
    string

    Execution time of the transaction

    -
    label
    string

    Optional label of the transaction to avoid extra lookup

    -

    Responses

    200
    get http://localhost:8000/{project_id}/transactions/location
    http://localhost:8000http://localhost:8000/{project_id}/transactions/location

    treenodes

    Retrieve node information in a compact form. A list of elements of the

    Retrieve node information in a compact form. A list of elements of the +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    transaction_id
    required
    string

    Transaction ID in question

    +
    execution_time
    required
    string

    Execution time of the transaction

    +
    label
    string

    Optional label of the transaction to avoid extra lookup

    +

    Responses

    treenodes

    Retrieve node information in a compact form. A list of elements of the

    Retrieve node information in a compact form. A list of elements of the following form is returned:

    [ID, parent ID, x, y, z, confidence, radius, skeleton_id, edition_time, user_id]

    The returned edition time is an epoch number.

    -
    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project to work in

    -
    treenode_ids
    string

    A list of treeonde IDs to return information on

    -
    label_ids
    string

    A list of label IDs that must be linked to result treenodes. Alternative +

    Request Body schema: application/x-www-form-urlencoded
    project_id
    required
    string

    Project to work in

    +
    treenode_ids
    string

    A list of treeonde IDs to return information on

    +
    label_ids
    string

    A list of label IDs that must be linked to result treenodes. Alternative to explicit treenode IDs and label names.

    -
    label_names
    string

    A list of label names that must be linked to result treenodes. +

    label_names
    string

    A list of label names that must be linked to result treenodes. Alternative to explicit treenode IDs and label IDs

    -
    skeleton_ids
    string

    A list of skeleton IDs that result skeletons have to be part of.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/treenodes/compact-detail
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/compact-detail

    Retrieve node information in a compact form. A list of the following form

    Retrieve node information in a compact form. A list of the following form +

    skeleton_ids
    string

    A list of skeleton IDs that result skeletons have to be part of.

    +

    Responses

    Retrieve node information in a compact form. A list of the following form

    Retrieve node information in a compact form. A list of the following form is returned:

    [ID, parent ID, x, y, z, confidence, radius, skeleton_id, edition_time, user_id]

    The returned edition time is an epoch number.

    -
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/treenodes/{treenode_id}/compact-detail
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/compact-detail

    Update confidence of edge between a node to either its parent or its

    Update confidence of edge between a node to either its parent or its +

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    Update confidence of edge between a node to either its parent or its

    Update confidence of edge between a node to either its parent or its connectors.

    The connection between a node and its parent or the connectors it is linked to can be rated with a confidence value in the range 1-5. If connector links should be updated, one can limit the affected connections to a specific connector. Returned is an object, mapping updated partners to their old confidences.

    -
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    new_confidence
    required
    string

    New confidence, value in range 1-5

    -
    to_connector
    string

    Whether all linked connectors instead of parent should be updated

    -
    partner_ids
    string

    Limit update to a set of connectors if to_connector is true

    -
    partner_confidences
    string

    Set different confidences to connectors in

    -

    Responses

    201
    post http://localhost:8000/{project_id}/treenodes/{treenode_id}/confidence
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/confidence

    Retrieve the user ID of the user who imported the passed in treenode. If

    Retrieve the user ID of the user who imported the passed in treenode. If +

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    new_confidence
    required
    string

    New confidence, value in range 1-5

    +
    to_connector
    string

    Whether all linked connectors instead of parent should be updated

    +
    partner_ids
    string

    Limit update to a set of connectors if to_connector is true

    +
    partner_confidences
    string

    Set different confidences to connectors in

    +

    Responses

    Retrieve the user ID of the user who imported the passed in treenode. If

    Retrieve the user ID of the user who imported the passed in treenode. If this node wasn't imported, return None.

    -
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/treenodes/{treenode_id}/importing-user
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/importing-user

    Retrieve skeleton and neuron information about this treenode.

    Retrieve skeleton and neuron information about this treenode.

    -
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/treenodes/{treenode_id}/info
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/info

    treenodes_suppressed-virtual_list

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/

    treenodes_suppressed-virtual_create

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/

    treenodes_suppressed-virtual_delete

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string
    suppressed_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/{suppressed_id}
    http://localhost:8000http://localhost:8000/{project_id}/treenodes/{treenode_id}/suppressed-virtual/{suppressed_id}

    volumes

    Get a collection of all available volumes.

    Get a collection of all available volumes.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    volume_ids
    string

    Only return specified volumes

    -

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/

    Get a collection of all available volumes.

    Get a collection of all available volumes.

    -
    path Parameters
    project_id
    required
    string

    Project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    volume_ids
    string

    Only return specified volumes

    -

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/

    Create a new volume

    Create a new volume

    +
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    Retrieve skeleton and neuron information about this treenode.

    Retrieve skeleton and neuron information about this treenode.

    +
    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    treenodes_suppressed-virtual_list

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    treenodes_suppressed-virtual_create

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string

    Responses

    treenodes_suppressed-virtual_delete

    path Parameters
    project_id
    required
    string
    treenode_id
    required
    string
    suppressed_id
    required
    string

    Responses

    user-project-tokens

    user-project-tokens_list

    path Parameters
    project_id
    required
    string

    Responses

    volumes

    Get a collection of all available volumes.

    Get a collection of all available volumes.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    volume_ids
    string

    Only return specified volumes

    +

    Responses

    Get a collection of all available volumes.

    Get a collection of all available volumes.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    volume_ids
    string

    Only return specified volumes

    +

    Responses

    Create a new volume

    Create a new volume

    The ID of the newly created volume is returned. Currently, box volumes and triangle meshes are supported. Which one is created depends on the "type" parameter, which can be either set to "box" or to "trimesh".

    @@ -1063,40 +1258,62 @@ array of triangles also contains three element lists as items. Each one represents a triangle based on the points in the other array, that are referenced by the triangle index values.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    type
    required
    string

    Type of volume to create

    -
    title
    required
    string

    Title of volume

    -
    comment
    string

    An optional comment

    -
    mesh
    string

    Triangle mesh

    -
    minx
    string

    Minimum x coordinate of box

    -
    miny
    string

    Minimum y coordinate of box

    -
    minz
    string

    Minimum z coordinate of box

    -
    maxx
    string

    Maximum x coordinate of box

    -
    maxy
    string

    Maximum y coordinate of box

    -
    maxz
    string

    Maximum z coordinate of box

    -

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/add
    http://localhost:8000http://localhost:8000/{project_id}/volumes/add

    Retrieve a mapping of volume IDs to entity (class instance) IDs.

    Retrieve a mapping of volume IDs to entity (class instance) IDs.

    -
    path Parameters
    project_id
    required
    string
    query Parameters
    volume_ids
    string

    A list of volume IDs to map

    -

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/entities/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/entities/

    Import triangle mesh volumes from an uploaded files.

    Import triangle mesh volumes from an uploaded files.

    +
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded
    type
    required
    string

    Type of volume to create

    +
    title
    required
    string

    Title of volume

    +
    comment
    string

    An optional comment

    +
    mesh
    string

    Triangle mesh

    +
    minx
    string

    Minimum x coordinate of box

    +
    miny
    string

    Minimum y coordinate of box

    +
    minz
    string

    Minimum z coordinate of box

    +
    maxx
    string

    Maximum x coordinate of box

    +
    maxy
    string

    Maximum y coordinate of box

    +
    maxz
    string

    Maximum z coordinate of box

    +

    Responses

    Retrieve a mapping of volume IDs to entity (class instance) IDs.

    Retrieve a mapping of volume IDs to entity (class instance) IDs.

    +
    path Parameters
    project_id
    required
    string
    query Parameters
    volume_ids
    string

    A list of volume IDs to map

    +

    Responses

    Find mappings to existing volumes for the passed in entity (class

    Find mappings to existing volumes for the passed in entity (class +instance) IDs..

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    entity_ids[]
    required
    string

    IDs of the entity IDs to get volumes for

    +

    Responses

    Find mappings to existing volumes for the passed in entity (class

    Find mappings to existing volumes for the passed in entity (class +instance) IDs..

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    entity_ids[]
    required
    string

    IDs of the entity IDs to get volumes for

    +

    Responses

    Find mappings to existing volumes for potential imports.

    Find mappings to existing volumes for potential imports.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    source_url
    required
    string

    Source URL of volumes. If not provided, this server is assumed to be the source.

    +
    source_project_id
    required
    string

    Source project ID of volumes

    +
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    +

    Responses

    Find mappings to existing volumes for potential imports.

    Find mappings to existing volumes for potential imports.

    +
    path Parameters
    project_id
    required
    string

    Project to operate in

    +
    source_url
    required
    string

    Source URL of volumes. If not provided, this server is assumed to be the source.

    +
    source_project_id
    required
    string

    Source project ID of volumes

    +
    Request Body schema: application/x-www-form-urlencoded
    source_ids[]
    required
    string

    IDs of the source IDs to query origin for

    +

    Responses

    Import triangle mesh volumes from an uploaded files.

    Import triangle mesh volumes from an uploaded files.

    Currently only STL representation is supported.

    -
    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded

    Triangle mesh file to import. Multiple files can be provided, with each being imported as a mesh named by its base filename.

    -
    any

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/import
    http://localhost:8000http://localhost:8000/{project_id}/volumes/import

    Test environment only contains two skeletons - based on that, sql query

    Test environment only contains two skeletons - based on that, sql query +

    path Parameters
    project_id
    required
    string
    Request Body schema: application/x-www-form-urlencoded

    Triangle mesh file to import. Multiple files can be provided, with each being imported as a mesh named by its base filename.

    +
    source_id
    string

    If specified, this source ID will be saved and mapped to the new volume ID.

    +
    source_project_id
    string

    If specified, this source project ID will be saved and mapped to the new volume ID. This is only valid together with source_id and source_url.

    +
    source_url
    string

    If specified, this source URL will be saved and mapped to the new volume ID.

    +
    source_type
    string

    Can be either 'mesh' or 'segmentation', to further specify of what type the origin data is.

    +

    Responses

    Test environment only contains two skeletons - based on that, sql query

    Test environment only contains two skeletons - based on that, sql query always returns list of all SKIDs but all data (about both skeletons) is contained in the first SKID in the list - if this changes, write an else statement for: len(cleanResults) >1.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Constrain results to these skeletons

    -
    annotation
    string

    An annotation potential target volumes need to have

    -
    min_nodes
    string

    A minimum number of nodes result skeleton need to have.

    -
    min_cable
    string

    A minimum number of cable length esult skeleton need to have.

    -

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/skeleton-innervations
    http://localhost:8000http://localhost:8000/{project_id}/volumes/skeleton-innervations

    Test environment only contains two skeletons - based on that, sql query

    Test environment only contains two skeletons - based on that, sql query +

    path Parameters
    project_id
    required
    string

    The project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Constrain results to these skeletons

    +
    annotation
    string

    An annotation potential target volumes need to have

    +
    min_nodes
    string

    A minimum number of nodes result skeleton need to have.

    +
    min_cable
    string

    A minimum number of cable length esult skeleton need to have.

    +

    Responses

    Test environment only contains two skeletons - based on that, sql query

    Test environment only contains two skeletons - based on that, sql query always returns list of all SKIDs but all data (about both skeletons) is contained in the first SKID in the list - if this changes, write an else statement for: len(cleanResults) >1.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in

    -
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Constrain results to these skeletons

    -
    annotation
    string

    An annotation potential target volumes need to have

    -
    min_nodes
    string

    A minimum number of nodes result skeleton need to have.

    -
    min_cable
    string

    A minimum number of cable length esult skeleton need to have.

    -

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/skeleton-innervations
    http://localhost:8000http://localhost:8000/{project_id}/volumes/skeleton-innervations

    volumes_read

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/{volume_id}/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/

    volumes_create_0

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    201
    post http://localhost:8000/{project_id}/volumes/{volume_id}/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/

    volumes_delete

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    204
    delete http://localhost:8000/{project_id}/volumes/{volume_id}/
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/

    Export volume as a triangle mesh file.

    Export volume as a triangle mesh file.

    +
    path Parameters
    project_id
    required
    string

    The project to operate in

    +
    Request Body schema: application/x-www-form-urlencoded
    skeleton_ids
    string

    Constrain results to these skeletons

    +
    annotation
    string

    An annotation potential target volumes need to have

    +
    min_nodes
    string

    A minimum number of nodes result skeleton need to have.

    +
    min_cable
    string

    A minimum number of cable length esult skeleton need to have.

    +

    Responses

    volumes_read

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    volumes_create_0

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    volumes_delete

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string

    Responses

    Export volume as a triangle mesh file.

    Export volume as a triangle mesh file.

    The extension of the endpoint and ACCEPT header media type are both used to determine the format of the export.

    Supported formats by extension and media type:

    @@ -1104,17 +1321,17 @@
    STL
    • model/stl, model/x.stl-ascii: ASCII STL
    -
    path Parameters
    project_id
    required
    string
    volume_id
    required
    string
    extension
    required
    string

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/{volume_id}/export\.{extension}
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/export\.{extension}

    Test if a point intersects with the bounding box of a given volume.

    Test if a point intersects with the bounding box of a given volume.

    -
    path Parameters
    project_id
    required
    string
    volume_id
    required
    string
    query Parameters
    x
    string

    X coordinate of point to test

    -
    y
    string

    Y coordinate of point to test

    -
    z
    string

    Z coordinate of point to test

    -

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/{volume_id}/intersect
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/intersect

    Update the meta data on all passed in volumes. This includes: area,

    Update the meta data on all passed in volumes. This includes: area, +

    path Parameters
    project_id
    required
    string
    volume_id
    required
    string
    extension
    required
    string

    Responses

    Test if a point intersects with the bounding box of a given volume.

    Test if a point intersects with the bounding box of a given volume.

    +
    path Parameters
    project_id
    required
    string
    volume_id
    required
    string
    query Parameters
    x
    string

    X coordinate of point to test

    +
    y
    string

    Y coordinate of point to test

    +
    z
    string

    Z coordinate of point to test

    +

    Responses

    Update the meta data on all passed in volumes. This includes: area,

    Update the meta data on all passed in volumes. This includes: area, volume and watertightness.

    -
    path Parameters
    project_id
    required
    string

    The project to operate in

    -
    volume_id
    required
    string

    The volume to update

    -

    Responses

    200
    get http://localhost:8000/{project_id}/volumes/{volume_id}/update-meta-info
    http://localhost:8000http://localhost:8000/{project_id}/volumes/{volume_id}/update-meta-info
    +
    path Parameters
    project_id
    required
    string

    The project to operate in

    +
    volume_id
    required
    string

    The volume to update

    +

    Responses