306 lines
414 KiB
JavaScript
306 lines
414 KiB
JavaScript
|
(()=>{var Za={8325:(b,m,s)=>{const d=Symbol("SemVer ANY");class r{static get ANY(){return d}constructor(v,c){if(c=n(c),v instanceof r){if(v.loose===!!c.loose)return v;v=v.value}o("comparator",v,c),this.options=c,this.loose=!!c.loose,this.parse(v),this.semver===d?this.value="":this.value=this.operator+this.semver.version,o("comp",this)}parse(v){const c=this.options.loose?u[p.COMPARATORLOOSE]:u[p.COMPARATOR],h=v.match(c);if(!h)throw new TypeError(`Invalid comparator: ${v}`);this.operator=h[1]!==void 0?h[1]:"",this.operator==="="&&(this.operator=""),h[2]?this.semver=new f(h[2],this.options.loose):this.semver=d}toString(){return this.value}test(v){if(o("Comparator.test",v,this.options.loose),this.semver===d||v===d)return!0;if(typeof v=="string")try{v=new f(v,this.options)}catch(c){return!1}return l(v,this.operator,this.semver,this.options)}intersects(v,c){if(!(v instanceof r))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new g(v.value,c).test(this.value):v.operator===""?v.value===""?!0:new g(this.value,c).test(v.semver):(c=n(c),c.includePrerelease&&(this.value==="<0.0.0-0"||v.value==="<0.0.0-0")||!c.includePrerelease&&(this.value.startsWith("<0.0.0")||v.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&v.operator.startsWith(">")||this.operator.startsWith("<")&&v.operator.startsWith("<")||this.semver.version===v.semver.version&&this.operator.includes("=")&&v.operator.includes("=")||l(this.semver,"<",v.semver,c)&&this.operator.startsWith(">")&&v.operator.startsWith("<")||l(this.semver,">",v.semver,c)&&this.operator.startsWith("<")&&v.operator.startsWith(">")))}}b.exports=r;const n=s(349),{re:u,t:p}=s(3259),l=s(5609),o=s(4903),f=s(1630),g=s(1459)},1459:(b,m,s)=>{class d{constructor(H,$){if($=u($),H instanceof d)return H.loose===!!$.loose&&H.includePrerelease===!!$.includePrerelease?H:new d(H.raw,$);if(H instanceof p)return this.raw=H.value,this.set=[[H]],this.format(),this;if(this.options=$,this.loose=!!$.loose,this.includePrerelease=!!$.includePrerelease,this.raw=H,this.set=H.split("||").map(V=>this.parseRange(V.trim())).filter(V=>V.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${H}`);if(this.set.length>1){const V=this.set[0];if(this.set=this.set.filter(K=>!E(K[0])),this.set.length===0)this.set=[V];else if(this.set.length>1){for(const K of this.set)if(K.length===1&&x(K[0])){this.set=[K];break}}}this.format()}format(){return this.range=this.set.map(H=>H.join(" ").trim()).join("||").trim(),this.range}toString(){return this.range}parseRange(H){H=H.trim();const V=((this.options.includePrerelease&&h)|(this.options.loose&&y))+":"+H,K=n.get(V);if(K)return K;const Q=this.options.loose,ie=Q?f[g.HYPHENRANGELOOSE]:f[g.HYPHENRANGE];H=H.replace(ie,W(this.options.includePrerelease)),l("hyphen replace",H),H=H.replace(f[g.COMPARATORTRIM],i),l("comparator trim",H),H=H.replace(f[g.TILDETRIM],v),H=H.replace(f[g.CARETTRIM],c),H=H.split(/\s+/).join(" ");let fe=H.split(" ").map(Te=>A(Te,this.options)).join(" ").split(/\s+/).map(Te=>k(Te,this.options));Q&&(fe=fe.filter(Te=>(l("loose invalid filter",Te,this.options),!!Te.match(f[g.COMPARATORLOOSE])))),l("range list",fe);const J=new Map,Ee=fe.map(Te=>new p(Te,this.options));for(const Te of Ee){if(E(Te))return[Te];J.set(Te.value,Te)}J.size>1&&J.has("")&&J.delete("");const xe=[...J.values()];return n.set(V,xe),xe}intersects(H,$){if(!(H instanceof d))throw new TypeError("a Range is required");return this.set.some(V=>T(V,$)&&H.set.some(K=>T(K,$)&&V.every(Q=>K.every(ie=>Q.intersects(ie,$)))))}test(H){if(!H)return!1;if(typeof H=="string")try{H=new o(H,this.options)}catch($){return!1}for(let $=0;$<this.set.length;$++)if(Y(this.set[$],H,this.options))return!0;return!1}}b.exports=d;const r=s(9593),n=new r({max:1e3}),u=s(349),p=s(8325),l=s(4903),o=s(1630),{re:f,t:g,comparatorTrimReplace:i,tildeTrimReplace:v,caretTrimReplace:c}=s(3259),{FLAG_INCLUDE_PRERELEASE:h,FLAG_LOOSE:y}=s(3325),E=F=>F.value==="<0.0.0-0",x=F=>F.value==="",T=(F,H)=>{let $=!0;const V=F.slice();let K=V.pop();for(;$&&V.length;)$=V.every(Q=>K.intersects(Q,H)),K=
|
||
|
`,h),y==-1&&(y=v.length-1);var x=v.substring(h,y+1);(l.hasOwnProperty?l.hasOwnProperty(x):l[x]!==void 0)?c+=String.fromCharCode(l[x]):(E==f&&(x=v.substring(h),y=v.length),c+=String.fromCharCode(E),l[x]=E,p[E++]=x),h=y+1}return c}var f=4e4,g=o(n);f=65535;var i=o(u);return{chars1:g,chars2:i,lineArray:p}},m.prototype.diff_charsToLines_=function(n,u){for(var p=0;p<n.length;p++){for(var l=n[p][1],o=[],f=0;f<l.length;f++)o[f]=u[l.charCodeAt(f)];n[p][1]=o.join("")}},m.prototype.diff_commonPrefix=function(n,u){if(!n||!u||n.charAt(0)!=u.charAt(0))return 0;for(var p=0,l=Math.min(n.length,u.length),o=l,f=0;p<o;)n.substring(f,o)==u.substring(f,o)?(p=o,f=p):l=o,o=Math.floor((l-p)/2+p);return o},m.prototype.diff_commonSuffix=function(n,u){if(!n||!u||n.charAt(n.length-1)!=u.charAt(u.length-1))return 0;for(var p=0,l=Math.min(n.length,u.length),o=l,f=0;p<o;)n.substring(n.length-o,n.length-f)==u.substring(u.length-o,u.length-f)?(p=o,f=p):l=o,o=Math.floor((l-p)/2+p);return o},m.prototype.diff_commonOverlap_=function(n,u){var p=n.length,l=u.length;if(p==0||l==0)return 0;p>l?n=n.substring(p-l):p<l&&(u=u.substring(0,p));var o=Math.min(p,l);if(n==u)return o;for(var f=0,g=1;;){var i=n.substring(o-g),v=u.indexOf(i);if(v==-1)return f;g+=v,(v==0||n.substring(o-g)==u.substring(0,g))&&(f=g,g++)}},m.prototype.diff_halfMatch_=function(n,u){if(this.Diff_Timeout<=0)return null;var p=n.length>u.length?n:u,l=n.length>u.length?u:n;if(p.length<4||l.length*2<p.length)return null;var o=this;function f(T,A,w){for(var _=T.substring(w,w+Math.floor(T.length/4)),C=-1,O="",I,R,D,N;(C=A.indexOf(_,C+1))!=-1;){var k=o.diff_commonPrefix(T.substring(w),A.substring(C)),W=o.diff_commonSuffix(T.substring(0,w),A.substring(0,C));O.length<W+k&&(O=A.substring(C-W,C)+A.substring(C,C+k),I=T.substring(0,w-W),R=T.substring(w+k),D=A.substring(0,C-W),N=A.substring(C+k))}return O.length*2>=T.length?[I,R,D,N,O]:null}var g=f(p,l,Math.ceil(p.length/4)),i=f(p,l,Math.ceil(p.length/2)),v;if(!g&&!i)return null;i?g?v=g[4].length>i[4].length?g:i:v=i:v=g;var c,h,y,E;n.length>u.length?(c=v[0],h=v[1],y=v[2],E=v[3]):(y=v[0],E=v[1],c=v[2],h=v[3]);var x=v[4];return[c,h,y,E,x]},m.prototype.diff_cleanupSemantic=function(n){for(var u=!1,p=[],l=0,o=null,f=0,g=0,i=0,v=0,c=0;f<n.length;)n[f][0]==r?(p[l++]=f,g=v,i=c,v=0,c=0,o=n[f][1]):(n[f][0]==d?v+=n[f][1].length:c+=n[f][1].length,o&&o.length<=Math.max(g,i)&&o.length<=Math.max(v,c)&&(n.splice(p[l-1],0,new m.Diff(s,o)),n[p[l-1]+1][0]=d,l--,l--,f=l>0?p[l-1]:-1,g=0,i=0,v=0,c=0,o=null,u=!0)),f++;for(u&&this.diff_cleanupMerge(n),this.diff_cleanupSemanticLossless(n),f=1;f<n.length;){if(n[f-1][0]==s&&n[f][0]==d){var h=n[f-1][1],y=n[f][1],E=this.diff_commonOverlap_(h,y),x=this.diff_commonOverlap_(y,h);E>=x?(E>=h.length/2||E>=y.length/2)&&(n.splice(f,0,new m.Diff(r,y.substring(0,E))),n[f-1][1]=h.substring(0,h.length-E),n[f+1][1]=y.substring(E),f++):(x>=h.length/2||x>=y.length/2)&&(n.splice(f,0,new m.Diff(r,h.substring(0,x))),n[f-1][0]=d,n[f-1][1]=y.substring(0,y.length-x),n[f+1][0]=s,n[f+1][1]=h.substring(x),f++),f++}f++}},m.prototype.diff_cleanupSemanticLossless=function(n){function u(x,T){if(!x||!T)return 6;var A=x.charAt(x.length-1),w=T.charAt(0),_=A.match(m.nonAlphaNumericRegex_),C=w.match(m.nonAlphaNumericRegex_),O=_&&A.match(m.whitespaceRegex_),I=C&&w.match(m.whitespaceRegex_),R=O&&A.match(m.linebreakRegex_),D=I&&w.match(m.linebreakRegex_),N=R&&x.match(m.blanklineEndRegex_),k=D&&T.match(m.blanklineStartRegex_);return N||k?5:R||D?4:_&&!O&&I?3:O||I?2:_||C?1:0}for(var p=1;p<n.length-1;){if(n[p-1][0]==r&&n[p+1][0]==r){var l=n[p-1][1],o=n[p][1],f=n[p+1][1],g=this.diff_commonSuffix(l,o);if(g){var i=o.substring(o.length-g);l=l.substring(0,l.length-g),o=i+o.substring(0,o.length-g),f=i+f}for(var v=l,c=o,h=f,y=u(l,o)+u(o,f);o.charAt(0)===f.charAt(0);){l+=o.charAt(0),o=o.substring(1)+f.charAt(0),f=f.substring(1);var E=u(l,o)+u(o,f);E>=y&&(y=E,v=l,c=o,h=f)}n[p-1][1]!=v&&(v?n[p-1][1]=v:(n.splice(p-1,1),p--),n[p][1]=c,h?n[p+1][1]=h:(n.splice(p+1,1),p--))}p++}},m.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,m.whitespaceRegex_=/\s/,m.linebreakRegex_=/[\r\n]/,m.blanklineEndRegex_=
|
||
|
`),l=0,o=/^@@ -(\d+),?(\d*) \+(\d+),?(\d*) @@$/;l<p.length;){var f=p[l].match(o);if(!f)throw new Error("Invalid patch string: "+p[l]);var g=new m.patch_obj;for(u.push(g),g.start1=parseInt(f[1],10),f[2]===""?(g.start1--,g.length1=1):f[2]=="0"?g.length1=0:(g.start1--,g.length1=parseInt(f[2],10)),g.start2=parseInt(f[3],10),f[4]===""?(g.start2--,g.length2=1):f[4]=="0"?g.length2=0:(g.start2--,g.length2=parseInt(f[4],10)),l++;l<p.length;){var i=p[l].charAt(0);try{var v=decodeURI(p[l].substring(1))}catch(c){throw new Error("Illegal escape in patch_fromText: "+v)}if(i=="-")g.diffs.push(new m.Diff(s,v));else if(i=="+")g.diffs.push(new m.Diff(d,v));else if(i==" ")g.diffs.push(new m.Diff(r,v));else{if(i=="@")break;if(i!=="")throw new Error('Invalid patch mode "'+i+'" in: '+v)}l++}}return u},m.patch_obj=function(){this.diffs=[],this.start1=null,this.start2=null,this.length1=0,this.length2=0},m.patch_obj.prototype.toString=function(){var n,u;this.length1===0?n=this.start1+",0":this.length1==1?n=this.start1+1:n=this.start1+1+","+this.length1,this.length2===0?u=this.start2+",0":this.length2==1?u=this.start2+1:u=this.start2+1+","+this.length2;for(var p=["@@ -"+n+" +"+u+` @@
|
||
|
`],l,o=0;o<this.diffs.length;o++){switch(this.diffs[o][0]){case d:l="+";break;case s:l="-";break;case r:l=" ";break}p[o+1]=l+encodeURI(this.diffs[o][1])+`
|
||
|
`}return p.join("").replace(/%20/g," ")},b.exports=m,b.exports.diff_match_patch=m,b.exports.DIFF_DELETE=s,b.exports.DIFF_INSERT=d,b.exports.DIFF_EQUAL=r},177:function(b){/**!
|
||
|
|
||
|
@license
|
||
|
handlebars v4.7.7
|
||
|
|
||
|
Copyright (C) 2011-2019 by Yehuda Katz
|
||
|
|
||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||
|
of this software and associated documentation files (the "Software"), to deal
|
||
|
in the Software without restriction, including without limitation the rights
|
||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||
|
copies of the Software, and to permit persons to whom the Software is
|
||
|
furnished to do so, subject to the following conditions:
|
||
|
|
||
|
The above copyright notice and this permission notice shall be included in
|
||
|
all copies or substantial portions of the Software.
|
||
|
|
||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||
|
THE SOFTWARE.
|
||
|
|
||
|
*/(function(m,s){b.exports=s()})(this,function(){return function(m){function s(r){if(d[r])return d[r].exports;var n=d[r]={exports:{},id:r,loaded:!1};return m[r].call(n.exports,n,n.exports,s),n.loaded=!0,n.exports}var d={};return s.m=m,s.c=d,s.p="",s(0)}([function(m,s,d){"use strict";function r(){var A=x();return A.compile=function(w,_){return g.compile(w,_,A)},A.precompile=function(w,_){return g.precompile(w,_,A)},A.AST=o.default,A.Compiler=g.Compiler,A.JavaScriptCompiler=v.default,A.Parser=f.parser,A.parse=f.parse,A.parseWithoutProcessing=f.parseWithoutProcessing,A}var n=d(1).default;s.__esModule=!0;var u=d(2),p=n(u),l=d(45),o=n(l),f=d(46),g=d(51),i=d(52),v=n(i),c=d(49),h=n(c),y=d(44),E=n(y),x=p.default.create,T=r();T.create=r,E.default(T),T.Visitor=h.default,T.default=T,s.default=T,m.exports=s.default},function(m,s){"use strict";s.default=function(d){return d&&d.__esModule?d:{default:d}},s.__esModule=!0},function(m,s,d){"use strict";function r(){var A=new l.HandlebarsEnvironment;return c.extend(A,l),A.SafeString=f.default,A.Exception=i.default,A.Utils=c,A.escapeExpression=c.escapeExpression,A.VM=y,A.template=function(w){return y.template(w,A)},A}var n=d(3).default,u=d(1).default;s.__esModule=!0;var p=d(4),l=n(p),o=d(37),f=u(o),g=d(6),i=u(g),v=d(5),c=n(v),h=d(38),y=n(h),E=d(44),x=u(E),T=r();T.create=r,x.default(T),T.default=T,s.default=T,m.exports=s.default},function(m,s){"use strict";s.default=function(d){if(d&&d.__esModule)return d;var r={};if(d!=null)for(var n in d)Object.prototype.hasOwnProperty.call(d,n)&&(r[n]=d[n]);return r.default=d,r},s.__esModule=!0},function(m,s,d){"use strict";function r(A,w,_){this.helpers=A||{},this.partials=w||{},this.decorators=_||{},o.registerDefaultHelpers(this),f.registerDefaultDecorators(this)}var n=d(1).default;s.__esModule=!0,s.HandlebarsEnvironment=r;var u=d(5),p=d(6),l=n(p),o=d(10),f=d(30),g=d(32),i=n(g),v=d(33),c="4.7.7";s.VERSION=c;var h=8;s.COMPILER_REVISION=h;var y=7;s.LAST_COMPATIBLE_COMPILER_REVISION=y;var E={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};s.REVISION_CHANGES=E;var x="[object Object]";r.prototype={constructor:r,logger:i.default,log:i.default.log,registerHelper:function(A,w){if(u.toString.call(A)===x){if(w)throw new l.default("Arg not supported with multiple helpers");u.extend(this.helpers,A)}else this.helpers[A]=w},unregisterHelper:function(A){delete this.helpers[A]},registerPartial:function(A,w){if(u.toString.call(A)===x)u.extend(this.partials,A);else{if(typeof w=="undefined")throw new l.default('Attempting to register a partial called "'+A+'" as undefined');this.partials[A]=w}},unregisterPartial:function(A){delete this.partials[A]},registerDecorator:function(A,w){if(u.toString.call(A)===x){if(w)throw new l.default("Arg not supported with multiple decorators");u.extend(this.decorators,A)}else this.decorators[A]=w},unregisterDecorator:function(A){delete this.decorators[A]},resetLoggedPropertyAccesses:function(){v.resetLoggedProperties()}};var T=i.default.log;s.log=T,s.createFrame=u.createFrame,s.logger=i.default},function(m,s){"use strict";function d(E){return g[E]}function r(E){for(var x=1;x<arguments.length;x++)for(var T in arguments[x])Object.prototype.hasOwnProperty.call(arguments[x],T)&&(E[T]=arguments[x][T]);return E}function n(E,x){for(var T=0,A=E.length;T<A;T++)if(E[T]===x)return T;return-1}function u(E){if(typeof E!="string"){if(E&&E.toHTML)return E.toHTML();if(E==null)return"";if(!E)return E+"";E=""+E}return v.test(E)?E.replace(i,d):E}function p(E){return!E&&E!==0||!(!y(E)||E.length!==0)}function l(E){var x=r({},E);return x._parent=E,x}function o(E,x){return E.path=x,E}function f(E,x){return(E?E+".":"")+x}s.__esModule=!0,s.extend=r,s.indexOf=n,s.escapeExpression=u,s.isEmpty=p,s.createFrame=l,s.blockParams=o,s.appendContextPath=f;var g={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},i=/[&<>"'`=]/g,v=/[&<>"'`=]/,c=Object.prototype.toString;s.toString=c;var h=function(E){return typeof E=="function"};h(/x/)&&(s.isFunction
|
||
|
You can add a runtime option to disable the check or this warning:
|
||
|
See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function l(){f(h).forEach(function(y){delete h[y]})}var o=d(34).default,f=d(13).default,g=d(3).default;s.__esModule=!0,s.createProtoAccessControl=r,s.resultIsAllowed=n,s.resetLoggedProperties=l;var i=d(36),v=d(32),c=g(v),h=o(null)},function(m,s,d){m.exports={default:d(35),__esModule:!0}},function(m,s,d){var r=d(9);m.exports=function(n,u){return r.create(n,u)}},function(m,s,d){"use strict";function r(){for(var p=arguments.length,l=Array(p),o=0;o<p;o++)l[o]=arguments[o];return u.extend.apply(void 0,[n(null)].concat(l))}var n=d(34).default;s.__esModule=!0,s.createNewLookupObject=r;var u=d(5)},function(m,s){"use strict";function d(r){this.string=r}s.__esModule=!0,d.prototype.toString=d.prototype.toHTML=function(){return""+this.string},s.default=d,m.exports=s.default},function(m,s,d){"use strict";function r(R){var D=R&&R[0]||1,N=_.COMPILER_REVISION;if(!(D>=_.LAST_COMPATIBLE_COMPILER_REVISION&&D<=_.COMPILER_REVISION)){if(D<_.LAST_COMPATIBLE_COMPILER_REVISION){var k=_.REVISION_CHANGES[N],W=_.REVISION_CHANGES[D];throw new w.default("Template was precompiled with an older version of Handlebars than the current runtime. Please update your precompiler to a newer version ("+k+") or downgrade your runtime to an older version ("+W+").")}throw new w.default("Template was precompiled with a newer version of Handlebars than the current runtime. Please update your runtime to a newer version ("+R[1]+").")}}function n(R,D){function N(F,H,$){$.hash&&(H=T.extend({},H,$.hash),$.ids&&($.ids[0]=!0)),F=D.VM.resolvePartial.call(this,F,H,$);var V=T.extend({},$,{hooks:this.hooks,protoAccessControl:this.protoAccessControl}),K=D.VM.invokePartial.call(this,F,H,V);if(K==null&&D.compile&&($.partials[$.name]=D.compile(F,R.compilerOptions,D),K=$.partials[$.name](H,V)),K!=null){if($.indent){for(var Q=K.split(`
|
||
|
`),ie=0,fe=Q.length;ie<fe&&(Q[ie]||ie+1!==fe);ie++)Q[ie]=$.indent+Q[ie];K=Q.join(`
|
||
|
`)}return K}throw new w.default("The partial "+$.name+" could not be compiled when running in runtime-only mode")}function k(F){function H(ie){return""+R.main(Y,ie,Y.helpers,Y.partials,V,Q,K)}var $=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],V=$.data;k._setup($),!$.partial&&R.useData&&(V=f(F,V));var K=void 0,Q=R.useBlockParams?[]:void 0;return R.useDepths&&(K=$.depths?F!=$.depths[0]?[F].concat($.depths):$.depths:[F]),(H=g(R.main,H,Y,$.depths||[],V,Q))(F,$)}if(!D)throw new w.default("No environment passed to template");if(!R||!R.main)throw new w.default("Unknown template object: "+typeof R);R.main.decorator=R.main_d,D.VM.checkRevision(R.compiler);var W=R.compiler&&R.compiler[0]===7,Y={strict:function(F,H,$){if(!(F&&H in F))throw new w.default('"'+H+'" not defined in '+F,{loc:$});return Y.lookupProperty(F,H)},lookupProperty:function(F,H){var $=F[H];return $==null||Object.prototype.hasOwnProperty.call(F,H)||I.resultIsAllowed($,Y.protoAccessControl,H)?$:void 0},lookup:function(F,H){for(var $=F.length,V=0;V<$;V++){var K=F[V]&&Y.lookupProperty(F[V],H);if(K!=null)return F[V][H]}},lambda:function(F,H){return typeof F=="function"?F.call(H):F},escapeExpression:T.escapeExpression,invokePartial:N,fn:function(F){var H=R[F];return H.decorator=R[F+"_d"],H},programs:[],program:function(F,H,$,V,K){var Q=this.programs[F],ie=this.fn(F);return H||K||V||$?Q=u(this,F,ie,H,$,V,K):Q||(Q=this.programs[F]=u(this,F,ie)),Q},data:function(F,H){for(;F&&H--;)F=F._parent;return F},mergeIfNeeded:function(F,H){var $=F||H;return F&&H&&F!==H&&($=T.extend({},H,F)),$},nullContext:c({}),noop:D.VM.noop,compilerInfo:R.compiler};return k.isTop=!0,k._setup=function(F){if(F.partial)Y.protoAccessControl=F.protoAccessControl,Y.helpers=F.helpers,Y.partials=F.partials,Y.decorators=F.decorators,Y.hooks=F.hooks;else{var H=T.extend({},D.helpers,F.helpers);i(H,Y),Y.helpers=H,R.usePartial&&(Y.partials=Y.mergeIfNeeded(F.partials,D.partials)),(R.usePartial||R.useDecorators)&&(Y.decorators=T.extend({},D.decorators,F.decorators)),Y.hooks={},Y.protoAccessControl=I.createProtoAccessControl(F);var $=F.allowCallsToHelperMissing||W;C.moveHelperToHooks(Y,"helperMissing",$),C.moveHelperToHooks(Y,"blockHelperMissing",$)}},k._child=function(F,H,$,V){if(R.useBlockParams&&!$)throw new w.default("must pass block params");if(R.useDepths&&!V)throw new w.default("must pass parent depths");return u(Y,F,R[F],H,0,$,V)},k}function u(R,D,N,k,W,Y,F){function H($){var V=arguments.length<=1||arguments[1]===void 0?{}:arguments[1],K=F;return!F||$==F[0]||$===R.nullContext&&F[0]===null||(K=[$].concat(F)),N(R,$,R.helpers,R.partials,V.data||k,Y&&[V.blockParams].concat(Y),K)}return H=g(N,H,R,F,k,Y),H.program=D,H.depth=F?F.length:0,H.blockParams=W||0,H}function p(R,D,N){return R?R.call||N.name||(N.name=R,R=N.partials[R]):R=N.name==="@partial-block"?N.data["partial-block"]:N.partials[N.name],R}function l(R,D,N){var k=N.data&&N.data["partial-block"];N.partial=!0,N.ids&&(N.data.contextPath=N.ids[0]||N.data.contextPath);var W=void 0;if(N.fn&&N.fn!==o&&function(){N.data=_.createFrame(N.data);var Y=N.fn;W=N.data["partial-block"]=function(F){var H=arguments.length<=1||arguments[1]===void 0?{}:arguments[1];return H.data=_.createFrame(H.data),H.data["partial-block"]=k,Y(F,H)},Y.partials&&(N.partials=T.extend({},N.partials,Y.partials))}(),R===void 0&&W&&(R=W),R===void 0)throw new w.default("The partial "+N.name+" could not be found");if(R instanceof Function)return R(D,N)}function o(){return""}function f(R,D){return D&&"root"in D||(D=D?_.createFrame(D):{},D.root=R),D}function g(R,D,N,k,W,Y){if(R.decorator){var F={};D=R.decorator(D,F,N,k&&k[0],W,Y,k),T.extend(D,F)}return D}function i(R,D){h(R).forEach(function(N){var k=R[N];R[N]=v(k,D)})}function v(R,D){var N=D.lookupProperty;return O.wrapHelper(R,function(k){return T.extend({lookupProperty:N},k)})}var c=d(39).default,h=d(13).default,y=d(3).default,E=d(1).default;s.__esModule=!0,s.checkRevision=r,s.template=n,s.wrapProgram=u,s.resolvePartial=p,s.invokePartial=l,s.noop=o;var x=d(5),T=y(x),A=d(6),w=E(A),_=d(4),C=d(10),O=d(43),I=d(33)},function(m,s,d){m.e
|
||
|
`+this.lexer.showPosition()+`
|
||
|
Expecting `+N.join(", ")+", got '"+(this.terminals_[A]||A)+"'":"Parse error on line "+(h+1)+": Unexpected "+(A==1?"end of input":"'"+(this.terminals_[A]||A)+"'"),this.parseError(W,{text:this.lexer.match,token:this.terminals_[A]||A,line:this.lexer.yylineno,loc:x,expected:N})}}if(C[0]instanceof Array&&C.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+A);switch(C[0]){case 1:f.push(A),g.push(this.lexer.yytext),i.push(this.lexer.yylloc),f.push(C[1]),A=null,w?(A=w,w=null):(y=this.lexer.yyleng,c=this.lexer.yytext,h=this.lexer.yylineno,x=this.lexer.yylloc,E>0&&E--);break;case 2:if(R=this.productions_[C[1]][1],k.$=g[g.length-R],k._$={first_line:i[i.length-(R||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(R||1)].first_column,last_column:i[i.length-1].last_column},T&&(k._$.range=[i[i.length-(R||1)].range[0],i[i.length-1].range[1]]),O=this.performAction.call(k,c,y,h,this.yy,C[1],g,i),typeof O!="undefined")return O;R&&(f=f.slice(0,-1*R*2),g=g.slice(0,-1*R),i=i.slice(0,-1*R)),f.push(this.productions_[C[1]][0]),g.push(k.$),i.push(k._$),D=v[f[f.length-2]][f[f.length-1]],f.push(D);break;case 3:return!0}}return!0}},u=function(){var p={EOF:1,parseError:function(l,o){if(!this.yy.parser)throw new Error(l);this.yy.parser.parseError(l,o)},setInput:function(l){return this._input=l,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var l=this._input[0];this.yytext+=l,this.yyleng++,this.offset++,this.match+=l,this.matched+=l;var o=l.match(/(?:\r\n?|\n).*/g);return o?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),l},unput:function(l){var o=l.length,f=l.split(/(?:\r\n?|\n)/g);this._input=l+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-o-1),this.offset-=o;var g=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),f.length-1&&(this.yylineno-=f.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:f?(f.length===g.length?this.yylloc.first_column:0)+g[g.length-f.length].length-f[0].length:this.yylloc.first_column-o},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-o]),this},more:function(){return this._more=!0,this},less:function(l){this.unput(this.match.slice(l))},pastInput:function(){var l=this.matched.substr(0,this.matched.length-this.match.length);return(l.length>20?"...":"")+l.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var l=this.match;return l.length<20&&(l+=this._input.substr(0,20-l.length)),(l.substr(0,20)+(l.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var l=this.pastInput(),o=new Array(l.length+1).join("-");return l+this.upcomingInput()+`
|
||
|
`+o+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var l,o,f,g,i;this._more||(this.yytext="",this.match="");for(var v=this._currentRules(),c=0;c<v.length&&(f=this._input.match(this.rules[v[c]]),!f||o&&!(f[0].length>o[0].length)||(o=f,g=c,this.options.flex));c++);return o?(i=o[0].match(/(?:\r\n?|\n).*/g),i&&(this.yylineno+=i.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:i?i[i.length-1].length-i[i.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+o[0].length},this.yytext+=o[0],this.match+=o[0],this.matches=o,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(o[0].length),this.matched+=o[0],l=this.performAction.call(this,this.yy,this,v[g],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),l||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
|
||
|
`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var l=this.next();return typeof l!="undefined"?l:this.lex()},begin:function(l){this.conditionStack.push(l)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(l){this.begin(l)}};return p.options={},p.performAction=function(l,o,f,g){function i(v,c){return o.yytext=o.yytext.substring(v,o.yyleng-c+v)}switch(f){case 0:if(o.yytext.slice(-2)==="\\\\"?(i(0,1),this.begin("mu")):o.yytext.slice(-1)==="\\"?(i(0,1),this.begin("emu")):this.begin("mu"),o.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;case 3:return this.begin("raw"),15;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(i(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;case 16:return this.popState(),44;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(o.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;case 30:return this.popState(),33;case 31:return o.yytext=i(1,2).replace(/\\"/g,'"'),80;case 32:return o.yytext=i(1,2).replace(/\\'/g,"'"),80;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return o.yytext=o.yytext.replace(/\\([\\\]])/g,"$1"),72;case 43:return"INVALID";case 44:return 5}},p.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],p.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},p}();return n.lexer=u,r.prototype=n,n.Parser=r,new r}();s.default=d,m.exports=s.default},function(m,s,d){"use strict";function r(){var i=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=i}function n(i,v,c){v===void 0&&(v=i.length);var h=i[v-1],y=i[v-2];return h?h.type==="ContentStatement"?(y||!c?/\r?\n\s*?$/:/(^|\r?\n)\s*?$/).test(h.original):void 0:c}function u(i,v,c){v===void 0&&(v=-1);var h=i[v+1],y=i[v+2];return h?h.type==="ContentStatement"?(y||!c?/^\s*?\r?\n/:/^\s*?(\r?\n|$)/).test(h.original):void 0:c}function p(i,v,c){var h=i[v==null?0:v+1];if(h&&h.type==="ContentStatement"&&(c||!h.rightStripped)){var y=h.value;h.value=h.value.replace(c?/^\s+/:/^[ \t]*\r?\n?/,""),h.rightStripped=h.value!==y}}function l(i,v,c){var h=i[v==null?i.length-1:v-1];if(h&&h.type==="ContentStatement"&&(c||!
|
||
|
`]),this.decorators.push("return fn;"),x?this.decorators=Function.apply(this,["fn","props","container","depth0","data","blockParams","depths",this.decorators.merge()]):(this.decorators.prepend(`function(fn, props, container, depth0, data, blockParams, depths) {
|
||
|
`),this.decorators.push(`}
|
||
|
`),this.decorators=this.decorators.merge()));var O=this.createFunctionContext(x);if(this.isChild)return O;var I={compiler:this.compilerInfo(),main:O};this.decorators&&(I.main_d=this.decorators,I.useDecorators=!0);var R=this.context,D=R.programs,N=R.decorators;for(_=0,C=D.length;_<C;_++)D[_]&&(I[_]=D[_],N[_]&&(I[_+"_d"]=N[_],I.useDecorators=!0));return this.environment.usePartial&&(I.usePartial=!0),this.options.data&&(I.useData=!0),this.useDepths&&(I.useDepths=!0),this.useBlockParams&&(I.useBlockParams=!0),this.options.compat&&(I.compat=!0),x?I.compilerOptions=this.options:(I.compiler=JSON.stringify(I.compiler),this.source.currentLocation={start:{line:1,column:0}},I=this.objectLiteral(I),y.srcName?(I=I.toStringWithSourceMap({file:y.destName}),I.map=I.map&&I.map.toString()):I=I.toString()),I},preamble:function(){this.lastContext=0,this.source=new c.default(this.options.srcName),this.decorators=new c.default(this.options.srcName)},createFunctionContext:function(h){var y=this,E="",x=this.stackVars.concat(this.registers.list);x.length>0&&(E+=", "+x.join(", "));var T=0;p(this.aliases).forEach(function(_){var C=y.aliases[_];C.children&&C.referenceCount>1&&(E+=", alias"+ ++T+"="+_,C.children[0]="alias"+T)}),this.lookupPropertyFunctionIsUsed&&(E+=", "+this.lookupPropertyFunctionVarDeclaration());var A=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&A.push("blockParams"),this.useDepths&&A.push("depths");var w=this.mergeSource(E);return h?(A.push(w),Function.apply(this,A)):this.source.wrap(["function(",A.join(","),`) {
|
||
|
`,w,"}"])},mergeSource:function(h){var y=this.environment.isSimple,E=!this.forceBuffer,x=void 0,T=void 0,A=void 0,w=void 0;return this.source.each(function(_){_.appendToBuffer?(A?_.prepend(" + "):A=_,w=_):(A&&(T?A.prepend("buffer += "):x=!0,w.add(";"),A=w=void 0),T=!0,y||(E=!1))}),E?A?(A.prepend("return "),w.add(";")):T||this.source.push('return "";'):(h+=", buffer = "+(x?"":this.initializeBuffer()),A?(A.prepend("return buffer + "),w.add(";")):this.source.push("return buffer;")),h&&this.source.prepend("var "+h.substring(2)+(x?"":`;
|
||
|
`)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return`
|
||
|
lookupProperty = container.lookupProperty || function(parent, propertyName) {
|
||
|
if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {
|
||
|
return parent[propertyName];
|
||
|
}
|
||
|
return undefined
|
||
|
}
|
||
|
`.trim()},blockValue:function(h){var y=this.aliasable("container.hooks.blockHelperMissing"),E=[this.contextName(0)];this.setupHelperArgs(h,0,E);var x=this.popStack();E.splice(1,0,x),this.push(this.source.functionCall(y,"call",E))},ambiguousBlockValue:function(){var h=this.aliasable("container.hooks.blockHelperMissing"),y=[this.contextName(0)];this.setupHelperArgs("",0,y,!0),this.flushInline();var E=this.topStack();y.splice(1,0,E),this.pushSource(["if (!",this.lastHelper,") { ",E," = ",this.source.functionCall(h,"call",y),"}"])},appendContent:function(h){this.pendingContent?h=this.pendingContent+h:this.pendingLocation=this.source.currentLocation,this.pendingContent=h},append:function(){if(this.isInline())this.replaceStack(function(y){return[" != null ? ",y,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var h=this.popStack();this.pushSource(["if (",h," != null) { ",this.appendToBuffer(h,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(h){this.lastContext=h},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(h,y,E,x){var T=0;x||!this.options.compat||this.lastContext?this.pushContext():this.push(this.depthedLookup(h[T++])),this.resolvePath("context",h,T,y,E)},lookupBlockParam:function(h,y){this.useBlockParams=!0,this.push(["blockParams[",h[0],"][",h[1],"]"]),this.resolvePath("context",y,1)},lookupData:function(h,y,E){h?this.pushStackLiteral("container.data(data, "+h+")"):this.pushStackLiteral("data"),this.resolvePath("data",y,0,!0,E)},resolvePath:function(h,y,E,x,T){var A=this;if(this.options.strict||this.options.assumeObjects)return void this.push(u(this.options.strict&&T,this,y,h));for(var w=y.length;E<w;E++)this.replaceStack(function(_){var C=A.nameLookup(_,y[E],h);return x?[" && ",C]:[" != null ? ",C," : ",_]})},resolvePossibleLambda:function(){this.push([this.aliasable("container.lambda"),"(",this.popStack(),", ",this.contextName(0),")"])},pushStringParam:function(h,y){this.pushContext(),this.pushString(y),y!=="SubExpression"&&(typeof h=="string"?this.pushString(h):this.pushStackLiteral(h))},emptyHash:function(h){this.trackIds&&this.push("{}"),this.stringParams&&(this.push("{}"),this.push("{}")),this.pushStackLiteral(h?"undefined":"{}")},pushHash:function(){this.hash&&this.hashes.push(this.hash),this.hash={values:{},types:[],contexts:[],ids:[]}},popHash:function(){var h=this.hash;this.hash=this.hashes.pop(),this.trackIds&&this.push(this.objectLiteral(h.ids)),this.stringParams&&(this.push(this.objectLiteral(h.contexts)),this.push(this.objectLiteral(h.types))),this.push(this.objectLiteral(h.values))},pushString:function(h){this.pushStackLiteral(this.quotedString(h))},pushLiteral:function(h){this.pushStackLiteral(h)},pushProgram:function(h){h!=null?this.pushStackLiteral(this.programExpression(h)):this.pushStackLiteral(null)},registerDecorator:function(h,y){var E=this.nameLookup("decorators",y,"decorator"),x=this.setupHelperArgs(y,h);this.decorators.push(["fn = ",this.decorators.functionCall(E,"",["fn","props","container",x])," || fn;"])},invokeHelper:function(h,y,E){var x=this.popStack(),T=this.setupHelper(h,y),A=[];E&&A.push(T.name),A.push(x),this.options.strict||A.push(this.aliasable("container.hooks.helperMissing"));var w=["(",this.itemsSeparatedBy(A,"||"),")"],_=this.source.functionCall(w,"call",T.callParams);this.push(_)},itemsSeparatedBy:function(h,y){var E=[];E.push(h[0]);for(var x=1;x<h.length;x++)E.push(y,h[x]);return E},invokeKnownHelper:function(h,y){var E=this.setupHelper(h,y);this.push(this.source.functionCall(E.name,"call",E.callParams))},invokeAmbiguous:function(h,y){this.useRegister("helper");var E=this.popStack();this.emptyHash();var x=this.setupHelper(0,h,y),T=this.lastHelper=this.nameLookup("helpers",h,"helper"),A=["(","(helper = ",T," || ",E,")"];this.options.strict||(A[0]="(helper = ",A.push(" != null
|
||
|
`])}),o},each:function(o){for(var f=0,g=this.source.length;f<g;f++)o(this.source[f])},empty:function(){var o=this.currentLocation||{start:{}};return new l(o.start.line,o.start.column,this.srcFile)},wrap:function(o){var f=arguments.length<=1||arguments[1]===void 0?this.currentLocation||{start:{}}:arguments[1];return o instanceof l?o:(o=r(o,this,f),new l(f.start.line,f.start.column,this.srcFile,o))},functionCall:function(o,f,g){return g=this.generateList(g),this.wrap([o,f?"."+f+"(":"(",g,")"])},quotedString:function(o){return'"'+(o+"").replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")+'"'},objectLiteral:function(o){var f=this,g=[];u(o).forEach(function(v){var c=r(o[v],f);c!=="undefined"&&g.push([f.quotedString(v),":",c])});var i=this.generateList(g);return i.prepend("{"),i.add("}"),i},generateList:function(o){for(var f=this.empty(),g=0,i=o.length;g<i;g++)g&&f.add(","),f.add(r(o[g],this));return f},generateArray:function(o){var f=this.generateList(o);return f.prepend("["),f.add("]"),f}},s.default=n,m.exports=s.default}])})},7178:(b,m,s)=>{var d,r;d=[s(8934),s(7792),s(2134),s(8663),s(454),s(6981),s(7661),s(8048),s(461),s(1045),s(6525),s(5385)],r=function(n,u,p,l,o,f,g){"use strict";var i=/%20/g,v=/#.*$/,c=/([?&])_=[^&]*/,h=/^(.*?):[ \t]*([^\r\n]*)$/mg,y=/^(?:about|app|app-storage|.+-extension|file|res|widget):$/,E=/^(?:GET|HEAD)$/,x=/^\/\//,T={},A={},w="*/".concat("*"),_=u.createElement("a");_.href=o.href;function C(N){return function(k,W){typeof k!="string"&&(W=k,k="*");var Y,F=0,H=k.toLowerCase().match(l)||[];if(p(W))for(;Y=H[F++];)Y[0]==="+"?(Y=Y.slice(1)||"*",(N[Y]=N[Y]||[]).unshift(W)):(N[Y]=N[Y]||[]).push(W)}}function O(N,k,W,Y){var F={},H=N===A;function $(V){var K;return F[V]=!0,n.each(N[V]||[],function(Q,ie){var fe=ie(k,W,Y);if(typeof fe=="string"&&!H&&!F[fe])return k.dataTypes.unshift(fe),$(fe),!1;if(H)return!(K=fe)}),K}return $(k.dataTypes[0])||!F["*"]&&$("*")}function I(N,k){var W,Y,F=n.ajaxSettings.flatOptions||{};for(W in k)k[W]!==void 0&&((F[W]?N:Y||(Y={}))[W]=k[W]);return Y&&n.extend(!0,N,Y),N}function R(N,k,W){for(var Y,F,H,$,V=N.contents,K=N.dataTypes;K[0]==="*";)K.shift(),Y===void 0&&(Y=N.mimeType||k.getResponseHeader("Content-Type"));if(Y){for(F in V)if(V[F]&&V[F].test(Y)){K.unshift(F);break}}if(K[0]in W)H=K[0];else{for(F in W){if(!K[0]||N.converters[F+" "+K[0]]){H=F;break}$||($=F)}H=H||$}if(H)return H!==K[0]&&K.unshift(H),W[H]}function D(N,k,W,Y){var F,H,$,V,K,Q={},ie=N.dataTypes.slice();if(ie[1])for($ in N.converters)Q[$.toLowerCase()]=N.converters[$];for(H=ie.shift();H;)if(N.responseFields[H]&&(W[N.responseFields[H]]=k),!K&&Y&&N.dataFilter&&(k=N.dataFilter(k,N.dataType)),K=H,H=ie.shift(),H){if(H==="*")H=K;else if(K!=="*"&&K!==H){if($=Q[K+" "+H]||Q["* "+H],!$){for(F in Q)if(V=F.split(" "),V[1]===H&&($=Q[K+" "+V[0]]||Q["* "+V[0]],$)){$===!0?$=Q[F]:Q[F]!==!0&&(H=V[0],ie.unshift(V[1]));break}}if($!==!0)if($&&N.throws)k=$(k);else try{k=$(k)}catch(fe){return{state:"parsererror",error:$?fe:"No conversion from "+K+" to "+H}}}}return{state:"success",data:k}}return n.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:o.href,type:"GET",isLocal:y.test(o.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":w,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":n.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(N,k){return k?I(I(N,n.ajaxSettings),k):I(n.ajaxSettings,N)},ajaxPrefilter:C(T),ajaxTransport:C(A),ajax:function(N,k){typeof N=="object"&&(k=N,N=void 0),k=k||{};var W,Y,F,H,$,V,K,Q,ie,fe,J=n.ajaxSetup({},k),Ee=J.context||J,xe=J.context&&(Ee.nodeType||Ee.jquery)?n(Ee):n.event,Te=n.Deferred(),je=n.Callbacks("once memory"),dt=J.statusCode||{},At={},yt={},Lt="canceled",Pe={readyS
|
||
|
`):u)),p},n.parseXML}.apply(m,d),r!==void 0&&(b.exports=r)},5703:(b,m,s)=>{var d,r;d=[s(8934),s(7792),s(3442),s(6525)],r=function(n,u){"use strict";var p=n.Deferred();n.fn.ready=function(o){return p.then(o).catch(function(f){n.readyException(f)}),this},n.extend({isReady:!1,readyWait:1,ready:function(o){(o===!0?--n.readyWait:n.isReady)||(n.isReady=!0,!(o!==!0&&--n.readyWait>0)&&p.resolveWith(u,[n]))}}),n.ready.then=p.then;function l(){u.removeEventListener("DOMContentLoaded",l),window.removeEventListener("load",l),n.ready()}u.readyState==="complete"||u.readyState!=="loading"&&!u.documentElement.doScroll?window.setTimeout(n.ready):(u.addEventListener("DOMContentLoaded",l),window.addEventListener("load",l))}.apply(m,d),r!==void 0&&(b.exports=r)},3442:(b,m,s)=>{var d,r;d=[s(8934)],r=function(n){"use strict";n.readyException=function(u){window.setTimeout(function(){throw u})}}.apply(m,d),r!==void 0&&(b.exports=r)},4552:(b,m,s)=>{var d,r;d=[s(8663)],r=function(n){"use strict";function u(p){var l=p.match(n)||[];return l.join(" ")}return u}.apply(m,d),r!==void 0&&(b.exports=r)},1622:(b,m,s)=>{var d,r;d=[s(7792),s(9523)],r=function(n,u){"use strict";return u.createHTMLDocument=function(){var p=n.implementation.createHTMLDocument("").body;return p.innerHTML="<form></form><form></form>",p.childNodes.length===2}(),u}.apply(m,d),r!==void 0&&(b.exports=r)},8082:(b,m,s)=>{var d,r;d=[s(5949),s(7763)],r=function(n,u){"use strict";function p(l){return l==null?l+"":typeof l=="object"||typeof l=="function"?n[u.call(l)]||"object":typeof l}return p}.apply(m,d),r!==void 0&&(b.exports=r)},5250:(b,m,s)=>{var d;d=function(){"use strict";return/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i}.call(m,s,m,b),d!==void 0&&(b.exports=d)},8515:(b,m,s)=>{var d,r;d=[s(8934),s(7163),s(1133),s(7060),s(6871),s(618),s(4507),s(5057),s(3122),s(5410),s(610),s(7432),s(3781),s(4405),s(3997),s(8048),s(5703),s(655)],r=function(n,u,p,l,o,f,g,i,v,c,h,y,E,x,T){"use strict";var A=/^(none|table(?!-c[ea]).+)/,w={position:"absolute",visibility:"hidden",display:"block"},_={letterSpacing:"0",fontWeight:"400"};function C(R,D,N){var k=o.exec(D);return k?Math.max(0,k[2]-(N||0))+(k[3]||"px"):D}function O(R,D,N,k,W,Y){var F=D==="width"?1:0,H=0,$=0,V=0;if(N===(k?"border":"content"))return 0;for(;F<4;F+=2)N==="margin"&&(V+=n.css(R,N+i[F],!0,W)),k?(N==="content"&&($-=n.css(R,"padding"+i[F],!0,W)),N!=="margin"&&($-=n.css(R,"border"+i[F]+"Width",!0,W))):($+=n.css(R,"padding"+i[F],!0,W),N!=="padding"?$+=n.css(R,"border"+i[F]+"Width",!0,W):H+=n.css(R,"border"+i[F]+"Width",!0,W));return!k&&Y>=0&&($+=Math.max(0,Math.ceil(R["offset"+D[0].toUpperCase()+D.slice(1)]-Y-$-H-.5))||0),$+V}function I(R,D,N){var k=v(R),W=!x.boxSizingReliable()||N,Y=W&&n.css(R,"boxSizing",!1,k)==="border-box",F=Y,H=h(R,D,k),$="offset"+D[0].toUpperCase()+D.slice(1);if(f.test(H)){if(!N)return H;H="auto"}return(!x.boxSizingReliable()&&Y||!x.reliableTrDimensions()&&l(R,"tr")||H==="auto"||!parseFloat(H)&&n.css(R,"display",!1,k)==="inline")&&R.getClientRects().length&&(Y=n.css(R,"boxSizing",!1,k)==="border-box",F=$ in R,F&&(H=R[$])),H=parseFloat(H)||0,H+O(R,D,N||(Y?"border":"content"),F,k,H)+"px"}return n.extend({cssHooks:{opacity:{get:function(R,D){if(D){var N=h(R,"opacity");return N===""?"1":N}}}},cssNumber:{animationIterationCount:!0,aspectRatio:!0,borderImageSlice:!0,columnCount:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,scale:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeMiterlimit:!0,strokeOpacity:!0},cssProps:{},style:function(R,D,N,k){if(!(!R||R.nodeType===3||R.nodeType===8||!R.style)){var W,Y,F,H=p(D),$=g.test(D),V=R.style;if($||(D=T(H)),F=n.cssHooks[D]||n.cssHooks[H],N!==void 0){if(Y=typeof N,Y==="string"&&(W=o.exec(N))&&W[1]&&(N=y(R,D,W),Y="number"),N==null||N!==N)return;Y==="number"&&!$&&(N+=W&&W[3]||(n.cssNumber[H]?"":"px")),!x.clearCloneStyle&&N===""&&D.indexOf("background")===0&&(V[D]="inherit"),(!F||!("set"
|
||
|
`)}}):{name:h.name,value:y.replace(f,`\r
|
||
|
`)}}).get()}}),n}.apply(m,d),r!==void 0&&(b.exports=r)},8482:(b,m,s)=>{var d,r;d=[s(8934),s(8045),s(5431),s(1721),s(2495),s(8020),s(7060),s(8048),s(1764),s(655)],r=function(n,u,p,l,o,f,g){"use strict";var i=/^(?:parents|prev(?:Until|All))/,v={children:!0,contents:!0,next:!0,prev:!0};n.fn.extend({has:function(h){var y=n(h,this),E=y.length;return this.filter(function(){for(var x=0;x<E;x++)if(n.contains(this,y[x]))return!0})},closest:function(h,y){var E,x=0,T=this.length,A=[],w=typeof h!="string"&&n(h);if(!f.test(h)){for(;x<T;x++)for(E=this[x];E&&E!==y;E=E.parentNode)if(E.nodeType<11&&(w?w.index(E)>-1:E.nodeType===1&&n.find.matchesSelector(E,h))){A.push(E);break}}return this.pushStack(A.length>1?n.uniqueSort(A):A)},index:function(h){return h?typeof h=="string"?p.call(n(h),this[0]):p.call(this,h.jquery?h[0]:h):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(h,y){return this.pushStack(n.uniqueSort(n.merge(this.get(),n(h,y))))},addBack:function(h){return this.add(h==null?this.prevObject:this.prevObject.filter(h))}});function c(h,y){for(;(h=h[y])&&h.nodeType!==1;);return h}return n.each({parent:function(h){var y=h.parentNode;return y&&y.nodeType!==11?y:null},parents:function(h){return l(h,"parentNode")},parentsUntil:function(h,y,E){return l(h,"parentNode",E)},next:function(h){return c(h,"nextSibling")},prev:function(h){return c(h,"previousSibling")},nextAll:function(h){return l(h,"nextSibling")},prevAll:function(h){return l(h,"previousSibling")},nextUntil:function(h,y,E){return l(h,"nextSibling",E)},prevUntil:function(h,y,E){return l(h,"previousSibling",E)},siblings:function(h){return o((h.parentNode||{}).firstChild,h)},children:function(h){return o(h.firstChild)},contents:function(h){return h.contentDocument!=null&&u(h.contentDocument)?h.contentDocument:(g(h,"template")&&(h=h.content||h),n.merge([],h.childNodes))}},function(h,y){n.fn[h]=function(E,x){var T=n.map(this,y,E);return h.slice(-5)!=="Until"&&(x=E),x&&typeof x=="string"&&(T=n.filter(x,T)),this.length>1&&(v[h]||n.uniqueSort(T),i.test(h)&&T.reverse()),this.pushStack(T)}}),n}.apply(m,d),r!==void 0&&(b.exports=r)},1764:(b,m,s)=>{var d,r;d=[s(8934),s(5431),s(2134),s(8020),s(655)],r=function(n,u,p,l){"use strict";function o(f,g,i){return p(g)?n.grep(f,function(v,c){return!!g.call(v,c,v)!==i}):g.nodeType?n.grep(f,function(v){return v===g!==i}):typeof g!="string"?n.grep(f,function(v){return u.call(g,v)>-1!==i}):n.filter(g,f,i)}n.filter=function(f,g,i){var v=g[0];return i&&(f=":not("+f+")"),g.length===1&&v.nodeType===1?n.find.matchesSelector(v,f)?[v]:[]:n.find.matches(f,n.grep(g,function(c){return c.nodeType===1}))},n.fn.extend({find:function(f){var g,i,v=this.length,c=this;if(typeof f!="string")return this.pushStack(n(f).filter(function(){for(g=0;g<v;g++)if(n.contains(c[g],this))return!0}));for(i=this.pushStack([]),g=0;g<v;g++)n.find(f,c[g],i);return v>1?n.uniqueSort(i):i},filter:function(f){return this.pushStack(o(this,f||[],!1))},not:function(f){return this.pushStack(o(this,f||[],!0))},is:function(f){return!!o(this,typeof f=="string"&&l.test(f)?n(f):f||[],!1).length}})}.apply(m,d),r!==void 0&&(b.exports=r)},1721:(b,m,s)=>{var d,r;d=[s(8934)],r=function(n){"use strict";return function(u,p,l){for(var o=[],f=l!==void 0;(u=u[p])&&u.nodeType!==9;)if(u.nodeType===1){if(f&&n(u).is(l))break;o.push(u)}return o}}.apply(m,d),r!==void 0&&(b.exports=r)},8020:(b,m,s)=>{var d,r;d=[s(8934),s(655)],r=function(n){"use strict";return n.expr.match.needsContext}.apply(m,d),r!==void 0&&(b.exports=r)},2495:(b,m,s)=>{var d;d=function(){"use strict";return function(r,n){for(var u=[];r;r=r.nextSibling)r.nodeType===1&&r!==n&&u.push(r);return u}}.call(m,s,m,b),d!==void 0&&(b.exports=d)},3:(b,m,s)=>{var d,r;d=[s(4194)],r=function(n){"use strict";return n.call(Object)}.apply(m,d),r!==void 0&&(b.exports=r)},3727:(b,m,s)=>{var d;d=function(){"use strict";return[]}.call(m,s,m,b),d!==void 0&&(b.exports=d)},5949:(b,m,s)=>{var d;d=function(){"use strict";return{}}.call(m,s,m,b),d!==void 0&&(b.exports=d)},7792:(b,m,s)=>{var d;d=function(){"use strict";return window.document}.call(m,
|
||
|
* @license
|
||
|
* Lodash <https://lodash.com/>
|
||
|
* Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
|
||
|
* Released under MIT license <https://lodash.com/license>
|
||
|
* Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
|
||
|
* Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
|
||
|
*/(function(){var r,n="4.17.21",u=200,p="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",l="Expected a function",o="Invalid `variable` option passed into `_.template`",f="__lodash_hash_undefined__",g=500,i="__lodash_placeholder__",v=1,c=2,h=4,y=1,E=2,x=1,T=2,A=4,w=8,_=16,C=32,O=64,I=128,R=256,D=512,N=30,k="...",W=800,Y=16,F=1,H=2,$=3,V=1/0,K=9007199254740991,Q=17976931348623157e292,ie=0/0,fe=4294967295,J=fe-1,Ee=fe>>>1,xe=[["ary",I],["bind",x],["bindKey",T],["curry",w],["curryRight",_],["flip",D],["partial",C],["partialRight",O],["rearg",R]],Te="[object Arguments]",je="[object Array]",dt="[object AsyncFunction]",At="[object Boolean]",yt="[object Date]",Lt="[object DOMException]",Pe="[object Error]",gt="[object Function]",$e="[object GeneratorFunction]",Ye="[object Map]",Ut="[object Number]",Oe="[object Null]",oe="[object Object]",_e="[object Promise]",Re="[object Proxy]",ae="[object RegExp]",ye="[object Set]",ce="[object String]",we="[object Symbol]",Me="[object Undefined]",Ue="[object WeakMap]",Qe="[object WeakSet]",Ze="[object ArrayBuffer]",Ve="[object DataView]",it="[object Float32Array]",lt="[object Float64Array]",Dt="[object Int8Array]",kt="[object Int16Array]",xt="[object Int32Array]",sn="[object Uint8Array]",Kt="[object Uint8ClampedArray]",hn="[object Uint16Array]",Fn="[object Uint32Array]",Rt=/\b__p \+= '';/g,bn=/\b(__p \+=) '' \+/g,St=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Gn=/&(?:amp|lt|gt|quot|#39);/g,dn=/[&<>"']/g,Tn=RegExp(Gn.source),B=RegExp(dn.source),z=/<%-([\s\S]+?)%>/g,j=/<%([\s\S]+?)%>/g,ee=/<%=([\s\S]+?)%>/g,re=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ve=/^\w*$/,Ae=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,ne=/[\\^$.*+?()[\]{}|]/g,q=RegExp(ne.source),ue=/^\s+/,le=/\s/,me=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,be=/\{\n\/\* \[wrapped with (.+)\] \*/,ge=/,? & /,ke=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,ut=/[()=,{}\[\]\/\s]/,st=/\\(\\)?/g,vt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,Ke=/\w*$/,qe=/^[-+]0x[0-9a-f]+$/i,wt=/^0b[01]+$/i,As=/^\[object .+?Constructor\]$/,xs=/^0o[0-7]+$/i,zn=/^(?:0|[1-9]\d*)$/,Ja=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xr=/($^)/,qa=/['\n\r\u2028\u2029\\]/g,Sr="\\ud800-\\udfff",ja="\\u0300-\\u036f",Qa="\\ufe20-\\ufe2f",el="\\u20d0-\\u20ff",Ss=ja+Qa+el,ws="\\u2700-\\u27bf",bs="a-z\\xdf-\\xf6\\xf8-\\xff",tl="\\xac\\xb1\\xd7\\xf7",nl="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",rl="\\u2000-\\u206f",il=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Ts="A-Z\\xc0-\\xd6\\xd8-\\xde",Ds="\\ufe0e\\ufe0f",_s=tl+nl+rl+il,fi="['\u2019]",sl="["+Sr+"]",Cs="["+_s+"]",wr="["+Ss+"]",Ps="\\d+",ol="["+ws+"]",Rs="["+bs+"]",Is="[^"+Sr+_s+Ps+ws+bs+Ts+"]",ci="\\ud83c[\\udffb-\\udfff]",al="(?:"+wr+"|"+ci+")",Ns="[^"+Sr+"]",pi="(?:\\ud83c[\\udde6-\\uddff]){2}",hi="[\\ud800-\\udbff][\\udc00-\\udfff]",Yn="["+Ts+"]",Ls="\\u200d",Os="(?:"+Rs+"|"+Is+")",ll="(?:"+Yn+"|"+Is+")",Fs="(?:"+fi+"(?:d|ll|m|re|s|t|ve))?",Ms="(?:"+fi+"(?:D|LL|M|RE|S|T|VE))?",ks=al+"?",Bs="["+Ds+"]?",ul="(?:"+Ls+"(?:"+[Ns,pi,hi].join("|")+")"+Bs+ks+")*",fl="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",cl="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",$s=Bs+ks+ul,pl="(?:"+[ol,pi,hi].join("|")+")"+$s,hl="(?:"+[Ns+wr+"?",wr,pi,hi,sl].join("|")+")",dl=RegExp(fi,"g"),gl=RegExp(wr,"g"),di=RegExp(ci+"(?="+ci+")|"+hl+$s,"g"),vl=RegExp([Yn+"?"+Rs+"+"+Fs+"(?="+[Cs,Yn,"$"].join("|")+")",ll+"+"+Ms+"(?="+[Cs,Yn+Os,"$"].join("|")+")",Yn+"?"+Os+"+"+Fs,Yn+"+"+Ms,cl,fl,Ps,pl].join("|"),"g"),ml=RegExp("["+Ls+Sr+Ss+Ds+"]"),El=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,yl=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],Al=-1,ft={};ft[it]=ft[lt]=ft[Dt]=ft[
|
||
|
/* [wrapped with `+t+`] */
|
||
|
`)}function Bf(e){return Be(e)||Kn(e)||!!(uo&&e&&e[uo])}function An(e,t){var a=typeof e;return t=t==null?K:t,!!t&&(a=="number"||a!="symbol"&&zn.test(e))&&e>-1&&e%1==0&&e<t}function Ft(e,t,a){if(!pt(a))return!1;var S=typeof t;return(S=="number"?$t(a)&&An(t,a.length):S=="string"&&t in a)?ln(a[t],e):!1}function es(e,t){if(Be(e))return!1;var a=typeof e;return a=="number"||a=="symbol"||a=="boolean"||e==null||Vt(e)?!0:ve.test(e)||!re.test(e)||t!=null&&e in ot(t)}function $f(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}function ts(e){var t=Qr(e),a=L[t];if(typeof a!="function"||!(t in Xe.prototype))return!1;if(e===a)return!0;var S=qi(a);return!!S&&e===S[0]}function Hf(e){return!!so&&so in e}var Wf=Pr?xn:Es;function Er(e){var t=e&&e.constructor,a=typeof t=="function"&&t.prototype||Jn;return e===a}function oa(e){return e===e&&!pt(e)}function aa(e,t){return function(a){return a==null?!1:a[e]===t&&(t!==r||e in ot(a))}}function Uf(e){var t=si(e,function(S){return a.size===g&&a.clear(),S}),a=t.cache;return t}function Kf(e,t){var a=e[1],S=t[1],P=a|S,M=P<(x|T|I),U=S==I&&a==w||S==I&&a==R&&e[7].length<=t[8]||S==(I|R)&&t[7].length<=t[8]&&a==w;if(!(M||U))return e;S&x&&(e[2]=t[2],P|=a&x?0:A);var G=t[3];if(G){var Z=e[3];e[3]=Z?Ko(Z,G,t[4]):G,e[4]=Z?Cn(e[3],i):t[4]}return G=t[5],G&&(Z=e[5],e[5]=Z?Go(Z,G,t[6]):G,e[6]=Z?Cn(e[5],i):t[6]),G=t[7],G&&(e[7]=G),S&I&&(e[8]=e[8]==null?t[8]:It(e[8],t[8])),e[9]==null&&(e[9]=t[9]),e[0]=t[0],e[1]=P,e}function Gf(e){var t=[];if(e!=null)for(var a in ot(e))t.push(a);return t}function zf(e){return Ir.call(e)}function la(e,t,a){return t=Tt(t===r?e.length-1:t,0),function(){for(var S=arguments,P=-1,M=Tt(S.length-t,0),U=te(M);++P<M;)U[P]=S[t+P];P=-1;for(var G=te(t+1);++P<t;)G[P]=S[P];return G[t]=a(U),Gt(e,this,G)}}function ua(e,t){return t.length<2?e:Hn(e,tn(t,0,-1))}function Yf(e,t){for(var a=e.length,S=It(t.length,a),P=Bt(e);S--;){var M=t[S];e[S]=An(M,a)?P[M]:r}return e}function ns(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}var fa=pa(Lo),yr=ou||function(e,t){return Ct.setTimeout(e,t)},rs=pa(gf);function ca(e,t,a){var S=t+"";return rs(e,kf(S,Vf(Of(S),a)))}function pa(e){var t=0,a=0;return function(){var S=fu(),P=Y-(S-a);if(a=S,P>0){if(++t>=W)return arguments[0]}else t=0;return e.apply(r,arguments)}}function ti(e,t){var a=-1,S=e.length,P=S-1;for(t=t===r?S:t;++a<t;){var M=$i(a,P),U=e[M];e[M]=e[a],e[a]=U}return e.length=t,e}var ha=Uf(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(Ae,function(a,S,P,M){t.push(P?M.replace(st,"$1"):S||a)}),t});function pn(e){if(typeof e=="string"||Vt(e))return e;var t=e+"";return t=="0"&&1/e==-V?"-0":t}function Un(e){if(e!=null){try{return Rr.call(e)}catch(t){}try{return e+""}catch(t){}}return""}function Vf(e,t){return qt(xe,function(a){var S="_."+a[0];t&a[1]&&!br(e,S)&&e.push(S)}),e.sort()}function da(e){if(e instanceof Xe)return e.clone();var t=new Qt(e.__wrapped__,e.__chain__);return t.__actions__=Bt(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}function Xf(e,t,a){(a?Ft(e,t,a):t===r)?t=1:t=Tt(He(t),0);var S=e==null?0:e.length;if(!S||t<1)return[];for(var P=0,M=0,U=te(kr(S/t));P<S;)U[M++]=tn(e,P,P+=t);return U}function Zf(e){for(var t=-1,a=e==null?0:e.length,S=0,P=[];++t<a;){var M=e[t];M&&(P[S++]=M)}return P}function Jf(){var e=arguments.length;if(!e)return[];for(var t=te(e-1),a=arguments[0],S=e;S--;)t[S-1]=arguments[S];return _n(Be(a)?Bt(a):[a],Pt(t,1))}var qf=Ge(function(e,t){return mt(e)?hr(e,Pt(t,1,mt,!0)):[]}),jf=Ge(function(e,t){var a=nn(t);return mt(a)&&(a=r),mt(e)?hr(e,Pt(t,1,mt,!0),Ie(a,2)):[]}),Qf=Ge(function(e,t){var a=nn(t);return mt(a)&&(a=r),mt(e)?hr(e,Pt(t,1,mt,!0),r,a):[]});function ec(e,t,a){var S=e==null?0:e.length;return S?(t=a||t===r?1:He(t),tn(e,t<0?0:t,S)):[]}function tc(e,t,a){var S=e==null?0:e.length;return S?(t=a||t===r?1:He(t),t=S-t,tn(e,0,t<0?0:t)):[]}function nc(e,t){return e&&e.length?Vr(e,Ie(t,3),!0,!0):[]}function rc(e,t){return e&&e.length?Vr(e,Ie(t,3),!0):[]}function ic(e,t,a,S){var P=e==null?0:e.length;return P?(a
|
||
|
`;e.replace(Se,function(Le,ze,Je,Xt,Mt,Zt){return Je||(Je=Xt),de+=e.slice(pe,Zt).replace(qa,Hl),ze&&(G=!0,de+=`' +
|
||
|
__e(`+ze+`) +
|
||
|
'`),Mt&&(Z=!0,de+=`';
|
||
|
`+Mt+`;
|
||
|
__p += '`),Je&&(de+=`' +
|
||
|
((__t = (`+Je+`)) == null ? '' : __t) +
|
||
|
'`),pe=Zt+Le.length,Le}),de+=`';
|
||
|
`;var Ne=nt.call(t,"variable")&&t.variable;if(!Ne)de=`with (obj) {
|
||
|
`+de+`
|
||
|
}
|
||
|
`;else if(ut.test(Ne))throw new Fe(o);de=(Z?de.replace(Rt,""):de).replace(bn,"$1").replace(St,"$1;"),de="function("+(Ne||"obj")+`) {
|
||
|
`+(Ne?"":`obj || (obj = {});
|
||
|
`)+"var __t, __p = ''"+(G?", __e = _.escape":"")+(Z?`, __j = Array.prototype.join;
|
||
|
function print() { __p += __j.call(arguments, '') }
|
||
|
`:`;
|
||
|
`)+de+`return __p
|
||
|
}`;var We=Ya(function(){return et(M,Ce+"return "+de).apply(r,U)});if(We.source=de,ls(We))throw We;return We}function hd(e){return tt(e).toLowerCase()}function dd(e){return tt(e).toUpperCase()}function gd(e,t,a){if(e=tt(e),e&&(a||t===r))return eo(e);if(!e||!(t=Yt(t)))return e;var S=on(e),P=on(t),M=to(S,P),U=no(S,P)+1;return Ln(S,M,U).join("")}function vd(e,t,a){if(e=tt(e),e&&(a||t===r))return e.slice(0,io(e)+1);if(!e||!(t=Yt(t)))return e;var S=on(e),P=no(S,on(t))+1;return Ln(S,0,P).join("")}function md(e,t,a){if(e=tt(e),e&&(a||t===r))return e.replace(ue,"");if(!e||!(t=Yt(t)))return e;var S=on(e),P=to(S,on(t));return Ln(S,P).join("")}function Ed(e,t){var a=N,S=k;if(pt(t)){var P="separator"in t?t.separator:P;a="length"in t?He(t.length):a,S="omission"in t?Yt(t.omission):S}e=tt(e);var M=e.length;if(Xn(e)){var U=on(e);M=U.length}if(a>=M)return e;var G=a-Zn(S);if(G<1)return S;var Z=U?Ln(U,0,G).join(""):e.slice(0,G);if(P===r)return Z+S;if(U&&(G+=Z.length-G),us(P)){if(e.slice(G).search(P)){var pe,he=Z;for(P.global||(P=Ti(P.source,tt(Ke.exec(P))+"g")),P.lastIndex=0;pe=P.exec(he);)var de=pe.index;Z=Z.slice(0,de===r?G:de)}}else if(e.indexOf(Yt(P),G)!=G){var Se=Z.lastIndexOf(P);Se>-1&&(Z=Z.slice(0,Se))}return Z+S}function yd(e){return e=tt(e),e&&Tn.test(e)?e.replace(Gn,Vl):e}var Ad=tr(function(e,t,a){return e+(a?" ":"")+t.toUpperCase()}),ps=Vo("toUpperCase");function za(e,t,a){return e=tt(e),t=a?r:t,t===r?Ul(e)?Jl(e):Ll(e):e.match(t)||[]}var Ya=Ge(function(e,t){try{return Gt(e,r,t)}catch(a){return ls(a)?a:new Fe(a)}}),xd=yn(function(e,t){return qt(t,function(a){a=pn(a),mn(e,a,os(e[a],e))}),e});function Sd(e){var t=e==null?0:e.length,a=Ie();return e=t?ct(e,function(S){if(typeof S[1]!="function")throw new jt(l);return[a(S[0]),S[1]]}):[],Ge(function(S){for(var P=-1;++P<t;){var M=e[P];if(Gt(M[0],this,S))return Gt(M[1],this,S)}})}function wd(e){return Vu(en(e,v))}function hs(e){return function(){return e}}function bd(e,t){return e==null||e!==e?t:e}var Td=Zo(),Dd=Zo(!0);function Wt(e){return e}function ds(e){return To(typeof e=="function"?e:en(e,v))}function _d(e){return _o(en(e,v))}function Cd(e,t){return Co(e,en(t,v))}var Pd=Ge(function(e,t){return function(a){return dr(a,e,t)}}),Rd=Ge(function(e,t){return function(a){return dr(e,a,t)}});function gs(e,t,a){var S=_t(t),P=Gr(t,S);a==null&&!(pt(t)&&(P.length||!S.length))&&(a=t,t=e,e=this,P=Gr(t,_t(t)));var M=!(pt(a)&&"chain"in a)||!!a.chain,U=xn(e);return qt(P,function(G){var Z=t[G];e[G]=Z,U&&(e.prototype[G]=function(){var pe=this.__chain__;if(M||pe){var he=e(this.__wrapped__),de=he.__actions__=Bt(this.__actions__);return de.push({func:Z,args:arguments,thisArg:e}),he.__chain__=pe,he}return Z.apply(e,_n([this.value()],arguments))})}),e}function Id(){return Ct._===this&&(Ct._=nu),this}function vs(){}function Nd(e){return e=He(e),Ge(function(t){return Po(t,e)})}var Ld=Vi(ct),Od=Vi(Zs),Fd=Vi(Ei);function Va(e){return es(e)?yi(pn(e)):cf(e)}function Md(e){return function(t){return e==null?r:Hn(e,t)}}var kd=qo(),Bd=qo(!0);function ms(){return[]}function Es(){return!1}function $d(){return{}}function Hd(){return""}function Wd(){return!0}function Ud(e,t){if(e=He(e),e<1||e>K)return[];var a=fe,S=It(e,fe);t=Ie(t),e-=fe;for(var P=Si(S,t);++a<e;)t(a);return P}function Kd(e){return Be(e)?ct(e,pn):Vt(e)?[e]:Bt(ha(tt(e)))}function Gd(e){var t=++eu;return tt(e)+t}var zd=Jr(function(e,t){return e+t},0),Yd=Xi("ceil"),Vd=Jr(function(e,t){return e/t},1),Xd=Xi("floor");function Zd(e){return e&&e.length?Kr(e,Wt,Li):r}function Jd(e,t){return e&&e.length?Kr(e,Ie(t,2),Li):r}function qd(e){return js(e,Wt)}function jd(e,t){return js(e,Ie(t,2))}function Qd(e){return e&&e.length?Kr(e,Wt,ki):r}function eg(e,t){return e&&e.length?Kr(e,Ie(t,2),ki):r}var tg=Jr(function(e,t){return e*t},1),ng=Xi("round"),rg=Jr(function(e,t){return e-t},0);function ig(e){return e&&e.length?xi(e,Wt):0}function sg(e,t){return e&&e.length?xi(e,Ie(t,2)):0}return L.after=_p,L.ary=ba,L.assign=dh,L.assignIn=Ba,L.assignInWith=ui,L.assignWith=gh,L.at=vh,L.before=Ta,L.bind=os,L.bindAll=xd,L.bindKey=Da,L.castArray=$p,L.chain=xa,L.chunk=Xf,L.compact=Zf,L.
|
||
|
* Prism: Lightweight, robust, elegant syntax highlighting
|
||
|
*
|
||
|
* @license MIT <https://opensource.org/licenses/MIT>
|
||
|
* @author Lea Verou <https://lea.verou.me>
|
||
|
* @namespace
|
||
|
* @public
|
||
|
*/var r=function(n){var u=/(?:^|\s)lang(?:uage)?-([\w-]+)(?=\s|$)/i,p=0,l={},o={manual:n.Prism&&n.Prism.manual,disableWorkerMessageHandler:n.Prism&&n.Prism.disableWorkerMessageHandler,util:{encode:function A(w){return w instanceof f?new f(w.type,A(w.content),w.alias):Array.isArray(w)?w.map(A):w.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(A){return Object.prototype.toString.call(A).slice(8,-1)},objId:function(A){return A.__id||Object.defineProperty(A,"__id",{value:++p}),A.__id},clone:function A(w,_){_=_||{};var C,O;switch(o.util.type(w)){case"Object":if(O=o.util.objId(w),_[O])return _[O];C={},_[O]=C;for(var I in w)w.hasOwnProperty(I)&&(C[I]=A(w[I],_));return C;case"Array":return O=o.util.objId(w),_[O]?_[O]:(C=[],_[O]=C,w.forEach(function(R,D){C[D]=A(R,_)}),C);default:return w}},getLanguage:function(A){for(;A;){var w=u.exec(A.className);if(w)return w[1].toLowerCase();A=A.parentElement}return"none"},setLanguage:function(A,w){A.className=A.className.replace(RegExp(u,"gi"),""),A.classList.add("language-"+w)},currentScript:function(){if(typeof document=="undefined")return null;if("currentScript"in document&&1<2)return document.currentScript;try{throw new Error}catch(C){var A=(/at [^(\r\n]*\((.*):[^:]+:[^:]+\)$/i.exec(C.stack)||[])[1];if(A){var w=document.getElementsByTagName("script");for(var _ in w)if(w[_].src==A)return w[_]}return null}},isActive:function(A,w,_){for(var C="no-"+w;A;){var O=A.classList;if(O.contains(w))return!0;if(O.contains(C))return!1;A=A.parentElement}return!!_}},languages:{plain:l,plaintext:l,text:l,txt:l,extend:function(A,w){var _=o.util.clone(o.languages[A]);for(var C in w)_[C]=w[C];return _},insertBefore:function(A,w,_,C){C=C||o.languages;var O=C[A],I={};for(var R in O)if(O.hasOwnProperty(R)){if(R==w)for(var D in _)_.hasOwnProperty(D)&&(I[D]=_[D]);_.hasOwnProperty(R)||(I[R]=O[R])}var N=C[A];return C[A]=I,o.languages.DFS(o.languages,function(k,W){W===N&&k!=A&&(this[k]=I)}),I},DFS:function A(w,_,C,O){O=O||{};var I=o.util.objId;for(var R in w)if(w.hasOwnProperty(R)){_.call(w,R,w[R],C||R);var D=w[R],N=o.util.type(D);N==="Object"&&!O[I(D)]?(O[I(D)]=!0,A(D,_,null,O)):N==="Array"&&!O[I(D)]&&(O[I(D)]=!0,A(D,_,R,O))}}},plugins:{},highlightAll:function(A,w){o.highlightAllUnder(document,A,w)},highlightAllUnder:function(A,w,_){var C={callback:_,container:A,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};o.hooks.run("before-highlightall",C),C.elements=Array.prototype.slice.apply(C.container.querySelectorAll(C.selector)),o.hooks.run("before-all-elements-highlight",C);for(var O=0,I;I=C.elements[O++];)o.highlightElement(I,w===!0,C.callback)},highlightElement:function(A,w,_){var C=o.util.getLanguage(A),O=o.languages[C];o.util.setLanguage(A,C);var I=A.parentElement;I&&I.nodeName.toLowerCase()==="pre"&&o.util.setLanguage(I,C);var R=A.textContent,D={element:A,language:C,grammar:O,code:R};function N(W){D.highlightedCode=W,o.hooks.run("before-insert",D),D.element.innerHTML=D.highlightedCode,o.hooks.run("after-highlight",D),o.hooks.run("complete",D),_&&_.call(D.element)}if(o.hooks.run("before-sanity-check",D),I=D.element.parentElement,I&&I.nodeName.toLowerCase()==="pre"&&!I.hasAttribute("tabindex")&&I.setAttribute("tabindex","0"),!D.code){o.hooks.run("complete",D),_&&_.call(D.element);return}if(o.hooks.run("before-highlight",D),!D.grammar){N(o.util.encode(D.code));return}if(w&&n.Worker){var k=new Worker(o.filename);k.onmessage=function(W){N(W.data)},k.postMessage(JSON.stringify({language:D.language,code:D.code,immediateClose:!0}))}else N(o.highlight(D.code,D.grammar,D.language))},highlight:function(A,w,_){var C={code:A,grammar:w,language:_};if(o.hooks.run("before-tokenize",C),!C.grammar)throw new Error('The language "'+C.language+'" has no grammar.');return C.tokens=o.tokenize(C.code,C.grammar),o.hooks.run("after-tokenize",C),f.stringify(o.util.encode(C.tokens),C.language)},tokenize:function(A,w){var _=w.rest;if(_){for(var C in _)w[C]=_[C];delete w.rest}var O=new v;return c(O,O.head,A),i(A,O,w,O.head,0),y(O)},hooks:{all:{},add
|
||
|
`),x.hasAttribute("data-start")||x.setAttribute("data-start",String(D+1))}T.textContent=O,r.highlightElement(T)},function(O){x.setAttribute(o,i),T.textContent=O})}}),r.plugins.fileHighlight={highlight:function(x){for(var T=(x||document).querySelectorAll(v),A=0,w;w=T[A++];)r.highlightElement(w)}};var y=!1;r.fileHighlight=function(){y||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),y=!0),r.plugins.fileHighlight.highlight.apply(this,arguments)}}()},9602:b=>{"use strict";b.exports=function(m){m.prototype[Symbol.iterator]=function*(){for(let s=this.head;s;s=s.next)yield s.value}}},4411:(b,m,s)=>{"use strict";b.exports=d,d.Node=p,d.create=d;function d(l){var o=this;if(o instanceof d||(o=new d),o.tail=null,o.head=null,o.length=0,l&&typeof l.forEach=="function")l.forEach(function(i){o.push(i)});else if(arguments.length>0)for(var f=0,g=arguments.length;f<g;f++)o.push(arguments[f]);return o}d.prototype.removeNode=function(l){if(l.list!==this)throw new Error("removing node which does not belong to this list");var o=l.next,f=l.prev;return o&&(o.prev=f),f&&(f.next=o),l===this.head&&(this.head=o),l===this.tail&&(this.tail=f),l.list.length--,l.next=null,l.prev=null,l.list=null,o},d.prototype.unshiftNode=function(l){if(l!==this.head){l.list&&l.list.removeNode(l);var o=this.head;l.list=this,l.next=o,o&&(o.prev=l),this.head=l,this.tail||(this.tail=l),this.length++}},d.prototype.pushNode=function(l){if(l!==this.tail){l.list&&l.list.removeNode(l);var o=this.tail;l.list=this,l.prev=o,o&&(o.next=l),this.tail=l,this.head||(this.head=l),this.length++}},d.prototype.push=function(){for(var l=0,o=arguments.length;l<o;l++)n(this,arguments[l]);return this.length},d.prototype.unshift=function(){for(var l=0,o=arguments.length;l<o;l++)u(this,arguments[l]);return this.length},d.prototype.pop=function(){if(this.tail){var l=this.tail.value;return this.tail=this.tail.prev,this.tail?this.tail.next=null:this.head=null,this.length--,l}},d.prototype.shift=function(){if(this.head){var l=this.head.value;return this.head=this.head.next,this.head?this.head.prev=null:this.tail=null,this.length--,l}},d.prototype.forEach=function(l,o){o=o||this;for(var f=this.head,g=0;f!==null;g++)l.call(o,f.value,g,this),f=f.next},d.prototype.forEachReverse=function(l,o){o=o||this;for(var f=this.tail,g=this.length-1;f!==null;g--)l.call(o,f.value,g,this),f=f.prev},d.prototype.get=function(l){for(var o=0,f=this.head;f!==null&&o<l;o++)f=f.next;if(o===l&&f!==null)return f.value},d.prototype.getReverse=function(l){for(var o=0,f=this.tail;f!==null&&o<l;o++)f=f.prev;if(o===l&&f!==null)return f.value},d.prototype.map=function(l,o){o=o||this;for(var f=new d,g=this.head;g!==null;)f.push(l.call(o,g.value,this)),g=g.next;return f},d.prototype.mapReverse=function(l,o){o=o||this;for(var f=new d,g=this.tail;g!==null;)f.push(l.call(o,g.value,this)),g=g.prev;return f},d.prototype.reduce=function(l,o){var f,g=this.head;if(arguments.length>1)f=o;else if(this.head)g=this.head.next,f=this.head.value;else throw new TypeError("Reduce of empty list with no initial value");for(var i=0;g!==null;i++)f=l(f,g.value,i),g=g.next;return f},d.prototype.reduceReverse=function(l,o){var f,g=this.tail;if(arguments.length>1)f=o;else if(this.tail)g=this.tail.prev,f=this.tail.value;else throw new TypeError("Reduce of empty list with no initial value");for(var i=this.length-1;g!==null;i--)f=l(f,g.value,i),g=g.prev;return f},d.prototype.toArray=function(){for(var l=new Array(this.length),o=0,f=this.head;f!==null;o++)l[o]=f.value,f=f.next;return l},d.prototype.toArrayReverse=function(){for(var l=new Array(this.length),o=0,f=this.tail;f!==null;o++)l[o]=f.value,f=f.prev;return l},d.prototype.slice=function(l,o){o=o||this.length,o<0&&(o+=this.length),l=l||0,l<0&&(l+=this.length);var f=new d;if(o<l||o<0)return f;l<0&&(l=0),o>this.length&&(o=this.length);for(var g=0,i=this.head;i!==null&&g<l;g++)i=i.next;for(;i!==null&&g<o;g++,i=i.next)f.push(i.value);return f},d.prototype.sliceReverse=function(l,o){o=o||this.length,o<0&&(o+=this.length),l=l||0,l<0&&(l+=this.length);var f
|
||
|
`+it),ae.find(".sample-request-response").is(":visible")&&ae.find(".sample-request-response").fadeTo(1,.1),ae.find(".sample-request-response").fadeTo(250,1),ae.find(".sample-request-response-json").text(Ve),v().highlightAll()}}function O(Oe,oe,_e){const Re=m()('article[data-group="'+Oe+'"][data-name="'+oe+'"][data-version="'+_e+'"]');Re.find(".sample-request-response-json").html(""),Re.find(".sample-request-response").hide(),Re.find(".sample-request-input").each((ye,ce)=>{ce.value=ce.placeholder!==ce.dataset.name?ce.placeholder:""});const ae=Re.find(".sample-request-url");ae.val(ae.prop("defaultValue"))}const I={"Allowed values:":"Valors permesos:","Compare all with predecessor":"Comparar tot amb versi\xF3 anterior","compare changes to:":"comparar canvis amb:","compared to":"comparat amb","Default value:":"Valor per defecte:",Description:"Descripci\xF3",Field:"Camp",General:"General","Generated with":"Generat amb",Name:"Nom","No response values.":"Sense valors en la resposta.",optional:"opcional",Parameter:"Par\xE0metre","Permission:":"Permisos:",Response:"Resposta",Send:"Enviar","Send a Sample Request":"Enviar una petici\xF3 d'exemple","show up to version:":"mostrar versi\xF3:","Size range:":"Tamany de rang:",Type:"Tipus",url:"url"},R={"Allowed values:":"Povolen\xE9 hodnoty:","Compare all with predecessor":"Porovnat v\u0161e s p\u0159edchoz\xEDmi verzemi","compare changes to:":"porovnat zm\u011Bny s:","compared to":"porovnat s","Default value:":"V\xFDchoz\xED hodnota:",Description:"Popis",Field:"Pole",General:"Obecn\xE9","Generated with":"Vygenerov\xE1no pomoc\xED",Name:"N\xE1zev","No response values.":"Nebyly vr\xE1ceny \u017E\xE1dn\xE9 hodnoty.",optional:"voliteln\xE9",Parameter:"Parametr","Permission:":"Opr\xE1vn\u011Bn\xED:",Response:"Odpov\u011B\u010F",Send:"Odeslat","Send a Sample Request":"Odeslat uk\xE1zkov\xFD po\u017Eadavek","show up to version:":"zobrazit po verzi:","Size range:":"Rozsah velikosti:",Type:"Typ",url:"url"},D={"Allowed values:":"Erlaubte Werte:","Compare all with predecessor":"Vergleiche alle mit ihren Vorg\xE4ngern","compare changes to:":"vergleiche \xC4nderungen mit:","compared to":"verglichen mit","Default value:":"Standardwert:",Description:"Beschreibung",Field:"Feld",General:"Allgemein","Generated with":"Erstellt mit",Name:"Name","No response values.":"Keine R\xFCckgabewerte.",optional:"optional",Parameter:"Parameter","Permission:":"Berechtigung:",Response:"Antwort",Send:"Senden","Send a Sample Request":"Eine Beispielanfrage senden","show up to version:":"zeige bis zur Version:","Size range:":"Gr\xF6\xDFenbereich:",Type:"Typ",url:"url"},N={"Allowed values:":"Valores permitidos:","Compare all with predecessor":"Comparar todo con versi\xF3n anterior","compare changes to:":"comparar cambios con:","compared to":"comparado con","Default value:":"Valor por defecto:",Description:"Descripci\xF3n",Field:"Campo",General:"General","Generated with":"Generado con",Name:"Nombre","No response values.":"Sin valores en la respuesta.",optional:"opcional",Parameter:"Par\xE1metro","Permission:":"Permisos:",Response:"Respuesta",Send:"Enviar","Send a Sample Request":"Enviar una petici\xF3n de ejemplo","show up to version:":"mostrar a versi\xF3n:","Size range:":"Tama\xF1o de rango:",Type:"Tipo",url:"url"},k={"Allowed values:":"Valeurs autoris\xE9es :",Body:"Corps","Compare all with predecessor":"Tout comparer avec ...","compare changes to:":"comparer les changements \xE0 :","compared to":"comparer \xE0","Default value:":"Valeur par d\xE9faut :",Description:"Description",Field:"Champ",General:"G\xE9n\xE9ral","Generated with":"G\xE9n\xE9r\xE9 avec",Header:"En-t\xEAte",Headers:"En-t\xEAtes",Name:"Nom","No response values.":"Aucune valeur de r\xE9ponse.","No value":"Aucune valeur",optional:"optionnel",Parameter:"Param\xE8tre",Parameters:"Param\xE8tres","Permission:":"Permission :","Query Parameter(s)":"Param\xE8tre(s) de la requ\xEAte","Query Parameters":"Param\xE8tres de la requ\xEAte","Request Body":"Corps de la requ\xEAte",required:"requis",Response:"R\xE9ponse",Send:"Envoyer","Send a Sample Request":"Envoyer une
|
||
|
xtribe:"apache",
|
||
|
xalias:"toto",
|
||
|
xhash:"",
|
||
|
xdays:"123"
|
||
|
xlang:"en",
|
||
|
xapp:"popular"
|
||
|
}`,type:"json"}]},error:{fields:{"Error 4xx":[{group:"Error 4xx",optional:!1,field:"missingexposedHeaders",description:"<p>it miss an exposedHeaders</p>"}]},examples:[{title:"Error-Response:",content:` HTTP/1/1 400 Not Found
|
||
|
{
|
||
|
status:400,
|
||
|
ref:"middlewares"
|
||
|
msg:"missingheaders",
|
||
|
data: ["headermissing1"]
|
||
|
}`,type:"json"},{title:"Error-Response:",content:` HTTP/1/1 404 Not Found
|
||
|
{
|
||
|
status:404,
|
||
|
ref:"middlewares"
|
||
|
msg:"tribeiddoesnotexist",
|
||
|
data: {xalias}
|
||
|
}`,type:"json"}]},version:"0.0.0",filename:"checkHeaders.js",groupTitle:"Middlewares"},{type:"get",url:"/istauthenticated",title:"",group:"Middlewares",name:"isAUthenticated",description:"<p>Check that exist in town/tmp/tokens/xalias_xdays_xhash.substr(20,200) if not, check the xhash signature with message xalias_xdays come from public key belonging to xalias. If check pass then store a xhash into /tmp/tokens. A process run each day to clean up all xhas tmp/tokens oldest than 24 hours. If authentify it returns header with xprofils store into a person objject -xtribes/person/alias</p>",header:{fields:{Header:[{group:"Header",type:"string",optional:!1,field:"xalias",description:"<p>anonymous or unique alias</p>"},{group:"Header",type:"string",optional:!1,field:"xapp",description:"<p>name of the webapp store in tribe/tribeid/www/xapp</p>"},{group:"Header",type:"string",optional:!1,field:"xlang",description:"<p>the 2 letter request langage (if does not exist then return en = english).</p>"},{group:"Header",type:"string",optional:!1,field:"xtribe",description:"<p>unique tribe name ere xapp exist</p>"},{group:"Header",type:"string",optional:!1,field:"xdays",description:"<p>a timestamp 0 or generate during the authentifyme process</p>"},{group:"Header",type:"string",optional:!1,field:"xhash",description:"<p>anonymous or signature of message: xalias_xdays created by alias private key during authentifyme process</p>"},{group:"Header",type:"array[]",optional:!1,field:"xprofils",description:"<p>list of string profil apply into xtribe for xapp</p>"},{group:"Header",type:"string",optional:!1,field:"xuuid",description:"<p>a unique number c reated the fisrt time a domain is visited</p>"},{group:"Header",type:"integer",optional:!1,field:"xtrkversion",description:"<p>a version number link to tracking system</p>"}]},examples:[{title:"Header-Exemple:",content:` {
|
||
|
xtribe:"apache",
|
||
|
xalias:"toto",
|
||
|
xhash:"",
|
||
|
xdays:"123"
|
||
|
xlang:"en",
|
||
|
xapp:"popular"
|
||
|
}`,type:"json"}]},error:{examples:[{title:"Error-Response:",content:` HTTP/1/1 400 Not Found
|
||
|
{
|
||
|
status:400,
|
||
|
ref:"middlewares"
|
||
|
msg:"missingheaders",
|
||
|
data: ["headermissing1"]
|
||
|
}`,type:"json"},{title:"Error-Response:",content:` HTTP/1/1 404 Not Found
|
||
|
{
|
||
|
status:404,
|
||
|
ref:"middlewares"
|
||
|
msg:"tribeiddoesnotexist",
|
||
|
data: {xalias}
|
||
|
}`,type:"json"}]},version:"0.0.0",filename:"isAuthenticated.js",groupTitle:"Middlewares"},{type:"get",url:"https://wall-ants.ndda.fr/Checkjson.js",title:"- schema check data lib",group:"Odmdb",name:"checkjsonjs",description:"<p>Public js lib to import in a browser by :<br> <code><script src="wall-ants.ndda.fr/nationchains/contracts/Checkjson.js"></script></code> to import in a node.js:<br> <code>const Checkjson = require(`Checkjson.js`);</code></p> <p>with functions:<br> <strong>Checkjson.schema.validation(schema)</strong> that return<br> - {status:200, ref:"Checkjson", msg:"validcheck"} => all rules are correct<br> - {status:406, multimsg:[{ref:"Checkjson",msg:"errorkey",data:{}}]}<br></p> <p><strong>Checkjson.schema.data(schema{json},data{json},withschemacheck{boolean})</strong> that return<br> - {status:200, ref:"Checkjson", msg:"validcheck"} => all data keys respect schema rules <br> - {status:417, multimsg:[{ref:"Checkjson",msg:"errorkey",data:{}}]}<br></p> <p>To identify issues, get the language errorkey list with a get https://wall-ants.ndda.fr/nationchains/models/Checkjson_lg.json</p>",version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"/odmdb/idx/:objectname/:indexname",title:"- index Get",group:"Odmdb",name:"getIndex",description:"<p>Get index file for an object</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"string",optional:!1,field:"objectname",description:"<p>If in conf.nationObjects then object is into nationchains/ else in tribes/xtribe/objectname/idx/indexname indexname</p>"},{group:"Parameter",type:"String",optional:!1,field:"indexname",description:"<p>name of index file in /idx/indexnamme.json</p>"}]}},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"objectNotfound",description:"<p>the file does not exist</p>"}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"pathnamedoesnotexist","data":{indexpath}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, "ref":"Odmdb", "msg":"indexexist", "data":{indexname,content:{index file}}`,type:"json"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"/odmdb/itm/:objectname/:primaryindex",title:"- item Get",group:"Odmdb",name:"getItemFromId",description:"<p>Get itm for a primaryid of an object</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"String",optional:!1,field:"objectname",description:"<p>name Mandatory if in conf.nationObjects then file is into nationchains/ else in /nationchains/tribes/xtribe/objectname</p>"},{group:"Parameter",type:"String",optional:!1,field:"primaryindex",description:"<p>the unique id where item is store</p>"}]}},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"objectNotfound",description:"<p>the file item does not exist</p>"}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"doesnotexist","data":{"objectname":"objectname","key":"apxid","val":"primaryindex"}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, "ref":"Odmdb", "msg":"indexexist", "data":{"indexname","content":{itm file}}`,type:"json"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"/odmdb/schema/:objectname",title:"- schema Get private",group:"Odmdb",name:"getPrivateSchema",description:"<p>Get a private (profil must have accessright R on object) to a Schema model</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"String",optional:!1,field:"objectname",description:"<p>Mandatory</p>"}]}},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"object",optional:!1,field:"ref",description:"<p>objectmodel to get in the right language</p>"}]},examples:[{title:"Error-response:",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"schemanotfound","data":{"fullpath"}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"data",description:"<p>contains schema requested</p>"}]},examples:[{title:"Success-Response: ",content:`HTTP/1.1 200 Success-response:
|
||
|
{"status":200,"data":{schema}}`,type:"json"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"https://wall-ants.ndda.fr/nationchains/models/:modelname_lg.json",title:"- translation notif Get public",group:"Odmdb",name:"getPublicModelmessagekey",description:"<p>Get a public json object for the ref: modelname in language lg, to get a template description with key msg</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"string",optional:!1,field:"modelname",description:"<p>Mandatory</p>"}]}},success:{fields:{"Success 200":[{group:"Success 200",type:"json",optional:!1,field:"contain",description:"<p>json file</p>"}]},examples:[{title:"Fichier direct",content:`HTTP/1.1 200 Success-response:
|
||
|
{
|
||
|
"alreadyexist": "Un object {{objectname}} avec la cl\xE9 {{key}} existe d\xE9j\xE0 avec {{val}}",
|
||
|
"doesnotexist": "L'object {{objectname}} avec la cl\xE9 {{key}} ,'existe pas avec {{val}}",
|
||
|
"getschema": "Schema {{{conf.name}}}",
|
||
|
"schemanotfound": "Schema introuvable dans {{{schemaPath}}}",
|
||
|
"pathnamedoesnotexist": "Le repertoire n'existe pas {{{indexpath}}}",
|
||
|
"objectfiledoesnotexist": "Le fichier n'existe pas {{{objectpath}}}",
|
||
|
"cudsuccessfull": "Mise \xE0 jour effectu\xE9e avec succ\xE9s",
|
||
|
"missingprimarykey": "Il manque une cl\xE9 primaire apxid pour stocker et identifier les objects",
|
||
|
"unconsistencyapxidx": "L'index {{name}} doit contenir en objkey au moins {{apxid}} car keyval n'est pas unique",
|
||
|
"profilnotallow": "Vous n'avez pas le profil de {{profils}}, cette action n'est pas authoris\xE9e",
|
||
|
"successreindex": "Objet reindex\xE9 \xE0 partir des items, vos index sont \xE0 jour",
|
||
|
"indexexist":"L'indexe existe"
|
||
|
}`,type:"json"}]},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"contain",description:"<p>json file</p>"}]},examples:[{title:"nginx html not found message",content:`HTTP/1.1 404 Not Found
|
||
|
<html>...</html>`,type:"string"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"https://wall-ants.ndda.fr/nationchains/schema/:objectname",title:"- schema Get public",group:"Odmdb",name:"getPublicSchema",description:"<p>Get a Schema model from public apxtrib (nations, pagans,persons,towns, tribes,wwws)</p>",success:{fields:{"Success 200":[{group:"Success 200",type:"json",optional:!1,field:"contain",description:"<p>json file</p>"}]},examples:[{title:"Fichier direct",content:`HTTP/1.1 200 Success-response:
|
||
|
{
|
||
|
"$id": "https://smatchit.io/schema/pagan",
|
||
|
"$comment": "To create account bin apxtrib",
|
||
|
"title": "Pagans identity",
|
||
|
"description": "A numeric id in the nationchains world",
|
||
|
"type": "object",
|
||
|
"properties": {
|
||
|
"publickey": {
|
||
|
"title": "Alias's publickey",
|
||
|
"description": "Public key generate with openpgp.js",
|
||
|
"type": "string",
|
||
|
"format": "pgppublickey"
|
||
|
},
|
||
|
"alias": {
|
||
|
"title": "Alias",
|
||
|
"description": "text to remember easily a public key",
|
||
|
"type": "string",
|
||
|
"minLength": 4,
|
||
|
"pattern": "^[a-z0-9]*$"
|
||
|
},
|
||
|
"dt_delete": {
|
||
|
"title": "Date of death",
|
||
|
"description": "Date of alias delete request, your will will be apply",
|
||
|
"type": "string",
|
||
|
"format": "date-time"
|
||
|
},
|
||
|
"will": {
|
||
|
"title": "Will script after death",
|
||
|
"description": "This will script will be apply on your data 30 days after your death",
|
||
|
"type": "string"
|
||
|
}
|
||
|
},
|
||
|
"required": ["publickey", "alias"],
|
||
|
"apxid": "alias",
|
||
|
"apxuniquekey": ["publickey"],
|
||
|
"apxidx": [
|
||
|
{ "name": "lst_alias", "keyval": "alias" },
|
||
|
{ "name": "alias", "keyval": "alias" }
|
||
|
],
|
||
|
"apxaccessrights": {
|
||
|
"owner": { "R": [], "D": [] },
|
||
|
"anonymous": { "C": [], "R": ["alias"] },
|
||
|
"pagan": { "R": ["alias", "publickey"] }
|
||
|
}
|
||
|
}`,type:"json"}]},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"contain",description:"<p>json file</p>"}]},examples:[{title:"nginx html not found message",content:`HTTP/1.1 404 Not Found
|
||
|
<html>...</html>`,type:"string"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"post",url:"/odmdb/itm/:objectname",title:"- item Create",group:"Odmdb",name:"postItm",permission:[{name:"none"}],description:"<p>Add an new item (data) into a collection of objectname items. Before Check data integrity with the relevant schema. Then create a new primarykey. For multilanguage return see nationchains/model/lg/Odmdb_xx.json.</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"string",optional:!1,field:"objectname",description:"<p>Place where to create new item, schema and version are available in /objectname/conf.json</p>"}]}},body:[{group:"Body",type:"Object",optional:!1,field:"data",description:"<p>must pass Checkjson.js with schema</p>"}],success:{fields:{"Success 200":[{group:"Success 200",type:"json",optional:!1,field:"data",description:"<p>idxprimary Value of idxprimary into objectname collection</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, "ref":"Odmdb", "msg":"cudsuccessfull", "data":{"itm":{}}}`,type:"json"}]},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"schemanotfound",description:"<p>The objectname schema is not found</p>"},{group:"Error 4xx",type:"json",optional:!1,field:"pathnamedoesnotexist",description:"<p>The objectname does not exist for the tribe</p>"},{group:"Error 4xx",type:"json",optional:!1,field:"missingprimarykey",description:"<p>Body data must have primarykey to be created</p>"},{group:"Error 4xx",type:"json",optional:!1,field:"unconsistencyapxidx",description:"<p>some Body data get unique key that already exist</p>"},{group:"Error 4xx",type:"json",optional:!1,field:"checkjsonfalse",description:"<p>The body data are not consistent with the schema</p>"}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"see nationchains/model/lg/Odmdb_xx.json","data":"object to render with msg"}`,type:"json"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"put",url:"/odmdb/schema/:objectname",title:"- schema Put",group:"Odmdb",name:"putSchema",description:"<p>Replace a schema by another one need druid profil for a tribe</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"String",optional:!1,field:"objectname",description:"<p>Mandatory</p>"}]}},body:[{group:"Body",type:"string",optional:!1,field:"schemapath",description:"<p>where to store schema .../schema</p>"},{group:"Body",type:"string",optional:!1,field:"objectpath",description:"<p>where to store object ...objectname/idx/conf.json</p>"},{group:"Body",type:"json",optional:!1,field:"schema",description:"<p>content</p>"},{group:"Body",type:"json",optional:!1,field:"schemalang",description:"<p>content in lg</p>"},{group:"Body",type:"string",optional:!1,field:"lang",description:"<p>define which schemalg is (2 letters)</p>"}],error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"object",optional:!1,field:"ref",description:"<p>objectmodel to get in the right language</p>"}]},examples:[{title:"Error-response:",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"schemanotfound","data":{"fullpath"}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"data",description:"<p>contains schema requested HTTP/1.1 200 Success-response: {"status":200,"data":{schema}}</p>"}]}},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"/odmdb/rebuildidx/:objectname",title:"- index refresh all",group:"Odmdb",name:"refreshAllIndex",description:"<p>Rebuild all index for an object, this can be usefull in case crash or any data conflict.</p>",parameter:{fields:{Parameter:[{group:"Parameter",type:"string",optional:!1,field:"objectname",description:"<p>Mandatory</p>"}]}},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, "ref":"Odmdb", "msg":"successreindex", "data":{"indexlist":[]}}`,type:"json"}]},error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"objectNotfound",description:"<p>the file does not exist</p>"}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"see nationchains/model/lg/Odmdb_xx.json","data":"object to render with msg"}`,type:"json"}]},version:"0.0.0",filename:"odmdb.js",groupTitle:"Odmdb"},{type:"get",url:"/pagans/logout",title:"- pagan Logout",name:"Removetoken",group:"Pagans",description:"<p>Remove token</p>",success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{status: 200, ref: "Pagans", msg: "logout"`,type:"json"}]},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"post",url:"/pagans",title:"- pagan Post",name:"addpagan",group:"Pagans",description:"<p>Create a pagan account from alias, publickey, if trusted recovery => Create a person in xtribe/person/xalias.json with profil.auth={email,privatekey, passphrase} Middleware isAuthenticated check that:</p> <ul> <li>xhash is well signed from private key linked to the publickey of alias</li> <li>check that alias does not already exist (if yes then verifiedsigne would be false) Need to wait next block chain to be sure that alias is register in the blokchain</li> </ul>",error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"objectNotfound",description:"<p>the file does not exist</p>"}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"Odmdb","msg":"pathnamedoesnotexist","data":{indexpath}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, "ref":"Odmdb", "msg":"indexexist", "data":{indexname,content:{index file}}`,type:"json"}]},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"post",url:"/pagans/person",title:"- person Post",name:"addperson",group:"Pagans",description:"<p>add a person = alias + tribe with specific accessright and specific schema link to tribe</p> <p>@todo add tribe/schema/person.json</p>",version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"delete",url:"/pagans/alias/:alias",title:"- pagan Delete",name:"deletepagan",group:"Pagans",description:"<p>Delete an alias and his publickey</p>",version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"get",url:"/pagans/person:alias",title:"- person Get",name:"getpersondata",description:"<p>Get person information from his alias for a xtribe (data and profils per apps)</p>",group:"Pagans",parameter:{fields:{Parameter:[{group:"Parameter",type:"string",optional:!1,field:"alias",description:""}]}},success:{fields:{200:[{group:"200",optional:!1,field:"personExist",description:""}]},examples:[{title:'{status:200, ref:"pagans",msg:"personexist",data: { person } }',content:'{status:200, ref:"pagans",msg:"personexist",data: { person } }',type:"json"}]},error:{fields:{404:[{group:"404",optional:!1,field:"Notfound",description:""}]},examples:[{title:'{status: 404, ref:"pagans",msg:"persondoesnotexist",data: { person } }',content:` {status: 404, ref:"pagans",msg:"persondoesnotexist",data: { person } }
|
||
|
|
||
|
@todo check accessright for req.session.header.xalias to see if jhe can get person data
|
||
|
if req.param.alias == req.session.header.xalias => Owner
|
||
|
else need accessright to on person set at R`,type:"json"}]},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"get",url:"/pagans/isauth",title:"- pagan isAuthenticated?",name:"isAuth",group:"Pagans",description:"<p>Check if pagan's token is still valid</p>",error:{fields:{400:[{group:"400",optional:!1,field:"missingheaders",description:""},{group:"400",optional:!1,field:"xaliasdoesnotexist",description:""},{group:"400",optional:!1,field:"signaturefailled",description:""}],401:[{group:"401",optional:!1,field:"aliasanonymous",description:""}],404:[{group:"404",optional:!1,field:"tribedoesnotexist",description:""}]}},success:{fields:{200:[{group:"200",optional:!1,field:"valid",description:"<p>{object} data contains indexfile requested</p>"}]}},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"get",url:"/pagans/alias/:alias",title:"- alias Get",name:"isalias",group:"Pagans",description:"<p>If alias exist return its publickey</p> <p>@param {string} alias</p>",error:{fields:{"Error 4xx":[{group:"Error 4xx",type:"json",optional:!1,field:"aliasdoesnotexist",description:""}]},examples:[{title:"HTTP/1.1 404 Not Found",content:`HTTP/1.1 404 Not Found
|
||
|
{"status":404,"ref":"pagans","msg":"aliasdoesnotexist","data": { alias}}`,type:"json"}]},success:{fields:{"Success 200":[{group:"Success 200",type:"object",optional:!1,field:"indexfile",description:"<p>content</p>"}]},examples:[{title:"Success-Response:",content:`HTTP/1.1 200 OK
|
||
|
{"status":200, ref:"pagans","msg":"aliasexist","data": { alias, publicKey }}
|
||
|
*`,type:"json"}]},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"get",url:"/pagans/keyrecovery/tribe/email",title:"- recovery key by email",name:"recoveryKey",group:"Pagans",error:{fields:{400:[{group:"400",type:"object",optional:!1,field:"status",description:"<p>missingheaders / xalias does not exist / signaturefailled</p>"}],401:[{group:"401",type:"object",optional:!1,field:"alias",description:"<p>anonymous (not authenticated)</p>"}],404:[{group:"404",type:"string",optional:!1,field:"tribe",description:"<p>does not exist</p>"}]}},success:{fields:{200:[{group:"200",type:"object",optional:!1,field:"data",description:"<p>contains indexfile requested</p>"}]}},version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"put",url:"/pagans/person",title:"- person Put",name:"updateperson",group:"Pagans",description:"<p>update a person = alias + tribe with specific accessright and specific schema link to tribe @todo add tribe/schema/person.json</p>",version:"0.0.0",filename:"pagans.js",groupTitle:"Pagans"},{type:"get",url:"https://dns.xx/trk/pathtofile?",title:"- tracking system",group:"Trackings",name:"trackingsystem",description:`<p>without header:<br> <code>https://dns.xx/trk/pathtofile?alias=anonymous&uuid=1b506f71-1bff-416c-9057-cb8b86296f60&src=btnregister&version=1&lg=fr </code></p> <p>with header<br> <code>https://dns.xx/trk/pathtofile?srckey=btnregister&version=1</code></p> <p>where pathtofile is a ressource accessible from https://dns.xx/pathtofile html usage to track a loading page or email when a picture is load using apxwebapp in /src/ we got: <code> < img src="static/img/photo.jpg" data-trksrckey="loadpage" data-version="1" > </code></p> <p>using html + apx.js (or at least with header {xalias,xuuid,xlang}) <code>< img lazysrc="trk/static/img/photo.jpg data-trksrckey="loadpage" data-version="1" ></code></p> <p>in js action:</p> <code> <button></button> <a data-trksrckey="linktoblabla" href='https:..' onclick="apx.trackvisit("btnaction",1);actionfct();"> </a> </code> #will hit an eventlistener<br> <code> axios.get("https://dns.xx/trk/cdn/empty.json?alias=anonymous&uuid=1b506f71-1bff-416c-9057-cb8b86296f60&srckey=btnregister&version=1"); </code> <p>#or if no js available (example:email or pdf document)<br> <code> < img src="https://dns.xx/trk/static/img/photo.jpg?alias=anonymous&uuid=1b506f71-1bff-416c-9057-cb8b86296f60&srckey=loadpage&version=1"</code></p> <code> <a href="https://dns.xx/trk/redirect?alias=anonymous&uuid=1b506f71-1bff-416c-9057-cb8b86296f60&srckey=loadpage&version=1&url=http://..." </code> <p>will hit a tracker then redirect to url></a> *</p> <p><strong>if you use apx.js</strong> : in html add in < button >, < img >, < a > tag data-trksrc="srckey" <code> < img src="https://dns.xx/static/img/photo.jpg" data-trkversion="1" data-trksrckey="registerform"> < button data-trksrc="https://dns.xx/static/img/photo.jpg" data-trkversion="1" data-trksrckey="registerform"> </code></p> <p>Tracking log are store into tribe/logs/nginx/tribe_appname.trk.log Src have to be manage in tribe/api/models/lg/src_en.json <code>{"srckey":{ "app":"presentation|app|apptest", "title":"", "description":"" } } </code></p>`,parameter:{fields:{Parameter:[{group:"Parameter",type:"String",optional:!1,field:"alias",defaultValue:"anonymous",description:"<p>if authenticated we get from headers</p>"},{group:"Parameter",type:"String",optional:!1,field:"uuid",description:"<p>a uuid v4 generate the first time a web page is open on a browser</p>"},{group:"Parameter",type:"String",optional:!1,field:"srckey",description:"<p>source action that trig this get</p>"},{group:"Parameter",type:"integer",optional:!1,field:"version",defaultValue:"1",description:"<p>can be an int, date or any version of the src</p>"},{group:"Parameter",typ
|
||
|
<p>api documentation for routes and middleware has to respect apidoc's rules <a href="https://apidocjs.com">https://apidocjs.com/</a></p>
|
||
|
<p>To update this doc accessible in <a href="https://wal-ants.ndda.fr/cdn/apidoc">https://wal-ants.ndda.fr/cdn/apidoc</a> :</p>
|
||
|
<p><code>yarn apidoc</code></p>
|
||
|
<p>For api tribe's doc \xA0accessible in <a href="https://smatchit.io/cdn/apidoc">https://smatchit.io/cdn/apidoc</a> <a href="https://smatchit.io/cdn/apidoc:">:</a></p>
|
||
|
<p><code>yarn apidoctribename</code></p>
|
||
|
<p>Objects manage in apXtrib: pagans, notifications, nations, towns, tribes, wwws</p>
|
||
|
<p>All others objects are manage in town/tribe</p>
|
||
|
<p>persons is the only exception, schema is manage in apXtrib but data are store in a tribe.</p>
|
||
|
<p>apxtrib conf is set in a conf.json at the same folder level:</p>
|
||
|
<pre><code class="language-plaintext">/apxtrib/ # core process
|
||
|
/townName_nationName/conf.json # town settings
|
||
|
</code></pre>
|
||
|
<p>url: <strong>/api/routeName</strong> For core api apXtrib in /apxtrib :</p>
|
||
|
<pre><code class="language-plaintext">/apxtrib/api/middlewares/
|
||
|
/apxtrib/api/routes/
|
||
|
/apxtrib/api/models/
|
||
|
/apxtrib/api/models/lg/ language customisation for api response
|
||
|
/apxtrib/api/models/unitest/
|
||
|
</code></pre>
|
||
|
<p>url: <strong>/api/smatchit/routeName</strong> for tribe smatchit example api in /town_nation/tribes/smatchit(tribeid)</p>
|
||
|
<pre><code class="language-plaintext">/town_nation/tribes/smatchit/api/routes/
|
||
|
/town_nation/tribes/smatchit/api/models/
|
||
|
/town_nation/tribes/smatchit/api/models/lg/ language customization
|
||
|
</code></pre>
|
||
|
<p><strong>static files</strong> are served by nginx, each tribe nginx conf are store and can be customize in /town_nation/www/nginx_xtribe_xapp.conf</p>
|
||
|
<p>object www/websitename are serve with nginx not express.</p>
|
||
|
<h2>Object management (Odmdb)</h2>
|
||
|
<p>An object has a name and is defined by a schema that contain properties key.</p>
|
||
|
<p>A propertie has a name and a list of caracteristics (type, pattern,format,...) that have to be validate to be accepted.<br>
|
||
|
All properties respect the rules <a href="https://json-schema.org/draft/2020-12/schema,">https://json-schema.org/draft/2020-12/schema,</a> some extra"format" can be add to mutualise recurrent regex pattern</p>
|
||
|
<p>A checkjson.js is available to manage all specific format <a href="https://wall-ants.ndda.fr/Checkjson.js">https://wall-ants.ndda.fr/Checkjson.js</a> see <strong>Odmdb - schema Checkjson</strong></p>
|
||
|
<p><strong>Additional properties that not exist in 2020-12/schema :</strong></p>
|
||
|
<p><strong>required</strong>: an array of required properties</p>
|
||
|
<p><strong>apxid</strong>: the propertie used as an unique id</p>
|
||
|
<p><strong>apxuniquekey</strong>: array of unique properties</p>
|
||
|
<p><strong>apxidx</strong> : array of index</p>
|
||
|
<p><strong>apxaccessrights</strong>: object with key profilname and accessrights on properties {profilname:{C:[properties array],R:[properties array],U:[],D:[]}}</p>
|
||
|
<p>Items of an object are store in files into :</p>
|
||
|
<pre><code class="language-plaintext">/objectnames/idx/keyval_objkey.json
|
||
|
/objectnames/itm/uniqueid.json
|
||
|
</code></pre>
|
||
|
<h2>api pre-request</h2>
|
||
|
<p><strong>Valid header</strong></p>
|
||
|
<p>A \u2018private\u2019 request to pass must contain exposeHeaders from town conf.json</p>
|
||
|
<p>api.exposedHeaders :["xdays", "xhash", "xalias", "xlang", "xtribe", "xapp", "xuuid" ]</p>
|
||
|
<p>By default for anonymous user:</p>
|
||
|
<pre><code class="language-plaintext">{"headers":{
|
||
|
"xtrkversion":1,
|
||
|
"xtribe":"tribeid ex: smatchit",
|
||
|
"xapp":"websitename ex:presentation",
|
||
|
"xlang":"fr",
|
||
|
"xalias":"anonymous",
|
||
|
"xhash":"anonymous",
|
||
|
"xdays":0
|
||
|
}
|
||
|
}
|
||
|
</code></pre>
|
||
|
<p>App use openpgp.js lib to sign xdays_xalias with a privatekey and store it in xhash.</p>
|
||
|
<p>/api/middlewares/isAuthenticated.js check if (xhash) is a valid signature of the public key a xhash is valid for 24 hours</p>
|
||
|
<p>See Pagans models that contain authentification process</p>
|
||
|
<p><strong>api Return can be direct json in case of get without authenntification or an object data</strong></p>
|
||
|
<p>{status, ref,msg,data}:</p>
|
||
|
<ul>
|
||
|
<li>status: http code return</li>
|
||
|
<li>ref: model/route name reference where message come from</li>
|
||
|
<li>msg: a message template key store into models/lg/name_lg.json (where lg is 2 letters language)</li>
|
||
|
<li>data: an object data use to render the value of the message key.</li>
|
||
|
</ul>
|
||
|
<h2>Accessrights:</h2>
|
||
|
<p>An alias is just an identity, to access a tribe a person must exist with alias into /town/tribes/tribename/persons/itm/alias.json</p>
|
||
|
<p>A person has a property profils with a list of profilename, common profiles are : pagan (an identity) \xA0/ person (an identity with access right in a tribe) / druid (the administrator of a tribe) / major (administrator of a town/server)</p>
|
||
|
<p>Into a tribe you can have many other profil with specifics accessright on tribe's object.</p>
|
||
|
<h2>Add tribe's api:</h2>
|
||
|
<p>Accessible with https://dns/api/tribename/routes</p>
|
||
|
<pre><code class="language-plaintext">/town/tribes/tribename/api/routes
|
||
|
/town/tribes/tribename/api/middlewares
|
||
|
/town/tribes/tribename/api/models
|
||
|
/town/tribes/tribename/schema
|
||
|
/town/tribes/tribename/schema/lg
|
||
|
</code></pre>
|
||
|
<pre><code class="language-plaintext">// Example of a route
|
||
|
const conf = require(\`\${process.env.dirtown}/conf.json\`);
|
||
|
const express = require(\`\${conf.dirapi}/node_modules/express\`);
|
||
|
const fs = require(\`\${conf.dirapi}/node_modules/fs-extra\`);
|
||
|
const path = require(\`\${conf.dirapi}/node_modules/path\`);
|
||
|
|
||
|
const Nofications = require(\`\${conf.dirapi}/api/models/Notifications.js\`);
|
||
|
|
||
|
// Middlewares
|
||
|
const checkHeaders = require(\`\${conf.dirapi}/api/middlewares/checkHeaders\`);
|
||
|
const isAuthenticated = require(\`\${conf.dirapi}/api/middlewares/isAuthenticated\`);
|
||
|
const Actions = require(\`\${conf.dirtown}/tribes/smatchit/api/models/Actions\`);
|
||
|
const router = express.Router();
|
||
|
</code></pre>
|
||
|
`},footer:{title:"Best practices",content:`<p>Documentation Best practices</p>
|
||
|
`},sampleUrl:!1,defaultVersion:"0.0.0",apidoc:"0.3.0",generator:{name:"apidoc",time:"Tue Nov 14 2023 11:14:58 GMT+0100 (heure normale d\u2019Europe centrale)",url:"https://apidocjs.com",version:"0.54.0"}};$e();const _e=u().compile(m()("#template-header").html()),Re=u().compile(m()("#template-footer").html()),ae=u().compile(m()("#template-article").html()),ye=u().compile(m()("#template-compare-article").html()),ce=u().compile(m()("#template-generator").html()),we=u().compile(m()("#template-project").html()),Me=u().compile(m()("#template-sections").html()),Ue=u().compile(m()("#template-sidenav").html()),Qe={aloneDisplay:!1,showRequiredLabels:!1,withGenerator:!0,withCompare:!0};oe.template=Object.assign(Qe,(Ae=oe.template)!=null?Ae:{}),oe.template.forceLanguage&&Te(oe.template.forceLanguage);const Ze=(0,s.groupBy)(Oe,ne=>ne.group),Ve={};m().each(Ze,(ne,q)=>{Ve[ne]=(0,s.groupBy)(q,ue=>ue.name)});const it=[];m().each(Ve,(ne,q)=>{let ue=[];m().each(q,(le,me)=>{const be=me[0].title;be&&ue.push(be.toLowerCase()+"#~#"+le)}),ue.sort(),oe.order&&(ue=re(ue,oe.order,"#~#")),ue.forEach(le=>{const be=le.split("#~#")[1];q[be].forEach(ge=>{it.push(ge)})})}),Oe=it;let lt={};const Dt={};let kt={};kt[oe.version]=1,m().each(Oe,(ne,q)=>{lt[q.group]=1,Dt[q.group]=q.groupTitle||q.group,kt[q.version]=1}),lt=Object.keys(lt),lt.sort(),oe.order&&(lt=ve(Dt,oe.order)),kt=Object.keys(kt),kt.sort(r().compare),kt.reverse();const xt=[];lt.forEach(ne=>{xt.push({group:ne,isHeader:!0,title:Dt[ne]});let q="";Oe.forEach(ue=>{ue.group===ne&&(q!==ue.name?xt.push({title:ue.title,group:ne,name:ue.name,type:ue.type,version:ue.version,url:ue.url}):xt.push({title:ue.title,group:ne,hidden:!0,name:ue.name,type:ue.type,version:ue.version,url:ue.url}),q=ue.name)})});function sn(ne,q,ue){let le=!1;if(!q)return le;const me=q.match(/<h(1|2).*?>(.+?)<\/h(1|2)>/gi);return me&&me.forEach(function(be){const ge=be.substring(2,3),ke=be.replace(/<.+?>/g,""),ut=be.match(/id="api-([^-]+)(?:-(.+))?"/),st=ut?ut[1]:null,vt=ut?ut[2]:null;ge==="1"&&ke&&st&&(ne.splice(ue,0,{group:st,isHeader:!0,title:ke,isFixed:!0}),ue++,le=!0),ge==="2"&&ke&&st&&vt&&(ne.splice(ue,0,{group:st,name:vt,isHeader:!1,title:ke,isFixed:!1,version:"1.0"}),ue++)}),le}let Kt;if(oe.header&&(Kt=sn(xt,oe.header.content,0),Kt||xt.unshift({group:"_header",isHeader:!0,title:oe.header.title==null?xe("General"):oe.header.title,isFixed:!0})),oe.footer){const ne=xt.length;Kt=sn(xt,oe.footer.content,xt.length),!Kt&&oe.footer.title!=null&&xt.splice(ne,0,{group:"_footer",isHeader:!0,title:oe.footer.title,isFixed:!0})}const hn=oe.title?oe.title:"apiDoc: "+oe.name+" - "+oe.version;m()(document).attr("title",hn),m()("#loader").remove();const Fn={nav:xt};m()("#sidenav").append(Ue(Fn)),m()("#generator").append(ce(oe)),(0,s.extend)(oe,{versions:kt}),m()("#project").append(we(oe)),oe.header&&m()("#header").append(_e(oe.header)),oe.footer&&(m()("#footer").append(Re(oe.footer)),oe.template.aloneDisplay&&document.getElementById("api-_footer").classList.add("hide"));const Rt={};let bn="";lt.forEach(function(ne){const q=[];let ue="",le={},me=ne,be="";Rt[ne]={},Oe.forEach(function(ge){ne===ge.group&&(ue!==ge.name?(Oe.forEach(function(ke){ne===ke.group&&ge.name===ke.name&&(Object.prototype.hasOwnProperty.call(Rt[ge.group],ge.name)||(Rt[ge.group][ge.name]=[]),Rt[ge.group][ge.name].push(ke.version))}),le={article:ge,versions:Rt[ge.group][ge.name]}):le={article:ge,hidden:!0,versions:Rt[ge.group][ge.name]},oe.sampleUrl&&oe.sampleUrl===!0&&(oe.sampleUrl=window.location.origin),oe.url&&le.article.url.substr(0,4).toLowerCase()!=="http"&&(le.article.url=oe.url+le.article.url),z(le,ge),ge.groupTitle&&(me=ge.groupTitle),ge.groupDescription&&(be=ge.groupDescription),q.push({article:ae(le),group:ge.group,name:ge.name,aloneDisplay:oe.template.aloneDisplay}),ue=ge.name)}),le={group:ne,title:me,description:be,articles:q,aloneDisplay:oe.template.aloneDisplay},bn+=Me(le)}),m()("#sections").append(bn),oe.template.aloneDisplay||(document.body.dataset.spy="scroll",m()("body").scrollspy({target:"#scrollingNav"})),m()(".form-control").on("focus change",function(
|